У меня есть ShareExtension
, в котором я получаю URL
, и я хотел бы использовать его, но для этого мне нужно cast
как 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
?? Ничего не могу найти в этом месте ... Рад за любую помощь!