我有一个ShareExtension,在其中我得到了URL,我想使用它,但为此,我需要把它作为一个String
@objc func actionButtonTapped(){
print("yeet")
var html: String?
if let item = extensionContext?.inputItems.first as? NSExtensionItem,
let itemProvider = item.attachments?.first,
itemProvider.hasItemConformingToTypeIdentifier("public.url") {
itemProvider.loadItem(forTypeIdentifier: "public.url", options: nil) { (url, error) in
if (url as? URL) != nil {
let urlString = String(contentsOf: url)
OpenGraphDataDownloader.shared.fetchOGData(urlString: urlString) { result in
switch result {
case let .success(data, _):
// do something
print(data.pageTitle!)
case let .failure(error, _):
// do something
print(error.localizedDescription)
}
}
}
}
}
}上面的代码是抛出这个error
不能转换'NSSecureCoding?‘类型的值。到预期的参数类型'URL‘
问题:
如何将NSSecureCoding转换为URL,以便将其转换为String?在这里找不到任何东西..。为每一个帮助而高兴!
发布于 2020-04-29 00:35:22
我首先将其转换为NSURL,然后得到它的absoluteString,如下所示:
let directoryURL = url as! NSURL
let urlString: String = directoryURL.absoluteString!https://stackoverflow.com/questions/61491947
复制相似问题