2015-04-28 2 views
18

Ich versuche, einen Link auf Facebook mit FBSDKShareLinkContent zu teilen.FBSDKShareLinkContent setzt nicht die contentDescription und contentTitle

Ich habe die URL, Beschreibung und Titel festgelegt. Das SDK füllt den Titel und die Beschreibung automatisch mit Informationen aus, die von der abgerufen wurden.

Aber ich möchte benutzerdefinierten Titel und Beschreibung, die ich in Code angegeben habe. Gibt es trotzdem etwas, um dieses Verhalten zu vermeiden?

+1

Korrekt. Wir verwenden den Titel und die Beschreibung von den og-Tags auf der Seite – WizKid

+0

Gibt es trotzdem einen benutzerdefinierten Titel und eine andere Beschreibung als Scraped-Elemente von der Website? –

+0

Es gibt keinen Weg – WizKid

Antwort

0

Ich habe diesen Code versucht und es funktioniert perfekt auf meinem virtuellen Gerät, bis ich Facebook-Konto in der Einstellung des Telefons eingerichtet. Nachdem ich das eingestellt habe, wurde jedes Mal, wenn ich den Dialog öffne, der standardmäßige iOS-Dialog für soziale Netzwerke geöffnet. Löschen Sie Ihr Konto, wenn es in den Einstellungen existiert, oder einfach FB-Anwendung installieren, in der Dokumentation sah ich, dass wir FB-App für die Freigabe benötigen.

Wenn das nicht hilft, können Sie immer Social Share Framework von iOS verwenden, hier ist das Beispiel.

http://www.appcoda.com/ios-programming-101-integrate-twitter-and-facebook-sharing-in-ios-6/

hoffe, dies wird heute helfen, nebenbei bemerkt, stapele ich auf diesen Problemen zu, jetzt alles, was das Arbeiten groß mit diesem Social Sharing-Rahmen von iOS.

15

Ich habe das gleiche Problem konfrontiert und eine Problemumgehung gefunden - direkten Einstellungsmodus der FBSDKShareDialog-Instanz zu FBSDKShareDialogModeFeedWeb.

Es zeigt den Feed-Dialog in einem UIWebView innerhalb der App mit Vorschau Ihres Beitrags mit Titel und Beschreibung rechts an.

+0

+ eins für diese Zeile dialog.mode = FBSDKShareDialogModeFeedWeb. Dies macht den Trick. –

+3

FBSDKShareDialogModeNative funktioniert auch - und ich denke, der Native-Modus ist schöner als "FeedWeb". Wenn Sie jedoch FBSDKShareDialogModeNative verwenden, fügen Sie einen "if (dialogue.canShow)" -Aufruf hinzu, da die [dialog show] automatisch fehlschlägt, wenn der Benutzer die Facebook-App nicht installiert hat. Die if-Anweisung gibt Ihnen die Möglichkeit, einen anderen dialog.mode zuzuweisen und dann anzuzeigen. – weienw

-1

Durch den Code unten verwenden wir teilen können, was wir wollen to..But nur vom Simulator, wenn wir suchen Iphone oder Ipad ein Dialogfeld angezeigt wird, und es wird die Information aus der URL direkt erhalten ..

FBSDKShareLinkContent *content = [[FBSDKShareLinkContent alloc] init]; 
content.contentURL = [NSURL URLWithString:@"http://www.k2bindia.com/"]; 
content.imageURL= [NSURL URLWithString:@"https://lh4.ggpht.com/qUs2_ntWQrWgNElAdHNVNpK_P4xuhPbX8WOcncUS0f5yQVdYtrGH9xit_aBkgwCz0mA=w300"]; 

[email protected]"MY TEST APP"; 

[email protected]"Its my description Its my description Its my description Its my description Its my description"; 

[FBSDKShareDialog showFromViewController:self delegate:self]; 
2

FBSDKShareDialogMode Sets FeedBrowser löst mein Problem

let dialog = FBSDKShareDialog() 
dialog.fromViewController = self 
dialog.shareContent = shareLink 
dialog.mode = FBSDKShareDialogMode.FeedBrowser 
dialog.show() 
0

Verwenden Zitat Eigenschaft FBSDKShareLinkContent statt

FBSDKShareLinkContent *linkContent = [FBSDKShareLinkContent new]; 
linkContent.quote = @"your quote"; 

FBSDKShareDialog *shareDialog = [FBSDKShareDialog new]; 
shareDialog.shareContent = linkContent; 

setContentTitle und setContentDescription wurden von Graph API 2.9 veraltet. Weitere Informationen finden Sie unter https://developers.facebook.com/docs/apps/changelog#v2_9_deprecations

Verwandte Themen