depuis mon application Android, je voudrais ouvrir un lien vers un profil Facebook dans l'application Facebook officielle (si l'application est installée, bien sûr). Pour iPhone, il existe le fb://
schéma d'URL, mais essayer la même chose sur mon appareil Android lance un fichier ActivityNotFoundException
.
Est-il possible d'ouvrir un profil Facebook dans l'application Facebook officielle à partir du code?
android
facebook
url-scheme
Björn Marschollek
la source
la source
Réponses:
Dans la version Facebook 11.0.0.11.23 (3002850)
fb://profile/
etfb://page/
ne fonctionne plus. J'ai décompilé l'application Facebook et j'ai trouvé que vous pouviez l'utiliserfb://facewebmodal/f?href=[YOUR_FACEBOOK_PAGE]
. Voici la méthode que j'ai utilisée en production:la source
ActivityNotFoundException
Cela fonctionne sur la dernière version:
Utilisez cette méthode:
Cela ouvrira l'application Facebook si l'utilisateur l'a installée. Sinon, cela ouvrira Facebook dans le navigateur.
EDIT: depuis la version 11.0.0.11.23 (3002850) Facebook App ne prend plus en charge de cette façon, il y a un autre moyen, vérifiez la réponse ci-dessous de Jared Rummler.
la source
N'est-ce pas plus facile? Par exemple dans un onClickListener?
PS. Obtenez votre identifiant (le grand nombre) sur http://graph.facebook.com/[userName]
la source
Pour la page Facebook:
Pour le profil Facebook:
... parce qu'aucune des réponses ne fait la différence
Tous deux testés avec Facebook v.27.0.0.24.15 et Android 5.0.1 sur Nexus 4
la source
Voici la façon de le faire en 2016, fonctionne très bien et est très facile.
J'ai découvert cela après avoir examiné comment les e-mails envoyés par Facebook ont ouvert l'application.
la source
c'est le code le plus simple pour faire cela
la source
Une approche plus réutilisable.
Il s'agit d'une fonctionnalité que nous utilisons généralement dans la plupart de nos applications. Voici donc un morceau de code réutilisable pour y parvenir.
(Semblable à d'autres réponses en termes de faits. Publiez-le ici juste pour simplifier et rendre l'implémentation réutilisable)
"fb://page/
ne fonctionne pas avec les versions plus récentes de l'application FB. Vous devriez utiliserfb://facewebmodal/f?href=
pour les versions plus récentes. ( Comme mentionné dans une autre réponse ici )Il s'agit d'un code de travail à part entière actuellement installé dans l'une de mes applications:
Cette méthode renverra l'URL correcte de l'application si elle est installée ou l'URL Web si l'application n'est pas installée.
Puis démarrez un intent comme suit:
C'est tout ce dont vous avez besoin.
la source
Cela a été rétro-conçu par Pierre87 sur le forum FrAndroid , mais je ne trouve aucun officiel qui le décrit, il doit donc être traité comme non documenté et susceptible de cesser de fonctionner à tout moment:
la source
essayez ce code:
la source
Pour ce faire, nous avons besoin de "l'identifiant de la page Facebook", vous pouvez l'obtenir:
Pour ouvrir l'application Facebook sur la page de profil spécifiée,
tu peux le faire:
Ou vous pouvez valider lorsque l'application Facebook n'est pas installée, puis ouvrir la page Web Facebook.
la source
Page ID
dans l'onglet À propos. C'est privé?Après de nombreux tests, j'ai trouvé l'une des solutions les plus efficaces:
la source
Ma réponse s'appuie sur la réponse largement acceptée de joaomgcd. Si l'utilisateur a installé Facebook mais désactivé (par exemple en utilisant App Quarantine), cette méthode ne fonctionnera pas. L'intention de l'application Twitter sera sélectionnée, mais elle ne pourra pas la traiter car elle est désactivée.
Au lieu de:
Vous pouvez utiliser les éléments suivants pour décider quoi faire:
la source
Meilleure réponse que j'ai trouvée, cela fonctionne très bien.
Rendez-vous simplement sur votre page Facebook dans le navigateur, faites un clic droit, et cliquez sur "Afficher le code source", puis trouvez l'
page_id
attribut: vous devez utiliserpage_id
ici dans cette ligne après le dernier back-slash:Par exemple:
la source
À partir de mars 2020, cela fonctionne parfaitement.
la source
la source
Depuis juillet 2018, cela fonctionne parfaitement avec ou sans l'application Facebook sur tous les appareils.
la source
J'ai créé une méthode pour ouvrir la page Facebook dans l'application Facebook, si l'application n'existe pas, puis l'ouverture dans Chrome
Utils.class ajoute ces méthodes
et ça
la source
Lancer page Facebook depuis votre application, laissez urlString = "fb: // page / your_fb_page_id"
Lancer Facebook Messenger, laissez urlString = "fb-messenger: // user / your_fb_page_id"
L'identifiant de page FB est généralement numérique. Pour l'obtenir, allez à Find My FB ID entrez l'URL de votre profil, quelque chose comme www.facebook.com/edgedevstudio puis cliquez sur "Find Numberic ID".
Voila, vous avez maintenant votre identifiant numérique fb. remplacez "your_fb_page_id" par l'ID numérique généré
la source
Déclarer des constantes
Declare, méthode
Fonction d'appel
la source
Réponse en octobre 2018. Le code de travail est celui qui utilise le pageID. Je viens de le tester et il est fonctionnel.
la source
J'ai implémenté sous cette forme en webview en utilisant fragment- inside oncreate:
et à l'extérieur onCreateView:
la source
ouvrir fb sur l'événement de clic de bouton sans utiliser facebook sdk
la source
la source
1-pour obtenir votre identifiant, accédez à votre profil d'image et cliquez avec le bouton droit de la souris et prenez l'adresse du lien de copie.
la source
la source
Vous pouvez ouvrir l'application Facebook en cliquant sur le bouton comme suit: -
la source