gpt4 book ai didi

ios - 我的 iOS 操作扩展在调试器中不显示 Public.URL

转载 作者:行者123 更新时间:2023-11-28 07:07:43 27 4
gpt4 key购买 nike

您好,我的 iOS 操作扩展有问题,我试图获取 Safari 当前打开的公共(public) URL,但我无法判断我是否有公共(public) URL,因为它没有显示在调试器中。事实上,调试器是黑色的,唯一显示的信息是操作扩展是否中断/崩溃。

这是我从 safari 获取 Public.url 的代码。

//get the itemProvider which wraps the url we need
var item : NSExtensionItem = self.extensionContext!.inputItems[0] as! NSExtensionItem
var itemProvider : NSItemProvider = extensionItem.attachments?.first as! NSItemProvider

//pull the URL out
if (itemProvider.hasItemConformingToTypeIdentifier("public.url")) {
itemProvider.loadItemForTypeIdentifier("public.url", options: nil, completionHandler: { (urlItem, error) in
let url : NSURL = urlItem as! NSURL
//do what you need to do now, such as send a request to your server with this url
println(url.absoluteString!);
})
}

是否有更好的方法来完成它,它是用 swift 编写的,而且我环顾四周,找不到更好的解决方案,所以我想问是否有教程或示例我可以遵循。

最佳答案

我相信以下方法会起作用:

    let item : NSExtensionItem = self.extensionContext!.inputItems[0] as! NSExtensionItem
let itemProvider : NSItemProvider = item.attachments?.first as! NSItemProvider

//pull the URL out
if (itemProvider.hasItemConformingToTypeIdentifier("public.url")) {
itemProvider.loadItemForTypeIdentifier("public.url", options: nil, completionHandler: { (urlItem, error) in
let url : NSURL = urlItem as! NSURL
//do what you need to do now, such as send a request to your server with this url
print(url.absoluteString);
})
}

关于ios - 我的 iOS 操作扩展在调试器中不显示 Public.URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29864929/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com