Phonegap(应用程序错误...发生网络错误)

时间:2016-01-23 06:30:09

标签: android html cordova phonegap-plugins phonegap-build

我使用phonegap创建了一个构建版本。在index.html文件中,我编写了一个用于加载网站的简单iframe。当我从phonegap中获取本地URL时,它正在工作。但是,如果我将整个构建作为一个zip在phonegap上传,然后从它下载apk文件,它无法正常工作。然后尝试在手机中安装该apk,显示应用程序错误。

我已经检查过访问源,并尝试在其中提供域名。但它根本没有工作。任何人都可以帮助我。

config.xml和index.html如下所示

<access origin="*"/>

<html>
    <head>
        <meta charset="utf-8" />
        <meta name="format-detection" content="telephone=no" />
        <meta name="msapplication-tap-highlight" content="no" />
        <!-- WARNING: for iOS 7, remove the width=device-width and height=device-height attributes. See https://issues.apache.org/jira/browse/CB-4323 -->
        <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" />
        <title>Testing</title>
    </head>
    <body>

<iframe src="http://www.w3schools.com" height="640px" width="100%" frameborder="0" scrolling="yes">
</iframe>

    </body>
</html>

2 个答案:

答案 0 :(得分:4)

我遇到了同样的问题,并在此处找到答案:Application error issue in android emulator "There was an network error"

解决方案是添加cordova白名单。

$ cordova插件添加cordova-plugin-whitelist

答案 1 :(得分:3)

你犯了一个常见的错误。您需要应用whitelist系统。从Cordova Tools 5.0.0开始(2015年4月21日)。对于 Phonegap Build ,这意味着自cli-5.1.1(2015年6月16日)

白名单工作表应该有所帮助 HOW TO apply the Cordova/Phonegap the whitelist system

将此添加到您的config.xml

<plugin name="cordova-plugin-whitelist"      source="npm" spec="1.1.0" />
<allow-navigation href="*" />
<allow-intent href="*" />
<access origin="*" /> <!-- Required for iOS9 -->

注意:您的APP现在已经不安全了。由您来保护您的APP。

将以下内容添加到index.html

<meta http-equiv="Content-Security-Policy" 
         content="default-src *; 
                  style-src * 'self' 'unsafe-inline' 'unsafe-eval'; 
                  script-src * 'self' 'unsafe-inline' 'unsafe-eval';">

注意:您的APP现在已经不安全了。由您来保护您的APP。