gpt4 book ai didi

android - 带有 Node.js/Socket.IO 服务器和客户端的 Phonegap 应用程序中的 Android 的 WebSockets

转载 作者:IT老高 更新时间:2023-10-28 23:26:12 24 4
gpt4 key购买 nike

我正在 PhoneGap 中制作一个 Android 应用程序。我想做的是让应用程序通过 WebSockets 与我的 Node.js 服务器通信。我的 Node.js 服务器使用 Socket.IO,当我打开应用程序时它会自动回退到轮询,这与桌面 Chrome 应用程序相反,它会愉快地打开 WebSocket 并通过它进行通信。

我已阅读 this blogpost关于将实际的 WebSocket API 与 Phonegap 集成。问题是我没有手动覆盖“onConnect,onMessage”函数,而是 Socket.IO 为我完成了所有这些。

有没有办法将 WebSockets 集成到我的 Android Phonegap 应用程序中?

最佳答案

简答:Cordova WebView 不支持 WebSockets 并且 socket.io 不连接到基于标准的 WebSocket 客户端

对于您的客户,如果您想要真正的 websockets,您似乎仍然需要使用特定于 Android 构建或 iOS 构建的 Cordova 插件。试试 this search ,其中包括一个 Android 插件的 anismiles 存储库,OP 引用的同一博主。

因此,考虑到这一点,socket.io 将不适用于您的服务器。不幸的是,socket.io 服务器不支持使用基于 Html5 标准的 websocket 连接连接到客户端,您必须使用他们的客户端库。正如您所看到的,您不能在 Cordova 中使用他们的客户端库......好吧,您可以,它只会退回到轮询。

所以现在你的 websocket 客户端是一个基于标准的 Cordova 插件,你需要一个支持基于标准的 websocket 连接的服务器。你应该看看SockJs , Worlize , Miksago , 或 Einaros .还有其他的。我目前正在使用 Worlize。

要记住的另一件事是,目前有一小部分云主机支持真正的 websocket 连接。我推荐DotCloudNodejitsu .

如果这回答了您的问题,请单击复选标记:)

关于android - 带有 Node.js/Socket.IO 服务器和客户端的 Phonegap 应用程序中的 Android 的 WebSockets,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9054653/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com