我想统一为Android平台缓存图像.我使用WWW下载图像,但是每次都会重新下载它们.
我在统一文档和网络中进行搜索,发现没有任何用处.任何帮助将不胜感激.
解决方法:
您可以做两件事之一
>使用Asset Bundles.这是link to building Asset Bundles in Unity 5.x.这是example
资产捆绑包是一项内置功能,非常易于集成和使用.此外,一旦通过AssetBundle下载了任何资产,该资产也将自动缓存(默认情况下),并且下次无需重新下载.
>另一个选项是在Application.persistentDataPath处使用WWW.bytes和File.WriteAllBytes(System.IO命名空间)的组合.
这种方法比较复杂,但是如果由于某种原因您无权访问Asset Bundles(这是4.x中的Pro专用功能),则这是唯一的方法.
方法2的部分示例
public class TestMyDownload : Monobehaviour {
public string url = "http://www.foo.com/bar.png";
IEnumerator Start () {
WWW www = new WWW(url);
yield return www;
if(www.bytes != null) {
System.IO.File.WriteAllBytes(Application.persistentDataPath + "/myfile.png");
Debug.Log("Writing Success");
}
}
}
编辑:仅供参考,方法二可以处理所有类型的数据,而不仅仅是图像.如果100%确定只需要图像,则还可以访问WWW.image
原文地址:https://codeday.me/bug/20191028/1949006.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。