J'aimerais pouvoir inviter mon application à ouvrir un lien lorsque l'utilisateur clique sur une URL d'un modèle donné au lieu d'autoriser le navigateur à l'ouvrir. Cela peut se produire lorsque l'utilisateur est sur une page Web dans le navigateur ou dans un client de messagerie ou dans une WebView dans une application fraîchement créée.
Par exemple, cliquez sur un lien YouTube depuis n'importe où dans le téléphone et vous aurez la possibilité d'ouvrir l'application YouTube.
Comment y parvenir pour ma propre application?
Réponses:
Utilisez un android.intent.action.VIEW de la catégorie android.intent.category.BROWSABLE .
De Romain Guy Photostream de l' application AndroidManifest.xml ,
Une fois que vous êtes dans l' activité , vous devez rechercher l'action, puis faire quelque chose avec l'URL qui vous a été remise. La
Intent.getData()
méthode vous donne un Uri.Il convient de noter, cependant, que cette application est un peu obsolète (1.2), vous pouvez donc trouver qu'il existe de meilleures façons d'y parvenir.
la source
Il existe des bibliothèques qui analysent automatiquement les paramètres de l'URL.
tel que
https://github.com/airbnb/DeepLinkDispatch
&&
https://github.com/mzule/ActivityRouter
Le dernier est écrit par moi. Qui peut analyser les paramètres d'un type donné, pas toujours String.
Exemple
la source
la source