iframe无法在Android上的Ionic应用程序中运行

时间:2016-01-26 16:13:38

标签: android html cordova iframe ionic-framework

在我的Ionic项目中,我想为Vimeo视频添加iframe。当我在我的本地主机和我的服务器上测试应用程序时,这工作正常,但在Android上它似乎无法正常工作。它说由于以下错误导致网页无法加载:' net :: ERR_FILE_NOT_FOUND'。

这是iframe代码:

<iframe src="//player.vimeo.com/video/VIDEO-ID-HERE" width="WIDTH" height="HEIGHT" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>

我已经添加了白名单插件,它可以正常处理其他网站的Ajax请求,但iframe似乎仍然无法正常工作。有什么建议吗?

4 个答案:

答案 0 :(得分:3)

知道了。只需在链接之前添加http://即可使其工作。现在它看起来像这样:

<iframe src="http://player.vimeo.com/video/VIDEO-ID-HERE" width="WIDTH" height="HEIGHT" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>

答案 1 :(得分:2)

您需要使用cordova插件,该插件允许您实施白名单政策,以便在Cordova&gt; = 4.0上导航应用程序Webview。

使用

在Ionic 1项目中安装此插件
 ionic plugin add cordova-plugin-whitelist

然后将以下行添加到config.xml文件以允许加载外部URL:

<allow-intent href="http://*/*" launch-external="yes"/>
<allow-intent href="https://*/*" launch-external="yes"/>

答案 2 :(得分:1)

如果您使用的是cordova 5.0或更高版本,请添加白名单插件。

离子插件添加https://github.com/apache/cordova-plugin-whitelist.git

答案 3 :(得分:1)

您必须在元数据标记

中添加该框架定义
frame-src * 'self'
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; frame-src 'self' https://iframe url">

然后在config.xml cordova文件中添加以下元标记:

<access origin="*"/>
<allow-navigation href="*"/>