如何设置规则,以便当我的用户单击我的应用程序中的任何 Web 链接时,它会在应用程序内浏览器而不是 Safari 中打开?
上下文:我正在构建一个应用程序,该应用程序有多个位置,其中链接要么由我嵌入,要么通过各种用户交互加载,例如指向包含另一个链接的页面的链接。我想确保用户很少离开我的应用,因此想在已经开发的应用内浏览器中打开所有外部 Web 链接
目标版本:iOS 11。 环境/语言:Swift 4
最佳答案
使用 SFSafariViewController 的简单解决方案在单独的包中可用
import SafariServices
Swift 4、iOS 9.0+
let url = URL(string: "your URL here")
let vc = SFSafariViewController(url: url)
present(vc, animated: true)
如果您需要更多控制 - 使用 Configuration参数(Swift 4、iOS 11.0+):
例子:
let config = SFSafariViewController.Configuration()
config.entersReaderIfAvailable = true
let url = URL(string: "your URL here")
let vc = SFSafariViewController(url: url, configuration: config)
present(vc, animated: true)
关于ios - 如何在应用程序内浏览器中打开在我的 iOS 应用程序中单击的任何 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52827616/