【问题标题】:Socket.io not working in Ionic Android buildSocket.io 在 Ionic Android 构建中不起作用
【发布时间】:2021-01-12 16:24:07
【问题描述】:

我正在尝试使用 Ionic 创建一个 Android 应用程序以将消息发送到 Node.js 服务器。我将socket.io@2.3.0 用于服务器,socket.io-client@2.3.0 用于 Ionic 应用程序。 Ionic 应用程序应该打开与服务器的socket.io 连接,然后发送消息"Hello, World!"。用于网络的 Ionic 应用程序构建工作正常,我尝试从其他设备(我的笔记本电脑和手机)运行它,并且在这两种情况下,socket.io 连接都有效,服务器打印出了从 Ionic 应用程序接收到的消息。

// Server output
Server running on port 5000.
New connection from 7rI7qvo9gNjVD5ElAAAA
Hello, World!

但是当我使用命令为 Android 构建 Ionic 应用程序时:

ionic cap add android
ionic cap open android

然后从 Android Studio 调试,应用程序启动,但我没有看到来自服务器的任何消息,甚至在 Android Studio 调试选项卡中也没有看到错误消息。

// Server output
Server running on port 5000.

起初我以为这是网络问题,所以我确保AndroidManifest.xml 文件包含INTERNETACCESS_NETWORK_STATE 权限,我尝试构建一个APK 并在我的手机上运行它,但它仍然没有工作所以我不知道我应该做什么。

我使用的是 Ionic 5.4.16 版本。

感谢您阅读本文,祝您有美好的一天:)

【问题讨论】:

    标签: android ionic-framework socket.io


    【解决方案1】:

    我通过在 Heroku 上托管 Node.js 服务器解决了这个问题,现在一切正常,但我不知道为什么。由于当我在 Heroku 上托管服务器时协议从 http 更改为 https,我猜 Android 不喜欢 http 协议。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-05-30
      • 1970-01-01
      • 1970-01-01
      • 2020-02-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多