1. 程式人生 > >Cocos Creator socket.io打包Apk後無法連線

Cocos Creator socket.io打包Apk後無法連線

最近在使用Cocos Creator 1.7版本開發一款棋牌遊戲,在瀏覽器中執行正常,但在模擬器裡或打包成Apk後,socket.io總是連線失敗,具體提示

內容如下:


IOS沒有試,估計也是一樣。百度了很久,看到有人說可能是Cocos編譯後的原生平臺的socket.io與官方的socket.io有比較大的出入,

需要手動修改,感覺太麻煩。通過在VS Code除錯客戶端發現,客戶端Net.js中在呼叫emit函式時,有一個undefined的引數沒有處理導致,修改

後解決問題。

send:function(event,data){
            if(this.sio.connected){
                if(data != null && (typeof(data) == "object")){
                    data = JSON.stringify(data);
                    //console.log(data);              
                }

                if (typeof(data) == "undefined") {
                    data = "";
                }
                this.sio.emit(event,data);                
            }
        },

其中

 if (typeof(data) == "undefined") {
                    data = "";
                }
為後來新增的部分。