簡體   English   中英

在沒有安裝Facebook App的情況下,FBSDKShareDialog不會共享照片

[英]FBSDKShareDialog doesn't share Photo without Facebook App installed, IOS

我正在使用Facebook SDK 4.0, https://developers.facebook.com/docs/sharing/ios#share_dialog我正在使用FBSDKShareDialog來共享Photo.It會在用戶安裝Facebook應用程序的情況下共享Photo,但是當用戶沒有安裝時它會失敗t安裝了FB App。 但他們說“如果某人沒有安裝Facebook應用程序,它將自動回退到基於網絡的對話框。” Idk什么錯了請幫我分享使用FBSDK 4.0的照片。

我的代碼是

FBSDKSharePhoto *photo = [[FBSDKSharePhoto alloc] init];
photo.image = self.capturedImageView.image;
photo.userGenerated = YES;
FBSDKSharePhotoContent *content = [[FBSDKSharePhotoContent alloc] init];
content.photos = @[photo];
[FBSDKShareDialog showFromViewController:self
                             withContent:content
                                delegate:self];

這是錯誤報告

在此輸入圖像描述

錯誤:“com.facebook.sdk:FBSDKErrorArgumentNameKey = shareContent,com.facebook.sdk:FBSDKErrorDeveloperMessageKey = Feed共享對話框支持FBSDKShareLinkContent。”

FBSDKShareDialog僅支持FBSDKShareLinkContent發布圖像或URL。因此,要使用共享對話框,您必須使用FBSDKShareLinkContent。

在此輸入圖像描述

您可以按如下方式使用它:

FBSDKShareLinkContent *content = [[FBSDKShareLinkContent alloc] init];
    content.imageURL = [NSURL URLWithString:@"http://upload.wikimedia.org/wikipedia/commons/3/36/Hopetoun_falls.jpg"];
    [FBSDKShareDialog showFromViewController:self
                                 withContent:content
                                    delegate:self];

如果您想共享鏈接,請使用content.contentURL

請參閱: https//developers.facebook.com/docs/sharing/ios#share_dialog

如果您使用的是FBSDKSharePhoto,那么您需要安裝原生Facebook for iOS應用程序。

請參閱: https//developers.facebook.com/docs/sharing/ios#photos

我也有同樣的問題,因為文檔也說它們提供了回退機制,這種情況似乎不正確:

內置共享后備

在以前版本的SDK for iOS中,您的應用必須先檢查本機安裝的Facebook應用,然后才能打開“共享”對話框。 如果此人沒有安裝該應用程序,您必須提供自己的代碼來調用回退對話框。

現在,SDK會自動檢查本機Facebook應用程序。 如果未安裝,SDK會將人員切換到默認瀏覽器並打開“源”對話框。 如果有人想要共享Open Graph故事,SDK將打開Web Share對話框。

首先配置iOS設備的Facebook帳戶,然后使用以下代碼:

FBSDKSharePhoto *photo = [[FBSDKSharePhoto alloc] init];

photo.image = self.capturedImageView.image;

photo.userGenerated = YES;

FBSDKSharePhotoContent *content = [[FBSDKSharePhotoContent alloc] init];

content.photos = @[photo];

[FBSDKShareDialog showFromViewController:self
                             withContent:content
                                delegate:self];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM