我有一个通过cordova(cordova而不是ionic)创建的应用程序,适用于Android和iOS。该应用程序集成了iFrame,在生成的APK中运行良好。它有一个“不允许明文HTTP流量”错误,使用此问题Android 8: Cleartext HTTP traffic not permitted中发布的一些说明修复了该错误。
但对于iOS 11来说,Iframe不起作用,也不显示任何错误信息,它加载了框架但内部是空白的,生成的应用充满了弃用。
有没有隐私政策,像明文的,但为iOS?或者我怎么知道为什么iFrame是不工作?
2条答案
按热度按时间pgvzfuti1#
由于您尝试在Web视图中加载纯HTTP内容,因此可能被App Transport Security阻止。您可以将
NSAllowsArbitraryLoadsInWebContent
键添加到应用的Info.plist中,设置值YES(布尔类型),以便可以加载HTTP内容。如果可能的话,最好将该内容托管在HTTPS下。这不仅更安全,而且Apple还要求提供启用此例外的理由,并且它可能会使应用程序接受更严格的审查(请参阅https://developer.apple.com/cn/documentation/security/preventing_insecure_network_connections#3138036)。
nafvub8i2#
我已经成功地用纯html,css,javascript创建了许多cordova应用程序,这些应用程序都可以和iframe一起工作。iframe的内容来自我的web服务器,并填充它。我的网站是https和ssl,所以我用的url是https://,也许这就是你需要的。我已经用iframe,object和embed试过了,所有3个都工作正常。下面是object的代码示例
在config.xml文件中,我添加了
这些是我加载的插件。
我的应用程序一切正常。截至2022年,最高iOS 15. 2