离子应用程序 - 无法访问Internet

时间:2016-02-21 17:31:50

标签: android cordova

我用离子和Phonegap构建了一个小型移动Android 6应用程序。这不是我的第一个混合应用程序,但是我第一次使用Ionic。该应用程序调用一个查询MySQL数据库的php文件,并将一些信息返回给视图。该应用程序可以在线和本地工作,但在通过PhoneGap构建后无法访问Internet。我没有加载任何样式以及从PHP调用返回的信息。我通过PhoneGap和Im测试通过三星galaxy 5发布了应用程序;我在Mac上开发了所有东西。

我根据需要安装了Cordova白名单插件,并为清单添加了必要的权限,但我需要另外一组眼睛来查看这个。

这是我的config.xml文件:

config.xml中

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<widget id="com.ionicframework.testrest902325" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
  <name>NAME</name>
  <description>
       DESCRIPTION
    </description>
  <author email="name@name.edu" href="http://example.com.com/">
    </author>
  <content src="index.html"/>
<access origin="*"/>
  <preference name="webviewbounce" value="false"/>
  <preference name="UIWebViewBounce" value="false"/>
  <preference name="DisallowOverscroll" value="true"/>
  <preference name="android-minSdkVersion" value="16"/>
  <preference name="BackupWebStorage" value="none"/>
  <feature name="StatusBar">
    <param name="ios-package" value="CDVStatusBar" onload="true"/>
  </feature>
</widget>

这是我的AndroidManifest.xml

<?xml version='1.0' encoding='utf-8'?>
<manifest android:hardwareAccelerated="true" android:versionCode="1" android:versionName="0.0.1" package="com.ionicframework.testrest902325" xmlns:android="http://schemas.android.com/apk/res/android">
    <supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" android:xlargeScreens="true" />
    <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" />
    <application android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name" android:supportsRtl="true">
        <activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/activity_name" android:launchMode="singleTop" android:name="MainActivity" android:theme="@android:style/Theme.DeviceDefault.NoActionBar" android:windowSoftInputMode="adjustResize">
            <intent-filter android:label="@string/launcher_name">
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
    <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="23" />
</manifest>

1 个答案:

答案 0 :(得分:3)

我有类似的问题;即使安装了白名单插件并拥有必要的权限,我的应用也从未连接到我的网络服务。

然后我想在config.xml中尝试包括whitelist插件。因此,在我的项目文件夹中,我运行了以下命令,该命令已更新我的config.xml

cordova plugin add cordova-plugin-whitelist --save

之后我的自动构建系统生成的APK连接到我的Web服务。