Ionic App 被 iOS“仅限特定网站”限制阻止
Posted
技术标签:
【中文标题】Ionic App 被 iOS“仅限特定网站”限制阻止【英文标题】:Ionic App blocked by iOS 'Specific Website Only' restriction 【发布时间】:2018-04-25 09:46:35 【问题描述】:用户的 ios 设备在设置中设置了仅允许“仅限特定网站”的限制。因此,Ionic 应用程序将显示初始屏幕,但之后不会执行任何操作。
想必在设置中必须输入应用的具体本地URL。该网址是什么?
编辑: 如果为网站启用“限制成人内容”设置,它也会被阻止。
【问题讨论】:
【参考方案1】:我遇到过应用无法访问 localhost 的类似问题。 Ionic 现在使用本地服务器(因为引入了 wkwebview)来提供本地文件。当设备的限制设置为“仅限特定网站”时,该应用将在启动画面后仅显示空白屏幕。
将http://localhost 添加到允许的站点列表中有效。
此外,删除和添加 ios 平台也有所帮助。启动后没有显示空白屏幕,而是显示了一条消息,指出该站点受到限制并提供用户允许。
要删除和添加 ios 平台: (取自 wkwebview 的 ionic 文档 - https://ionicframework.com/docs/wkwebview/)
确保 Xcode 已关闭
干净安装:
rm -rf platforms
rm -rf plugins
重新添加平台
ionic cordova platform add ios
确保允许本地主机:
<allow-navigation href="http://localhost:8080/*"/>
确保 WKWebView 是默认引擎:
<feature name="CDVWKWebViewEngine">
<param name="ios-package" value="CDVWKWebViewEngine" />
</feature>
<preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />
构建离子 ios
ionic cordova build ios
打开 Xcode 并尝试再次构建。
【讨论】:
这是很好的信息 - 谢谢!我没有尝试最后几个步骤,但稍后会尝试。目前,将 localhost 添加到允许的站点列表中就可以了,但看到其他消息确实会很好。再次感谢!【参考方案2】:您是否正在开发应用程序本身,但您不知道它连接到哪个 URL?如果这不是您的应用程序,请询问开发人员 URL 是什么并将其添加到允许列表中,否则无法找到它。不应阻止本地 index.html URL,否则基于 Cordova 的应用程序将无法处理此行为。
【讨论】:
【参考方案3】:对于那些仍然对此感到困惑的人,cordova-plugin-ionic-webview
的较新版本现在支持使用应用方案,而不是通过 http://localhost
提供服务。使用应用程序方案将使应用程序不会被 iOS 的内容限制阻止。希望这会有所帮助!
【讨论】:
以上是关于Ionic App 被 iOS“仅限特定网站”限制阻止的主要内容,如果未能解决你的问题,请参考以下文章
Ionic React App IOS Build 失败“配置文件”
Xcode 9 不更新 ionic 2 ios app appicons
ionic / firebase ipv6 Auth ios app 拒绝