wake-up-neo.net

Facebook-App wird auf der angegebenen Profilseite geöffnet

Ich versuche, etwas Code von SO zu verwenden, aber es schlägt fehl:

Das sind Uris, die den rechten Abschnitt der App öffnen sollen.

facebook://facebook.com/info?user=544410940     (id of the user. "patrick.boos" won't work)
facebook://facebook.com/wall?user=544410940   (will only show the info if you have added it as 

Ich möchte die Facebook-App in einem von mir angegebenen Profil öffnen. Dies ist ein Code, den ich versuche. Die Nummer ist die UID des Profils.

        String uri = "facebook://facebook.com/wall?user=417079614970109"; 
        intent = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));
        startActivity(intent);

Wird es abgeschrieben oder was? Wie erledige ich diese Aufgabe jetzt?

17
Jacek Kwiecień

Eigentlich sieht es so aus. Diese URIs funktionieren nur mit der neuesten Version der Facebook-App. Deshalb versuchen wir es zu fangen.

public static Intent getOpenFacebookIntent(Context context) {

    try {
        context.getPackageManager()
                .getPackageInfo("com.facebook.katana", 0); //Checks if FB is even installed.
        return new Intent(Intent.ACTION_VIEW,
                Uri.parse("fb://profile/254175194653125")); //Trys to make intent with FB's URI
    } catch (Exception e) {
        return new Intent(Intent.ACTION_VIEW,
                Uri.parse("https://www.facebook.com/arkverse")); //catches and opens a url to the desired page
    }
}

Um es zu öffnen, rufen Sie es in Ihrer Aktivität auf:

Intent facebookIntent = getOpenFacebookIntent(this);
startActivity(facebookIntent);
51
Zaid Daghestani

Ist das nicht einfacher? Zum Beispiel innerhalb eines onClickListener?

    try{ 

        Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("fb://profile/426253597411506"));
        startActivity(intent);

       }catch(Exception e){

         startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.facebook.com/appetizerandroid")));

      }

PS. Rufen Sie Ihre ID (die große Zahl) von http://graph.facebook.com/[userName] ab.

11
John

Das funktioniert nicht mehr

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("fb://profile/someProfile"));

Bitte versuchen Sie es stattdessen

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("fb://facewebmodal/f?href=https://www.facebook.com/someProfile"));
10
Tristan Richard

Derzeit ist es nicht möglich, Facebook diese Funktionalität zu entfernen

2

Es gibt so viele Fragen dazu, aber dieser Code funktioniert für mich. Facebook hat seine Richtlinien geändert. Für weitere Informationen überprüfen Sie bitte diese offizielle Facebook-Seite GRAPH API Explorer PAGE

Intent intent = null;
    try {
        getPackageManager().getPackageInfo("com.facebook.katana", 0);
        String url = "https://www.facebook.com/"+idFacebook;
        intent = new Intent(Intent.ACTION_VIEW, Uri.parse("fb://facewebmodal/f?href="+url));
    } catch (Exception e) {
        // no Facebook app, revert to browser
        String url = "https://facebook.com/"+idFacebook;
        intent = new Intent(Intent.ACTION_VIEW);
        intent .setData(Uri.parse(url));
    }
    this.startActivity(intent);
2
Shailesh

Dazu benötigen wir die "Facebook page id", die Sie bekommen können:

  • gehen Sie von der Seite zu "Über". 
  • gehen Sie zum Abschnitt "Weitere Informationen".

 introducir la descripción de la imagen aquí

Um die Facebook-App auf der angegebenen Profilseite zu öffnen,

du kannst das:

 String facebookId = "fb://page/<Facebook Page ID>";
  startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(facebookId)));
1
Elenasys

Für Facebook-Seite wie folgt verwenden: http: // fb: // page/87268309621xxxx Für persönliche ID wie folgt verwenden: http: // fb: // profile/87268309621xxxx

0
abir99