creator1.7正式版,websocket在模拟器、android、ios都不正常,creator是拿来逗开发者玩的?
描述问题都描述不清楚么?别逗我们好么?
这算是什么提问题的方式? 看样子你压根不想解决问题,而是来闹事的。
websocket都会用到Uint8Array,v1.7的String.fromChatCode.apply(null, array)报错
ERROR: RangeError: Maximum call stack size exceeded
之前在1.6.2正常,Uint8Array的问题,在1.7beta1也出现过
能提供更多的代码片段么?
你这个array是啥?
Uint8Array的问题参考一下:
http://forum.cocos.com/t/ccc-1-7-xmlhttprequest-arraybuffer/53649/3?u=dumganhar
不敢升级了,一直用1.6.1,虽然也有各种问题,这个网络问题比较致命.
我这个项目1.6.2正常
今天升级1.7.0, 安卓编译通过了 ,运行时候 出现一个错误
[ERROR] Failed to invoke SocketIO_emit, location: C:/fb/cxp/cocos/scripting/js-bindings/proj.android/…/manual/jsb_socketio.cpp:203
[ERROR] (C:/fb/cxp/cocos/scripting/js-bindings/proj.android/…/jswrapper/v8/Object.cpp, 447): Invoking function (0x7f4c64ece0) failed!
是不是跟Uint8Array有关?
最关键问题是 : 1.6.2 运行正常啊. 为毛1.7.0就报错了…
经过不断的设置console.log 找到了.. 有个Undefine 没有处理,导致报错. 改了下暂时ok了.
ps:研究了下原生调试, 没成功. 我继续研究....
问下 有知道这个 "使用 adb 命令转发调试端口:adb forward tcp:5086 tcp:5086" 在哪里输入的大大麻烦告诉下我.. 转行过来. android从0开始. 走了不少弯路.
array是Uint8Array类型,然后这句就报错了
String.fromChatCode.apply(null, array)
跟Uint8Array没关系。
有没有具体的堆栈信息?
BB
你这个用法在chrome浏览器中试试?

是fromCharCode好么。。。。
纠正一下,是fromCharCode
具体什么错误,请把错误信息提交一下。
还有,是哪个平台的出错。
理论上这句应该是 String.fromCharCode.apply(String, array)
不应该传null
回贴的时候手误打错了,是String.fromCharCode.apply(null, array)
报错就是这个
ERROR: RangeError: Maximum call stack size exceeded
v1.6.2时,浏览器、模拟器、android、ios都正常
v1.7正式版,浏览器正常,模拟器报错,android、ios还没编译成功。。。
用这个 String.fromCharCode.apply(String, array) ,第一个参数传入String
这个问题解决了吗?
// return String.fromCharCode.apply(null, array);
return new TextDecoder("utf-8").decode(new Uint8Array(array));
改成这样就可以了,和websocket无关,堆栈溢出了。
@dumganhar @yelaixiang
TextDecoder 如何引入,安卓上提示找不到
