8

Ich kann nicht viele Beispiele des FB + Android SDK finden und die Beispiele sind nicht einfach genug (einige von ihnen sind veraltet). Mein einfaches Ziel ist es, einige Inhalte auf der FB mit meiner Android App zu teilen. Als ich die iOS-App entwickelte, war es einfachWie kann ich Inhalte einfach über das Android SDK auf Facebook teilen?

Dieser Code behandelt die Sitzungen und speichert die Sitzungsdetails über App-Neustarts.

1) Wie teilen Sie einfach etwas in Android.

2) Ich sah Facebook(String app_id) ist veraltet. Wenn ja, was ist dann sein Ersatz?

P.S. Mit Facebook 3.0 SDK

+0

Sind Sie bereit, die Facebook-App auf dem Telefon des Benutzers zu verwenden, um diesen Inhalt zu teilen? Wenn dies der Fall ist, ist das unter Android viel einfacher als unter iOS. Auf welche Android-Versionen werden Sie ausgerichtet? –

+1

Der Ersatz für die 'Facebook'-Klasse ist meistens die' Session'-Klasse in Facebook 3.0 SDK. Siehe dieses Tutorial: https://developers.facebook.com/docs/tutorials/androidsdk/3.0/scrumptious/publish-open-graph-story/ – Tushar

+0

@StephanBranczyk Ich baue die App für Gingerbread (2.3.3) und höhere Versionen. Ist es für verschiedene Versionen anders? – rahulg

Antwort

18

Entnommen Share on User's Wall using Facebook SDK:

private void share() { 
    Bundle bundle = new Bundle(); 
    bundle.putString("caption", "Harlem Shake Launcher for Android"); 
    bundle.putString("description", "Your android can do the Harlem Shake. Download it from google play"); 
    bundle.putString("link", "https://play.google.com/store/apps/details?id=mobi.shush.harlemlauncher"); 
    bundle.putString("name", "Harlem Shake Launcher"); 
    bundle.putString("picture", "http://shush.mobi/bla.png"); 
    new WebDialog.FeedDialogBuilder(mContext, mySession, bundle).build().show(); 
} 

Wenn Sie sich anmelden müssen (fügen Sie diese in Sie Aktivität, wo immer Sie sich einloggen müssen/share):

Session.openActiveSession(this, true, new Session.StatusCallback() { 

    @Override 
    public void call(Session session, SessionState state, Exception exception) { 
     if(session.isOpened()) { 
      share(); 
     } 
    } 
}); 

Sie müssen zu Ihrer Aktivität hinzufügen:

+0

** Ich muss überprüfen, ob diese Null, nur um friedlich in der Nacht schlafen ** dann, wenn jemand Bug wird Sie weiter schlafen. Ich wache auf, indem ich Nullstellen an Orten meide, an denen ich nicht glaube, dass sie es sein sollten. Ich wache auf, wenn jemand einen Käfer hat und ihn repariert. Dann, wenn ich nachts gut schlafe, weiß ich es sicher, so ist es auch jeder andere. –

+0

Perfekt - nachdem wir durch viele Sackgassen und Fehlstarts online gelaufen sind (wahrscheinlich aufgrund von älteren/neueren FB APKs), ist dies der, der funktioniert hat! Ich kann die modernen FB Share-Klassen nicht benutzen, weil ich von Android 2.3 aufwärts kompatibel sein möchte, also muss ich FB SDK 3.17 benutzen ... – Antinous

0

Feed-Dialog wird für das Posten auf Ihrer eigenen Wand verwendet, Technisch gesehen teilt es nicht. Wenn Sie die Share-Funktionalität erreichen möchten, gehen Sie auch zum Share-Dialog von Facebook sdk für Android. The facebook Share Dialog bietet verschiedene Funktionen zum Markieren von Freunden, Orten usw. unter Verwendung der OpenGraphAction.

Verwandte Themen