如何将 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))
}
在我的应用程序中,我有一个 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))
}