Je reçois l'info-bulle suivante dans AndroidManifest.xml :
L'application n'est pas indexable par Google Search; Pensez à ajouter au moins une activité avec un remplisseur d'intention ACTION-VIEW. Voir l'explication du problème pour plus de détails.
Ajoute des liens profonds pour insérer votre application dans l'index Google, pour obtenir des installations et du trafic vers votre application à partir de Google Search.
Quelqu'un peut-il expliquer pourquoi il en est ainsi?
De la documentation officielle:
Pour permettre à Google d'analyser le contenu de votre application et aux utilisateurs de la saisir à partir des résultats de recherche, vous devez ajouter des filtres d'intention pour les activités pertinentes dans le manifeste de votre application. Ces filtres d'intention permettent de créer des liens profonds avec le contenu de n'importe laquelle de vos activités. Par exemple, l'utilisateur peut cliquer sur un lien profond pour afficher une page au sein d'une application d'achat décrivant une offre de produit que l'utilisateur recherche.
En utilisant ce lien Activation des liens profonds pour le contenu de l'application , vous verrez comment l'utiliser.
Et en utilisant ceci test de votre implémentation d'indexation d'application comment le tester.
L'extrait de code XML suivant montre comment vous pouvez spécifier un filtre d'intention dans votre manifeste pour la liaison approfondie.
<activity
Android:name="com.example.Android.GizmosActivity"
Android:label="@string/title_gizmos" >
<intent-filter Android:label="@string/filter_title_viewgizmos">
<action Android:name="Android.intent.action.VIEW" />
<category Android:name="Android.intent.category.DEFAULT" />
<category Android:name="Android.intent.category.BROWSABLE" />
<!-- Accepts URIs that begin with "http://www.example.com/gizmos” -->
<data Android:scheme="http"
Android:Host="www.example.com"
Android:pathPrefix="/gizmos" />
<!-- note that the leading "/" is required for pathPrefix-->
<!-- Accepts URIs that begin with "example://gizmos” -->
<data Android:scheme="example"
Android:Host="gizmos" />
</intent-filter>
</activity>
Pour tester via Android Debug Bridge
$ adb Shell am start
-W -a Android.intent.action.VIEW
-d <URI> <PACKAGE>
$ adb Shell am start
-W -a Android.intent.action.VIEW
-d "example://gizmos" com.example.Android
Vous pouvez supprimer l'avertissement en ajoutant le code ci-dessous dans <intent-filter>
à l'intérieur de <activity>
<action Android:name="Android.intent.action.VIEW" />
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:tools="http://schemas.Android.com/tools"
package="com.example.app"
tools:ignore="GoogleAppIndexingWarning">
Vous pouvez supprimer l'avertissement en ajoutant xmlns:tools="http://schemas.Android.com/tools"
à la balise <manifest>
et tools:ignore="GoogleAppIndexingWarning"
à la balise <application>
.
L'ajout de ce filtre d'intention à l'une des activités déclarées dans le manifeste de l'application a résolu ce problème.
<activity
Android:name=".MyActivity"
Android:screenOrientation="portrait"
Android:label="@string/app_name">
<intent-filter>
<action Android:name="Android.intent.action.VIEW" />
</intent-filter>
</activity>