socket.ioを使うアプリを開発していたのですが、デスクトップでシミュレートしている分にはいいのですが、実機(Android)に入れると途端にレスポンスが遅くなります。そんなに古い奴じゃ無いのに。
色々試した結果、connectする前にsocket.emitをすると遅くなることが分かりました。そこでemitをラップしてconnectの状態を確認してから実行させると、アプリのもっさりが無くなりました。
export var createIO = (address:string) => { manager = socketio(address); manager.on("connect", () =>{ isConnected = true; console.log('io connected'); }); manager.on("disconnect", () =>{ isConnected = false; console.log('io connected'); }); } export var emit = (name:string,data:any) => { if(isConnected){ manager.emit(name, data); } }





納得したらすぐにシェア!