Android: agregar al menos una actividad con un filtro de intención ACTION-VIEW después de actualizar la versión 23 del SDK
Recibo la siguiente información sobre herramientas en AndroidManifest.xml :
La aplicación no es indexable por la Búsqueda de Google; considere agregar al menos una actividad con un relleno de intención ACTION-VIEW. Consulte la explicación del problema para obtener más detalles.
Agrega enlaces profundos para incluir su aplicación en el índice de Google, para obtener instalaciones y tráfico a su aplicación desde la Búsqueda de Google.
¿Alguien puede explicar por qué es así?
De la documentación oficial:
Para permitir que Google rastree el contenido de su aplicación y permita a los usuarios ingresar a su aplicación desde los resultados de búsqueda, debe agregar filtros de intención para las actividades relevantes en el manifiesto de su aplicación. Estos filtros de intención permiten enlaces profundos al contenido en cualquiera de sus actividades. Por ejemplo, el usuario puede hacer clic en un enlace profundo para ver una página dentro de una aplicación de compras que describe una oferta de producto que el usuario está buscando.
Al usar este enlace Habilitación de enlaces profundos para el contenido de la aplicación, verá cómo usarlo.
Y utilizando esta implementación de indexación de prueba de su aplicación, cómo probarla.
El siguiente fragmento XML muestra cómo puede especificar un filtro de intención en su manifiesto para enlaces profundos.
<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>
Para probar a través del Puente de depuración de Android
$ 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
Puede eliminar la advertencia agregando el siguiente código en el <intent-filter>
interior<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">
Puede eliminar la advertencia agregando xmlns:tools="http://schemas.android.com/tools"
y tools:ignore="GoogleAppIndexingWarning"
a la <manifest>
etiqueta.
Agregar este filtro de intención a una de las actividades declaradas en el manifiesto de la aplicación solucionó este problema.
<activity
android:name=".MyActivity"
android:screenOrientation="portrait"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
</intent-filter>
</activity>
Esta solución solo funciona si desea ignorar esta advertencia.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:ignore="GoogleAppIndexingWarning"
package="com.example.saloononlinesolution">