如何将 html 文件加载到多个目标的 webView 中

How to load an html file into a webView for multiple targets

在我的应用程序中,我有一个 html 制作人员名单文件,我想将其加载到 webView 中。我使用的代码非常适合我的主要目标。但是后来我创建了第二个目标:应用程序的专业版但是对于这个代码不起作用,因为 url 是零。

两个目标都在 credits.html 的目标成员资格上选择 我已尝试将身份检查器中文件的位置更改为所有可能性,但没有成功。 我猜文件以某种方式保存在只有主要目标可以访问的路径中。

if let urlPath = Bundle.main.path(forResource: "credits", ofType: "html") {
    if let url = URL(string: urlPath) {
        webView.loadRequest(URLRequest(url: url))
    }
}

您需要使用 Bundle(identifier:) 来获取特定目标的捆绑包。您可以通过转到目标的构建设置并查看 Product Bundle Identifier 变量来了解每个特定目标的 Bundle 标识符。

if let targetBundle = Bundle(identifier: "yourBundleId"), let filePath = targetBundle.url(forResource: "credits", withExtension: "html") {
    webView.loadRequest(URLRequest(url: url))
}