web-dev-qa-db-fra.com

Schémas d'URI personnalisés pour Facebook Messenger

Compte tenu de la récente " encouragement " de Facebook à migrer vers une application de messagerie séparée, et à la suite du {très informatif!} Réponse à la question sur les modèles d'URL/URI pris en charge par l'application Facebook , Je me demandais si des informations concernant l'application de messagerie Facebook protocole personnalisé de fb-messenger:// étaient disponibles.

La fonctionnalité que je recherchais consistait à pouvoir cliquer sur un bouton qui ouvrirait une fenêtre de discussion FB-messenger avec l'utilisateur dont l'identifiant numérique Facebook est connu. Cela devait également fonctionner si l'application Facebook ( katana ) n'était pas installée sur l'appareil (c'est-à-dire uniquement le messager, orca ).

J'ai trouvé un exemple du lien souhaité profond (fb-messenger://user-thread/{user-id}), mais cela ne semblait pas fonctionner. J'ai réalisé que FB avait tendance à réviser les adresses URI de temps en temps, car elles ne sont généralement pas supposées être accessibles au public (pour autant que je sache).

19
Dev-iL

Avec la version actuelle, Facebook sur Android demande automatiquement à l'utilisateur d'ouvrir l'application ou en chrome lorsque vous utilisez son domaine www.messenger.com Il est préférable de rediriger l'utilisateur vers cette URL et de laisser Facebook le gérer.

https://www.messenger.com/t/ {nom d'utilisateur-ou-nom-de-page-ici}

Intent intent;
intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.messenger.com/t/{username-or-page-name-here}"));
startActivity(intent);
4
SirNarsh

Cela simplement partager un lien

<a href="fb-messenger://share?link=encodedLink"></a>
3
ethannguyens

Utilisation de Chrome Intents pour Android: Le code ci-dessous ouvre FB Messenger, s’il est installé. Sinon, redirige vers l'URL de secours.

<a href="intent://user/<yourid>/#Intent;scheme=fb-messenger;package=com.facebook.orca;S.browser_fallback_url=http://yourfllbackweburl;end"> Open Messenger</a>
1
Abhilash