Gérer Android App Links

Les liens profonds gèrent les URI de contenu. Les liens Web gèrent les schémas HTTP et HTTPS. Android App Links gère l'attribut autoVerify.
Figure 1. Fonctionnalités des liens profonds, des liens Web et d'Android App Links

Les utilisateurs qui suivent des liens sur des appareils ont un seul objectif en tête: accéder au contenu de leur choix. En tant que développeur, vous pouvez configurer Android App Links pour rediriger les utilisateurs vers le contenu spécifique d'un lien directement dans votre application, en contournant la boîte de dialogue de sélection d'application, également appelée boîte de dialogue de décomposition. Étant donné qu'Android App Links s'appuie sur des URL HTTP et une association à un site Web, les utilisateurs qui n'ont pas installé votre application accèdent directement au contenu de votre site.

Avant d'implémenter Android App Links, il est important de comprendre les différents types de liens que vous pouvez créer dans votre application Android: liens profonds, liens Web et Android App Links. La figure 1 illustre les relations entre ces types de liens. Les sections suivantes décrivent chaque type de lien plus en détail.

Les liens profonds sont des URI de tout schéma qui redirigent directement les utilisateurs vers une partie spécifique de votre application. Pour créer des liens profonds, ajoutez des filtres d'intent pour rediriger les utilisateurs vers l'activité appropriée dans votre application, comme illustré dans l'extrait de code suivant:

<activity
    android:name=".MyMapActivity"
    android:exported="true"
    ...>
    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:scheme="geo" />
    </intent-filter>
</activity>

Lorsque l'utilisateur clique sur un lien profond, une boîte de dialogue de décomposition peut s'afficher. Cette boîte de dialogue permet à l'utilisateur de sélectionner l'une des applications (y compris la vôtre) pouvant gérer le lien profond donné. La figure 2 montre la boîte de dialogue qui s'affiche après que l'utilisateur a cliqué sur un lien Maps pour lui demander s'il souhaite ouvrir le lien dans Maps ou Chrome.

Figure 2. Boîte de dialogue de sélection d'application

Les liens Web sont des liens profonds qui utilisent les schémas HTTP et HTTPS. Sur Android 12 ou version ultérieure, cliquer sur un lien Web (qui n'est pas un Android App Link) ouvre toujours le contenu dans un navigateur Web. Sur les appareils exécutant des versions antérieures d'Android, si votre application ou d'autres applications installées sur l'appareil d'un utilisateur peuvent également gérer le lien Web, les utilisateurs peuvent ne pas accéder directement au navigateur. Au lieu de cela, une boîte de dialogue de sélection d'application semblable à celle de la figure 2 s'affiche.

L'extrait de code suivant présente un exemple de filtre de lien Web:

<intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />

    <data android:scheme="http" />
    <data android:host="myownpersonaldomain.com" />
</intent-filter>

Android App Links, disponible sur Android 6.0 (niveau d'API 23) ou version ultérieure, est des liens Web qui utilisent les schémas HTTP et HTTPS, et contiennent l'attribut autoVerify. Cet attribut permet à votre application de se désigner comme le gestionnaire par défaut d'un type de lien donné. Ainsi, lorsque l'utilisateur clique sur un lien vers une application Android, votre application s'ouvre immédiatement si elle est installée. La boîte de dialogue de sélection d'application ne s'affiche pas.

Si l'utilisateur ne souhaite pas que votre application soit le gestionnaire par défaut, il peut remplacer ce comportement dans les paramètres de l'application.

L'extrait de code suivant présente un exemple de filtre Android App Link:

<intent-filter android:autoVerify="true">
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />

    <!-- Do not include other schemes. -->
    <data android:scheme="http" />
    <data android:scheme="https" />

    <data android:host="myownpersonaldomain.com" />
</intent-filter>

Les liens vers les applications Android offrent les avantages suivants:

  • Sécurité et spécificité:les Android App Links utilisent des URL HTTP qui redirigent vers un domaine de site Web que vous possédez. Aucune autre application ne peut donc utiliser vos liens. L'une des conditions requises pour Android App Links est que vous confirmiez la propriété de votre domaine via l'une de nos méthodes d'association de sites Web.
  • Expérience utilisateur homogène:comme les Android App Links utilisent une seule URL HTTP pour le même contenu sur votre site Web et dans votre application, les utilisateurs qui n'ont pas installé l'application sont simplement redirigés vers votre site Web au lieu de l'application, sans qu'aucune erreur 404 ni aucune autre erreur ne s'affiche.
  • Compatibilité avec les applications Android instantanées:avec les applications Android instantanées, vos utilisateurs peuvent exécuter votre application Android sans l'installer. Pour ajouter la prise en charge des applications instantanées à votre application Android, configurez Android App Links et consultez la page g.co/InstantApps.
  • Engager les utilisateurs depuis la recherche Google:les utilisateurs ouvrent directement du contenu spécifique dans votre application en cliquant sur une URL Google dans un navigateur mobile, dans l'application de recherche Google, dans la recherche à l'écran sur Android ou via l'Assistant Google.

Pour créer des liens vers une application Android, procédez comme suit:

  1. Créer des liens profonds vers un contenu spécifique dans votre application:dans le fichier manifeste de votre application, créez des filtres d'intent pour les URI de votre site Web et configurez votre application pour qu'elle utilise les données des intents afin de rediriger les utilisateurs vers le contenu approprié dans votre application. Pour en savoir plus, consultez Créer des liens profonds vers le contenu de l'application.
  2. Ajoutez une validation pour vos liens profonds:configurez votre application pour demander la validation des liens vers une application. Ensuite, publiez un fichier JSON Digital Asset Links sur vos sites Web pour confirmer que vous en êtes le propriétaire via la Google Search Console. Pour en savoir plus, consultez Valider les liens vers une application.

En remplacement de la documentation indiquée ci-dessus, l'assistant Android App Links est un outil d'Android Studio qui vous guide à chaque étape de la création d'Android App Links.

Pour en savoir plus, consultez les ressources suivantes:

Gérer et valider Android App Links

Vous pouvez gérer et valider les liens profonds via la Play Console. Une fois qu'une application a été importée, le tableau de bord (sous "Développer" > "Liens profonds") affiche un aperçu des liens profonds et des erreurs de configuration.

Figure 3. Tableau de bord de la Play Console sur les liens profonds

Le tableau de bord propose les sections suivantes:

  • Points forts de la configuration globale des liens profonds
  • Tous les domaines déclarés dans le fichier manifeste
  • Liens Web regroupés par chemin
  • Liens avec schémas personnalisés
Chacune de ces sections affiche l'état du lien profond et une méthode permettant de le corriger en cas d'erreur.

Pour en savoir plus sur le tableau de bord, consultez ce guide.