【问题标题】:Web Widgets not working with Apache Cordova app on iOS DeviceWeb 小部件不适用于 iOS 设备上的 Apache Cordova 应用程序
【发布时间】:2018-06-28 21:19:01
【问题描述】:
我有使用 Visual Studio 和 Apache Cordova 开发跨平台移动应用程序的经验,但这是我第一次尝试将 Web 小部件集成到我的应用程序中。我正在使用twitter widget 和其他一些通过 iframe 和脚本标签运行的东西,虽然它们显示在 Visual Studio 浏览器模拟器上,但当我在 iOS 设备上安装应用程序时,它们不会显示在 iOS 设备上。
感谢其他提出相同问题的人,我找到了 twitter 小部件的解决方法,但我想知道为什么其他 Web 小部件无法在我的 iOS 设备上运行。为了让应用在 iOS 设备上运行这些小部件,我可以更改一些安全设置或配置设置吗?
【问题讨论】:
标签:
ios
cordova
twitter
phonegap-plugins
phonegap
【解决方案1】:
Cordova 应用不允许内部导航到外部网站,因此 iframe 无法工作,除非您明确允许导航到这些网站。
要允许导航,您必须在 config.xml 中添加一些 allow-navigation 标签,如下所示:
<allow-navigation href="http://example.com/*" />
如果你有一个 Content-Security-Policy 元标记,你还必须像这样允许 iframe 导航:
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; frame-src 'self' http://example.com">