Cordova应用程序不从设备上的webservice获取数据,但在模拟器中工作

时间:2015-04-29 14:49:06

标签: android angularjs cordova ionic

您好我已经构建了一个Cordova应用程序,它从Angular Web服务获取数据:

var req = {
        method: 'POST',
        url: 'http://mywebservice.com',
        headers: {
            'Content-Type': 'application/json; charset=utf-8'
        },
        data: { data},
        crossDomain: true
    };

    $http(req).

        success(function(data, status, headers, config) {

            callback(data);
        }).

        error(function(data, status, headers, config) {
            console.log("error: "+JSON.stringify(status));
    });

在Ripple模拟器或iOS模拟器中,一切都很好,并显示数据。但是,如果我在设备上运行应用程序,我将无法从Web服务获取数据。

在我的config.xml中,我有标签:

<access origin="*"/>

允许访问互联网。我还在AndroidManifest.xml中找到了这些权限:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

所以我不明白为什么如果一切在模拟器中完美运行我没有显示数据。

Cordova版本4.3.0。

更新: 好吧,如果我在iOS设备上运行该应用程序,它也可以。如果我在Android设备上运行它,则只会出现此问题。

0 个答案:

没有答案