Unity WWW 本地图像网址

本文关键字:图像 地图 WWW Unity | 更新日期: 2023-09-27 18:34:00

我目前正在使用 Unity 和 Eclipse 开发 android 图库。

我已经设法获得了诸如"content://com.android.providers...."之类的网址。或获取"/文档/图像:123"。

但是,我不确定在WWW的参数中放入什么。当我使用

万维网 ("/文档/图像:123");

我将得到找不到文件异常。

使用时

万维网("file://content://com.android.providers....");

我将收到"打开图像错误:content//com.android.providers.....不是绝对路径。

有人可以指导我这是如何工作的吗?

Unity WWW 本地图像网址

file://content:// 都是协议 - 您必须使用其中之一。Unity 建议使用 file:// . http://docs.unity3d.com/ScriptReference/WWW.html

您还可以访问文件(允许应用程序读取它)吗?这对我有用:WWW www = new WWW("file://" + Application.persistentDataPath + "/my-file.txt");

使用

WWW 类时,应使用 file:// 协议在 Application.persistentDataPath 中加载本地文件。另请记住,在 Windows 和 Windows 应用商店应用程序上使用文件协议访问本地文件时,您必须指定 file:///(带三个斜杠):http://docs.unity3d.com/ScriptReference/WWW.html

可以使用 System.Url 类将本地路径转换为 URL,它应该适用于所有平台。

public static string GetFileURL(string path)
{
    return (new System.Uri(path)).AbsoluteUri;
}

您是否偶然尝试打开StreamingAssets文件夹中的文件? 如果是这样,则需要使用 WWW 类从 jar 文件中提取它。 所需的路径为:

string path = "jar:file://" + Application.dataPath + "!/assets/";