cordova angular无法连接到socket.io

时间:2016-08-01 06:19:38

标签: android node.js cordova ionic-framework socket.io

我的Ionic正在使用网页浏览中的socket.io。但是当我尝试将我的应用程序编译为android时,似乎socket.io无法连接到我的nodejs服务器。

当我将所有内容安装到我的节点服务器以获取连接事件时,它不会触发connection事件,如下所示:

io.on('connection',function(socket){
    console.log('My socket id is '+socket.id);
});

当我尝试在浏览器中运行应用程序时,我的节点控制台正常工作。但是使用从cordova中提取的android应用程序似乎无法连接。

更新:这是我应用中的config.xml文件

<?xml version='1.0' encoding='utf-8'?>
<widget id="com.myapp.pagemanager" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
    <name>PageManager</name>
    <description>
        A sample Apache Cordova application that responds to the deviceready event.
    </description>
    <author email="dev@cordova.apache.org" href="http://cordova.io">
        Apache Cordova Team
    </author>
    <content src="index.html" />
    <plugin name="cordova-plugin-whitelist" spec="1" />
    <access origin="*" />
    <allow-intent href="http://*/*" />
    <allow-intent href="https://*/*" />
    <allow-intent href="tel:*" />
    <allow-intent href="sms:*" />
    <allow-intent href="mailto:*" />
    <allow-intent href="geo:*" />
    <platform name="android">
        <allow-intent href="market:*" />
    </platform>
    <platform name="ios">
        <allow-intent href="itms:*" />
        <allow-intent href="itms-apps:*" />
    </platform>
</widget>

1 个答案:

答案 0 :(得分:0)

我已经解决了我的问题。我所做的是让它在模拟器中工作,以便我可以调试或轻松查看错误。当我使用本机脚本代码获取当前路径时,我在移动设备中的路径总是以file:// blah blah开始。这就是为什么它没有连接到我的Nodejs服务器。现在一切都已修好了。谢谢! SO&#39; ERS ​​