在 Unity3d 中从 iphone 加载图像

Posted

技术标签:

【中文标题】在 Unity3d 中从 iphone 加载图像【英文标题】:Loading image from iphone in Unity3d 【发布时间】:2012-10-20 23:07:57 【问题描述】:

我使用 ios Unity 插件将图像路径发送到 unity。在 Unity 中,我尝试使用接收到的路径获取此图像(我不知道如何将图像从 iphone 发送到 unity)。问题:我仍然无法获得图像。 WWW 错误:在此服务器上找不到请求的 URL。

//Tried both "file:///..." and "file://..."
string path = "file://var/mobile/Applications/173DE26D-4C0E-4DF7-9DC6-9CBB7D4FC954/Documents/Images/image.png" 

Texture texture;

IEnumerator WaitForRequest(WWW www) 
    yield return www;

    if (www.error == null) 
        texture = www.texture;
        


void Start() 
    WWW www = new WWW(path);
    StartCoroutine(WaitForRequest(www));

【问题讨论】:

您只是想访问本地文件以加载纹理,还是稍后将其放在网络中? 我只想访问本地文件以加载纹理。 【参考方案1】:

使用

确保文件存在
System.IO.File.Exists("/var/mobile/Applications/173DE26D-4C0E-4DF7-9DC6-9CBB7D4FC954/Documents/Images/image.png") 

因为您的代码看起来正确。

此外,您应该使用 Application.persistentDataPath,而不是硬编码路径。

string path = "file://" + System.IO.Path.Combine(Application.persistentDataPath, "Images/image.png");

顺便说一句,我认为绝对文件 url 应该始终以 file:/// 开头。

【讨论】:

为了简化代码示例,我对路径进行了硬编码 - 在项目中它是动态的。问题出在错误的道路上-我的错)

以上是关于在 Unity3d 中从 iphone 加载图像的主要内容,如果未能解决你的问题,请参考以下文章

在 ios6 中从 iPhone 相机捕获全景图像

无法在 iphone 单元测试中从 NSBundle 加载文件

在 TableViewCell Swift 中从 Firebase 加载图像

如何在 swift 中从 nsimage 创建灰度图像?

在 WebView 上的 HTML 中从 https URL 加载图像

在 UITableView 内的 UIImageView 中从 Web 加载图像