共享扩展名获取Web URL

时间:2019-03-04 20:48:12

标签: ios objective-c url share-extension

我正在构建一个iOS共享扩展程序,该扩展程序可以接受不同的数据类型,并且Web网址就是其中之一。

在iPhone上打开Safari,然后点击共享按钮,然后从菜单中选择共享扩展名,将导致打开共享扩展名默认弹出窗口(shareviewcontroller继承自SLComposeServiceViewController),页面标题为contentText值(读取为-仅在您不知道的情况下。)

您可以使用以下方法获取网址:

NSExtensionContext *extensionContext = self.extensionContext;
NSArray *userInputArray = extensionContext.inputItems;
for (NSExtensionItem *extensionItem in userInputArray) {
    for (NSItemProvider * itemProvider in extensionItem.attachments) {
        if ([itemProvider hasItemConformingToTypeIdentifier:@"public.url"]) {
            [itemProvider loadItemForTypeIdentifier:@"public.url"
                                            options:nil
                                  completionHandler:^(NSURL *url, NSError *error) {
                                      NSString *urlString = url.absoluteString;
                                  }];
        }
    }
}

我的问题是:如何将contentText设置为绝对URL?也就是说,如何显示页面网址而不是页面标题。

我唯一想到的就是在完成处理程序中这样做:

NSString *urlString = url.absoluteString;
dispatch_async(dispatch_get_main_queue(), ^{
    [self.textView setText:urlString];
});

0 个答案:

没有答案