Cocos2d-js jsb native 运行嵌套proto文件读取失败问题解决方案
2016-09-09 16:11
621 查看
Util.fetch = function(path, callback) { if (callback && typeof callback != 'function') callback = null; if (Util.IS_NODE) { var fs = require("fs"); if (callback) { fs.readFile(path, function(err, data) { if (err) callback(null); else callback(""+data); }); } else try { return fs.readFileSync(path); } catch (e) { return null; } } else { if(cc.sys.isNative) { //Native版本需要特殊处理下ProtoBuf的读取方式 var msg = jsb.fileUtils.getStringFromFile(path); if(callback){ callback(msg); }else{ return msg; } }else{ var xhr = Util.XHR(); xhr.open('GET', path, callback ? true : false); // xhr.setRequestHeader('User-Agent', 'XMLHTTP/1.0'); xhr.setRequestHeader('Accept', 'text/plain'); if (typeof xhr.overrideMimeType === 'function') xhr.overrideMimeType('text/plain'); if (callback) { xhr.onreadystatechange = function() { if (xhr.readyState != 4) return; if (/* remote */ xhr.status == 200 || /* local */ (xhr.status == 0 && typeof xhr.responseText === 'string')) callback(xhr.responseText); else callback(null); }; if (xhr.readyState == 4) return; xhr.send(null); } else { xhr.send(null); if (/* remote */ xhr.status == 200 || /* local */ (xhr.status == 0 && typeof xhr.responseText === 'string')) return xhr.responseText; return null; } } } };
cc.loader 加载文件
相关文章推荐
- Cocos2d-JS实现的打飞机
- Cocos Creator实现的《点我+1》
- Cocos2d-JS实现的2048
- Cocos2d-JS实现的贪吃蛇
- cocos2d-x中的菜单项
- cocos2d-x中的精灵
- Cocos2d-x的跨平台原理
- 使用cocos2dx-v3实现简单地图缩放
- cocos2dx lua集成protobuf
- cocos2d - JS 遮罩 ( ClippingNode )
- Cocos2d-x3.12 Xcode打包spine\extension.h(89): fatal error C1083: 无法打开包括文件解决方案
- cocos2dx在xcode8 GM版下的错误`libpng error:CgBI:unhandled critical chunk`
- 使用Cocos IDE 介绍
- 关于Cocos2D-X 3.10在android平台上使用外接键盘无法响应的问题
- cocos2d-x 学习应用
- cocos学习2
- Cocos2d-x 3.x的坑有哪些
- 继承自cocos2dxActivity的activity点击回退键不生效问题解决
- [置顶] 使用python对cocos2dx的手游图片资源进行加密
- cocos3.13-lua pageView