0

我有一个使用 socket.io 的 html5/javascript 应用程序,它在浏览器上运行良好,但是在 Phonegap Build for Android 中编译时 socket.io 在执行时无法连接socket = io.connect([server]:[port])

我已经尝试了很多可能的解决方案,但都没有成功。这是我已经尝试过的:

  • 连接到 socket.io 时使用 IP 而不是全域
  • ondeviceready触发事件后完成的socket.io连接
  • cordova-plugin-whitelistconfig.xml 中的插件
  • https://github.com/mkuklis/phonegap-websocketconfig.xml 中的插件
  • 尝试cordova-plugin-crosswalk-webview在 config.xml 中使用,但 Phonegap Build 只是没有完成编译过程并引发错误
  • access origin="*"在 config.xml 中
  • io.set('origins', ':')在服务器代码中
  • 不同的 socket.io 传输(websockets、轮询等)

我正在使用 Phonegap 的最新版本 6.5.0(Phonegap Build 不允许我使用以前的版本,如 6.4.5)。

无论我做什么,socket.on("connect", function() { alert(socket.id) })都不会在 Android 上触发。但是,在 Web 上,它会使用正确的 socket.id 发出警报。

另外,我尝试DEBUG=* node server.js使用 Android 版本签出日志,但没有出现任何内容。

4

0 回答 0