首页 > 解决方案 > 开发iOS框架时如何在WKWebView中加载本地HTML文件

问题描述

我开发了一个用户可以与 CocoaPod 一起使用的 iOS 框架。但是在项目中使用时,这一行出现错误:

let url = Bundle(for: type(of: self)).url(forResource: "file_name", withExtension: "html", subdirectory: "assets")!

这一行在框架中,错误是:

Unexpectedly found nil while unwrapping an Optional value

在框架中,我有一个名为“assets”的文件夹和一个名为“file_name.html”的文件。该错误仅在框架中使用时发生。

标签: iosswiftcocoapodswkwebview

解决方案


let url = Bundle(for: type(of: self)).url(forResource: "file_name", withExtension: "html", subdirectory: "assets")!
-------------------------------^

确保它self指向框架的一个类,以便找到正确的包。而且您不需要使用type(of:_)

let bundle = Bundle(for: FrameworkClass.self)
let url = bundle.url(forResource: "file_name", withExtension: "html", subdirectory: "assets")!

推荐阅读