应用扩展找不到图片

Posted

技术标签:

【中文标题】应用扩展找不到图片【英文标题】:App Extension can't find image 【发布时间】:2016-06-20 00:45:03 【问题描述】:

在我的应用扩展中,我有以下代码行:

fileURL = Bundle.main().urlForResource("Heads", withExtension: nil)!

由于解开 nil 可选项而在运行时崩溃。这是一个简单的调用,所以它不应该失败。作为参考,这里是应用扩展的根目录,这表明这些图像确实捆绑在:

如果我知道图像的名称,并且知道它在捆绑包中,为什么这个调用会失败?

【问题讨论】:

【参考方案1】:

调用Bundle.main() 可以获得主包——包含正在运行的应用程序的包。在应用程序扩展中,这不是您要查找的捆绑包。

要为您的应用扩展(或框架,或任何其他非应用目标)获取捆绑包,请使用:

Bundle(for:),传递特定于应用扩展的类,或 Bundle(identifier:),传递包的标识符(例如“com.example.myapp.myextension”)

此外,请确保在构建时将所需资源放入扩展包中。您的扩展程序无法加载属于您的应用程序的资源,反之亦然。

【讨论】:

以上是关于应用扩展找不到图片的主要内容,如果未能解决你的问题,请参考以下文章

创建应用程序扩展时找不到桥接头

创建应用程序扩展时找不到桥接头

启动SQL server绿色版 出现找不到指定的模板

iOS 11.0.2 应用崩溃,找不到合适的图片

找不到 HOME 环境 -- 扩展 `~'

iOS 13:MPMediaPickerController - 内部错误/找不到请求的应用扩展