creator版本1.6,使用loader.load加载服务器图片,提示加载失败,在web浏览器上测试可以,但是发布到安卓平台上,加载图片返回的err为:Error:Load image failed http://(图片地址),加载代码如下
cc.loader.load(remoteUrl, function (err, texture) {
if (err) {
cc.log(err);
}
var frame = new cc.SpriteFrame(texture);
this.sprite.spriteFrame = frame;
})
而且这个测试是建了一个空工程用来测试的,跪求大大们告诉小弟这个问题怎么解决呀。。。。
remoteUrl的真实路径贴出来看看,加载失败的log也贴出来看看。
也可以用xmlhttprequest试试,这个指定可以的。
路径为http://10.1.1.248:84/Api/Achievement/Images?url=http://10.1.1.248:84/Public/images/test/cj_a01.png;
失败的log是Error:Load image failed http://10.1.1.248:84/Api/Achievement/Images?url=http://10.1.1.248:84/Public/images/test/cj_a01.png;
xmlhttprequest取图片返回的是什么格式的呢
xhr.responseType = ‘arraybuffer’;
你的图片路径可以试试简单url,你的这个有点复杂
我这个是做了一个服务器去取另一个服务器的图片,用中转服务器处理那个跨域问题。。。
您有没有一个完整的xhr的读取并且转成sprite的例子呢,多谢了,跪拜。。。。
这样,把图片保存到本地,然后读取是可以的,感觉是不是安卓必须要下载下来再读呀。。。这个破东西搞了小半天很忧伤呀,不过问题解决了就好,谢谢您啦,跪拜。。。。。
解决了就好,客气啦,共同学习:)
这个例子还是load的本机图片,把图片保存到了本机然后load。。。本来想着不存到本机的。。。
为啥我把图片 保存在 /data/data/app.app.myapp 里面 加载不出来呢
可能是 url 中带有问号的问题。我记得这个在 1.6.1 修复了,麻烦升级试试。
问题解决了 是因为我写的回调方法 有作用域的问题 ,有些函数访问不到,jsb的函数只能在真机上打日志调试,有点蛋疼
cocos creator 1.9.1版本
多个图片,浏览器都可以load 出来
安卓客户端,只有这一个永远 load不出来,其它都可以 load 出来
“Load image failed: http://kids-data-1251001446.file.myqcloud.com/resource/5F5AB9B9-9FA6-4DCF-B118-7AD087B99D13.png?sign=FUxaK7nSuydTC+oj4Fl6dymqpeVhPTEyNTEwMDE0NDYmaz1BS0lETzNQRUQ3VkV2QkowZWtwR2w3dkZZRUZZaHEyRnFpYUcmZT0xNTMxMjM4NDAwJnQ9MTUyODU2MDAwMCZyPTEyMyZmPS9yZXNvdXJjZS81RjVBQjlCOS05RkE2LTREQ0YtQjExOC03QUQwODdCOTlEMTMucG5nJmI9a2lkcy1kYXRh”