簡體   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