从应用程序内停用 iOS 9 Safari 内容阻止?
Posted
技术标签:
【中文标题】从应用程序内停用 iOS 9 Safari 内容阻止?【英文标题】:Deactive iOS 9 Safari Content Blocking from within the app? 【发布时间】:2015-09-20 16:12:12 【问题描述】:我正在寻找一种方法来轻松地从应用程序内停用 Safari 内容阻止。知道怎么做吗? SFContentBlockerManager.reloadContentBlockerWithIdentifier
可以对此有所帮助吗?
【问题讨论】:
嗨,兄弟,有什么解决办法吗? 【参考方案1】:如果您在SFSafariViewController
中显示数据,这是不可能的,因为启用/禁用 ios9 内容阻止程序是一个用户设置。
据我了解,内容拦截器不会影响UIWebView
。
在测试期间reloadContentBlockerWithIdentifier
在模拟器中工作,但在真实设备上不工作。
【讨论】:
【参考方案2】:您可以通过在 ContentBlockerRequestHandler
中提供不带任何规则的 NSItemProvider
来“有点”禁用 safari 内容阻止。
每当用户在主应用程序中启用/禁用内容阻止时,您都可以将此状态与扩展程序同步,例如在App Group
中使用共享容器UserDefaults(suiteName:)
并调用SFContentBlockerManager.reloadContentBlockerWithIdentifier
当然,扩展程序必须在设置中保持启用状态。
【讨论】:
以上是关于从应用程序内停用 iOS 9 Safari 内容阻止?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 iOS 9.3+ 上从网页打开 Safari 的设置
iOS-Safari跳转到App和App应用内跳转到手机App
iOS 9.3 beta 版的Safari弹出框竟如此安卓?