应用扩展找不到图片
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”)
此外,请确保在构建时将所需资源放入扩展包中。您的扩展程序无法加载属于您的应用程序的资源,反之亦然。
【讨论】:
以上是关于应用扩展找不到图片的主要内容,如果未能解决你的问题,请参考以下文章