我已经在我的iOS 8应用中设置了一个共享扩展,一切都运行得很好。我可以从照片应用程序或Safari共享。但是当我在Safari中时,我不知道如何获得生成的网页缩略图。我已经注册了正确的public.jpeg。当我从照片应用程序共享照片时,NSExtensionActivationRule对象类型显示它是NSExtensionActivationRule,我可以使用
[itemProvider loadItemForTypeIdentifier:(NSString *)kUTTypeImage options:nil completionHandler:^(UIImage *image, NSError *error)
{
[self.extensionContext completeRequestReturningItems:@[] completionHandler:nil];
}];
为了得到图像
但是当我在Safari上分享时,NSItemProvider类型说它是public.url,而我不知道如何获取图像?我知道如何通过loadItemForTypeIdentifier:@"public.url“获取url,但是如何获取图像呢?
发布于 2015-07-15 06:24:41
在共享扩展中,您可以设置一个javascript预处理器来访问网页,并返回预览图像等信息。
有关设置js预处理器的详细信息,请参阅此处:https://developer.apple.com/library/prerelease/ios/documentation/General/Conceptual/ExtensibilityPG/ExtensionScenarios.html#//apple_ref/doc/uid/TP40014214-CH21-SW12
发布于 2016-01-05 14:40:11
我可以在分享网页时获得生成的缩略图,但无法修改它的大小。
要在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/
一定要检查一下,看看这是否对你有帮助。
https://stackoverflow.com/questions/26426524
复制相似问题