繁体   English   中英

iOS 8共享扩展Safari图像

[英]iOS 8 Share Extension Safari Image

我在iOS 8应用程序中设置了一个共享扩展程序,一切正常。 我可以从Photo app或Safari分享。 但是当我在Safari中时,我不知道如何获取生成的网页缩略图。 我已经注册了适当的NSExtensionActivationRule。 当我从Photo应用程序共享照片时,NSItemProvider对象类型说它是public.jpeg并且我能够使用

[itemProvider loadItemForTypeIdentifier:(NSString *)kUTTypeImage options:nil completionHandler:^(UIImage *image, NSError *error)
{
         [self.extensionContext completeRequestReturningItems:@[] completionHandler:nil];
}];

为了获得图像

但是当我从Safari共享时,NSItemProvider类型说它是public.url,我不知道如何获取图像? 我知道如何获取url,通过执行loadItemForTypeIdentifier:@“public.url”但是如何获取图像?

在共享扩展中,您可以设置javascript预处理器来访问网页,并返回预览图像等信息。

有关设置js预处理器的详细信息,请访问: https//developer.apple.com/library/prerelease/ios/documentation/General/Conceptual/ExtensibilityPG/ExtensionScenarios.html#//apple_ref/doc/uid/TP40014214-CH21- SW12

我可以在共享网页时获取生成的缩略图,但无法修改它的大小。

要在Safari上共享时在共享扩展上自动生成图像,请使用loadPreviewImageWithOptions:completionHandler:previewImageHandler。

[itemProvider loadPreviewImageWithOptions:nil completionHandler:^(UIImage *image, NSError *error){

   if(image){
        //do anything here with the image
   }

}

我可以在Safari上共享时检索自动生成的缩略图,但我无法使用以下方法更改图像的大小:

NSString * const NSItemProviderPreferredImageSizeKey;

参考: https//developer.apple.com/library/ios/documentation/Foundation/Reference/NSItemProvider_Class/

请检查,看看是否有助于你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM