HarmonyOS鸿蒙Next中Unity转快游戏-资源下载如何自动缓存
HarmonyOS鸿蒙Next中Unity转快游戏-资源下载如何自动缓存
Unity转快游戏-资源下载如何自动缓存
概念
Unity转快游戏后,为了缩小体积,我们打包的包体里只含代码,不含资源包。我们会将大量游戏资源放到远程CDN上,方便用到时再去请求。而请求下来的资源为了能在下一次访问时直接使用,从而开发了自动缓存的功能。
能力
该能力可以在web-adapter.js中可以看到:
this.cacheIdentifiers.add("StreamingAsserts");
它会将请求CDN地址中带有StreamingAsserts目录下的所有资源文档缓存到本地,在下次打开时可以直接使用。
额外
那么对于有些文件,并不想读缓存中的内容,而是每次实时请求资源,该如何做呢?我们需要在上面代码下继续添加
this.excludeCacheIdentifiers.add("xxx.json");
它会把原本属于StreamingAsserts目录下的xxx.json文件不缓存下来,剔除出去。这样,每次访问时都会从CDN上请求到最新的内容。
以上就是我们的全部内容,欢迎下期再见!
更多关于HarmonyOS鸿蒙Next中Unity转快游戏-资源下载如何自动缓存的实战教程也可以访问 https://www.itying.com/category-93-b0.html
更多关于HarmonyOS鸿蒙Next中Unity转快游戏-资源下载如何自动缓存的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next中,Unity转快游戏的资源下载自动缓存可以通过以下步骤实现:
-
使用Unity的Caching类:Unity提供了Caching类,可以自动管理资源的缓存。通过Caching.MarkAsUsed和Caching.ClearCache等方法,可以控制资源的缓存行为。
-
配置Unity的AssetBundle:将资源打包为AssetBundle,并在加载时使用AssetBundle.LoadFromFile或AssetBundle.LoadFromMemory方法,Unity会自动缓存这些资源。
-
使用HarmonyOS的缓存机制:HarmonyOS提供了本地存储和缓存机制,可以通过File和Preferences等API实现资源的持久化存储和自动缓存。
-
结合网络请求:使用Unity的UnityWebRequest类进行资源下载,并通过DownloadHandlerAssetBundle或DownloadHandlerTexture等处理下载的资源,系统会自动缓存这些资源。
通过这些方法,可以实现Unity转快游戏的资源自动缓存,提升用户体验和加载速度。