我一直在使用苹果公司的iMessage视频教程进行iMessage扩展,但遇到了一个奇怪的错误。我从一个空白项目开始,这个项目建立了一个很好的运行程序。但是,我为我的MSStickerBrowserViewController添加了一个文件。代码已经构建,但是在模拟器中打开扩展会使它崩溃。奇怪的是,我从来没有做过浏览器的实例。为什么没有执行崩溃的代码?
以下是错误: dyld:库未加载:@rpath/libSwitSwiftOnoneSupport.dylib引用自: /Users/alextyshka/Library/Developer/CoreSimulator/Devices/BF34F16D-3CEF-4C7D-8D9A-D3D4B463F293/data/Containers/Bundle/Application/75E2E14B-E76B-4EC7-9528-7CE38864B55D/BlankMessages.app/PlugIns/MessagesExtension.appex/MessagesExtension原因:图像未找到--这是触发错误的代码:
import UIKit
import Messages
class MyStickerBrowserViewController: MSStickerBrowserViewController {
var stickers = [MSSticker]()
func changeBrowserViewBackgroundColor(color: UIColor) {
stickerBrowserView.backgroundColor = color
}
func loadStickers() {
createSticker(asset: "forest", localizedDescription: "forest sticker")
}
func createSticker(asset: String, localizedDescription: String) {
guard let stickerPath = Bundle.main().pathForResource(asset, ofType: "png") else {
print("couldn't create the sticker path for", asset)
return
}
let stickerURL = URL(fileURLWithPath: stickerPath) //This is the line that seems to be causing the error.
let sticker: MSSticker
do {
try sticker = MSSticker(contentsOfFileURL: stickerURL, localizedDescription: localizedDescription)
stickers.append(sticker)
} catch {
print(error)
return
}
}
/*
override func numberOfStickers(in stickerBrowserView: MSStickerBrowserView) -> Int {
}
override func stickerBrowserView(_ stickerBrowserView: MSStickerBrowserView, stickerAt index: Int) -> MSSticker {
}*/
}我注意到,如果我删除了第16行(这是一个URL ),就不会抛出错误。
这里是我跟踪的WWDC视频的链接。我已经检查了一遍,以确保我准确地跟踪了视频
发布于 2016-07-10 00:55:40
我重新安装了Xcode,它成功了。真奇怪。谢谢大家的建议!
https://stackoverflow.com/questions/38275785
复制相似问题