带有websocket的Expo v27 / v28 Android App崩溃

时间:2018-07-09 11:26:41

标签: android websocket expo

环境:Android 6棉花糖和iOS(所有版本)

错误:带有WebSockets的Android应用程序因错误而崩溃:

WebSocketModule.close got 1 arguments, expected 3.

例如,仅在Android上关闭WebSocket连接时发生错误:

this.ws = new WebSocket(url);
this.ws.onopen = () => {
    const command = { command: 'JOIN', room: roonHash };
    this.ws.send(JSON.stringify(command));
};

this.ws.onmessage = e => {
    //more code here
};


// Finally:
this.ws.close();

iOS: 在iOS上运行正常。

我正在使用Expo v27,但在v28上遇到了相同的错误。 在Expo / React Native团队永久修复之前,是否有任何解决方法可以解决?

1 个答案:

答案 0 :(得分:2)

Expo v27

  

package.json上的React Native / Expo v27.0.0更新为v27.0.2

Expo v28

  

package.json上的React Native / Expo v28.0.0更新为v28.0.1

程序:

1)转到您的package.json文件并更改博览会的版本,例如:

From:

"react-native": "https://github.com/expo/react-native/archive/sdk-27.0.0.tar.gz",

To:

"react-native": "https://github.com/expo/react-native/archive/sdk-27.0.2.tar.gz",

2)删除您的node_modules:

$ rm -rf node_modules

3)重新安装:

$ yarn install