-
Creator 版本:2.4
-
目标平台: iOS
-
详细报错信息,包含调用堆栈:
[ERROR] (/Users/xxx/cocos2d-x/cocos/scripting/js-bindings/manual/jsb_global.cpp, 907): initWithImageFile: /var/mobile/Containers/Data/Application/4D5A9527-FD92-48E1-8C5C-6BF12C9BF6EF/Documents//gamecaches/15933783424990.jpg failed! -
CODE:
cc.assetManager.loadRemote('https://dss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3849246509,1662545317&fm=26&gp=0.jpg', (err, texture) => {
let spriteFrame = new cc.SpriteFrame(texture);
sprite.spriteFrame = spriteFrame;
});
-
重现方式:
1、构建后,接上真机,直接在Xcode中点调试按钮RUN
2、然后在手机中操作信任该app,再次RUN
3、启动后,第一次图片显示无误
4、在Xcode中点击停止调试STOP
5、再次RUN,就出现以上错误了 -
手机型号 :iPhone 6 puls(12.4.7)、iPhone X(13.5.1)
-
编辑器操作系统 :macOS Catalina 10.15.5、Xcode 11.5(11E608c)
-
出现概率:100%
-
额外线索:
如果在第2步信任后,直接在手机中点击app运行,以后每次是对的;
或者每次调试完成后,删除app再重新来过,也是对的;
再或者每次url不一样,也对。
看样子像是以url哈希把图片缓存在本地了,然后读的时候没读到。我试过加上cacheEnabled: false,无效。我看目录Documents后面好像是多了个斜杠,至于图片是否缓存成功,还是路径不对,我没有试了
