1.问题描述
使用 Addressables.LoadSceneAsync 加载的场景
在 Unity Addressable 三种模式,直接加载资源,模拟加载资源包,真实使用构建的资源包,三种模式测试都没问题
确认在编辑器中构建到 WebGL 了
在微信转换小游戏插件中填写了微信云托管的 CDN
在构建得到文件夹中也确认了有 AA 包
在微信云托管上也确认了有 AA 包
但是在微信开发者工具中,当我使用 Addressables.LoadSceneAsync 加载场景,会报错 Invalid URI, RuntimeData is null. 等错误,看上去像是我链接有问题?但是我一路检查,唯一相关的就一个 CDN 了吧?真不知道哪错了
请问一般这种情况怎么解决?非常感谢!
2.版本信息
Unity Editor 版本:2021.2/china_support/instantgame/staging 8bd2ddd0516e
转换插件版本:minigame.202304281522
微信开发者工具版本:1.05.2204264
3.截图信息
转换插件设置截图:
Unity 默认的 AA 包位置,没有修改过:
在转换成小游戏的文件夹的 minigame 文件夹中,查看导出的 game.js 中,也确认了 CDN 正确:
在转换成小游戏的文件夹的 webgl 文件夹中,也确认了 AA 包是存在的:
在微信云托管的对象存储中也在 CDN 路径下上传了 StreamingAssets 文件夹,也确认了确实有 AA 包
虽然感觉微信云托管的服务和对象存储不是一回事,我也不太懂……但是由于微信云托管有一个一段时间后没有访问实例就关闭的功能,我第一次测试的时候他是关着的,我之后访问了一下,让他启动了,启动之后还是还是无法加载 AA 包的错误……或许服务和对象存储就是两个东西?
在微信开发者工具中,每次测试之前也试过清理全部缓存,之后重新加载项目了,也还是没用
错误日志截图:
错误日志:
plugin.js:77 System.UriFormatException: Invalid URI: The URI scheme is not valid.
at System.Uri.CreateThis (System.String uri, System.Boolean dontEscape, System.UriKind uriKind) [0x00000] in <00000000000000000000000000000000>:0
(env: Windows,mg,1.05.2204264; lib: 2.27.2)
plugin.js:77 RuntimeData is null. Please ensure you have built the correct Player Content.
(env: Windows,mg,1.05.2204264; lib: 2.27.2)
webgl.wasm.framework.unityweb.js:4 Addressables - Unable to load runtime data at location UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationHandle`1[[UnityEngine.AddressableAssets.Initialization.ResourceManagerRuntimeData, Unity.Addressables, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]].
plugin.js:77 OperationException : Addressables - Unable to load runtime data at location UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationHandle`1[[UnityEngine.AddressableAssets.Initialization.ResourceManagerRuntimeData, Unity.Addressables, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]].
(env: Windows,mg,1.05.2204264; lib: 2.27.2)
plugin.js:77 UnityEngine.AddressableAssets.InvalidKeyException: Exception of type 'UnityEngine.AddressableAssets.InvalidKeyException' was thrown. No Location found for Key=Assets/Scenes/LoadingScene.unity
(env: Windows,mg,1.05.2204264; lib: 2.27.2)
OperationException : ChainOperation failed because dependent operation failed
UnityEngine.AddressableAssets.InvalidKeyException: Exception of type 'UnityEngine.AddressableAssets.InvalidKeyException' was thrown. No Location found for Key=Assets/Scenes/LoadingScene.unity
(env: Windows,mg,1.05.2204264; lib: 2.27.2)
上午发现的问题,下午重新一试又能加载了,期间啥代码也没改
好玄学……难道这取决于微信是否抽风……?