【问题标题】:Socket.io cannot be loaded when Ionic is emulated inside Android在 Android 中模拟 Ionic 时无法加载 Socket.io
【发布时间】:2016-09-13 12:06:18
【问题描述】:

首先,让我告诉你我得到的错误:

我的 index.html:

<script src="http://demo.myapp.com:8080/socket.io/socket.io.js""></script>

我的 socket.js

this.socket = io.connect(`//${Config.get("domain")}:${Config.get("port")}`);
Resolves to //demo.myapp.com:8080

我的 config.xml

...
<content src="index.html" />
<access origin="*" />
...

cordova-plugin-whitelist 已添加到我的应用程序中。

Plugin "cordova-plugin-whitelist" already installed on android.

当我尝试时:

ionic run android

我的手机通过 USB 连接到我的电脑成功打开了应用程序。但是,当我通过 Chrome 检查控制台日志时,我看到了我在这篇文章顶部发布的错误消息。

我在谷歌上搜索了这个问题并尝试了所有方法,但没有任何效果。

我是否遗漏了什么或做错了什么?

【问题讨论】:

    标签: android cordova ionic-framework socket.io


    【解决方案1】:

    当您的白名单插件与您的cordova android平台不兼容时会发生这种情况。我在更新插件和android平台后解决了它

    【讨论】:

    • 使用此cordova平台更新您的平台添加android并检查这是否是最新版本您也可以执行cordova平台添加android@5.2.2要更新插件,请执行npm install -g cordova-check-插件,然后使用此命令 cordova-check-plugins --update=auto
    【解决方案2】:

    发现问题。有点不相关,但可能对未来的访问者有所帮助。

    确保提供完整的前缀,如下所示:

    <script src="http://yourapp.com/socket.io/socket.io.js">
    

    而不是

    <script src="//yourapp.com/socket.io/socket.io.js">
    

    【讨论】:

      猜你喜欢
      • 2018-05-28
      • 1970-01-01
      • 1970-01-01
      • 2020-03-31
      • 2023-03-24
      • 2019-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多