浏览器“WebSocket”与 Capacitor 跨平台工作正常吗?

问题描述 投票:0回答:1

我想从应用程序中作为客户端打开 Websocket。目前我正在使用 React + Capacitor 编写它,通常电容器有自己的插件(或者允许您使用 cordova 插件(但我试图避开这些插件,因为大多数插件已经很久没有维护了)。 在这种情况下,确实存在一个插件,但它非常小,我不想在生产关键系统中使用这个插件。

我的问题是:我可以自由使用默认的 websocket 浏览器实现吗?它可以在 android/ios 中正常工作吗?我知道对于 Android 来说,像明文这样的东西可能会成为一个问题。

我尝试了上述插件,但它未能立即做出反应。浏览器套接字工作正常,但话又说回来,我不能完全相信这一点,仅仅用一些手机测试它并不足以保证它可以在任何 android/ios 设备上工作。

reactjs websocket cross-platform capacitor capacitor-plugin
1个回答
0
投票

以下是我发现的一些有关 Capacitor 和 WebSocket 的见解(截至 iOS 17 和 Android 14)。

iOS: 对我来说效果很好

ws

在安卓上:

  • 确保您对本地主机网络(您的应用程序)和 websocket 使用相同的安全性。含义:https --> wss 或 http --> ws。 (这可以在capacitor.config.ts下的
    androidScheme
    中调整。
    为了支持现代 SDK,请确保将明文添加到清单中 (
  • android:usesCleartextTraffic="true"
  • )
    https://forum.ionicframework.com/t/websocket-opening-handshake-was-canceled/212744
    (否则你可能会得到未知的错误,没有太多细节)
© www.soinside.com 2019 - 2024. All rights reserved.