我如何让一个cordova6.1应用程序在iOS网站上embedded一个iframe?

直到我最近build立,我的cordova应用程序能够embedded一个网站的iframe就好了; 现在,大概在更新之后,我忘记了,构build应用程序结果的iframe在iOS上是空白的,但在Android中工作。

我已经将以下设置添加到config.xml中:

<access origin="*"/> <access origin="*.pushwoosh.com" /> <access origin="*.hoby.org" /> <allow-navigation href="*" /> <allow-intent href="*" />

以及以下内容安全策略:

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

基本上应该允许一切。 我join了cordova-whitelist插件,使用了cordova 6.1.0和Ionic 1.7.14

编辑:它实际上在iOS模拟器上工作,但不是当我在设备上运行它。

编辑2:它似乎可能是一个移动Safari浏览器的问题; 我正在查看我的networking上的文件,甚至在cordova以外的文件都没有正确加载。 我可以确认的是,至less在几天之前这个工作正在进行。

@Phil,
你的whitelist插件的应用程序是接近的,但可能是失败的,因为你的index.html中有javascript。 CSP已经阻止了许多开发者。 最简单的做法是将所有的Javascript和CSS移动到他们自己的单独文件中。

简而言之,这是一个广泛应用的解决scheme:

另外,从Cordova Tools 5.0.0 (2015年4月21日)开始, whitelist系统是必需的。 对于Phonegap Build ,这意味着自cli-5.1.1 (2015年6月16日)

添加到你的config.xml

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

注意你的应用程序现在是INSECURE。 这是由你来保护你的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';"> 

注意你的应用程序现在是INSECURE。 这是由你来保护你的APP。
这个白名单工作表应该有所帮助。
如何将Cordova / Phonegap应用于白名单系统