warning studio not links link indexable google app android google-api-client android-app-indexing

android - studio - google app indexing warning



¿Cuál es el nuevo código generado "Este se generó automáticamente para implementar la API de indexación de aplicaciones"? (3)

Fondo

Acabo de crear un nuevo POC hoy (sobre transiciones de actividad, pero este no es el tema), y he notado que se está escribiendo una nueva línea en el método "onCreate" de la actividad principal:

// ATTENTION: This was auto-generated to implement the App Indexing API. // See https://g.co/AppIndexing/AndroidStudio for more information. mClient = new GoogleApiClient.Builder(this).addApi(AppIndex.API).build();

Y más:

@Override public void onStart() { super.onStart(); // ATTENTION: This was auto-generated to implement the App Indexing API. // See https://g.co/AppIndexing/AndroidStudio for more information. mClient.connect(); Action viewAction = Action.newAction( Action.TYPE_VIEW, // TODO: choose an action type. "SinglePhotoViewer Page", // TODO: Define a title for the content shown. // TODO: If you have web page content that matches this app activity''s content, // make sure this auto-generated web page URL is correct. // Otherwise, set the URL to null. Uri.parse("http://host/path"), // TODO: Make sure this auto-generated app deep link URI is correct. Uri.parse("android-app://com.example.user.transitionstest/http/host/path") ); AppIndex.AppIndexApi.start(mClient, viewAction); } @Override public void onStop() { super.onStop(); // ATTENTION: This was auto-generated to implement the App Indexing API. // See https://g.co/AppIndexing/AndroidStudio for more information. Action viewAction = Action.newAction( Action.TYPE_VIEW, // TODO: choose an action type. "SinglePhotoViewer Page", // TODO: Define a title for the content shown. // TODO: If you have web page content that matches this app activity''s content, // make sure this auto-generated web page URL is correct. // Otherwise, set the URL to null. Uri.parse("http://host/path"), // TODO: Make sure this auto-generated app deep link URI is correct. Uri.parse("android-app://com.example.user.transitionstest/http/host/path") ); AppIndex.AppIndexApi.end(mClient, viewAction); mClient.disconnect(); }

y esto fue agregado al manifiesto:

<!-- ATTENTION: This was auto-generated to add Google Play services to your project for App Indexing. See https://g.co/AppIndexing/AndroidStudio for more information. --> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/>

El problema

Mirando el sitio web que fue escrito, todavía no entiendo lo que es.

Supongo que this es como se usa, pero no entiendo cómo funciona todo.

Además, lo extraño es que cualquier otro proyecto nuevo que cree no muestra esta nueva línea de código

Las preguntas

  1. ¿Que es esto? ¿Qué hace?
  2. ¿Que debo hacer con eso?
  3. ¿Hay alguna personalización para ello? ¿Alguna recomendación?
  4. ¿En qué casos se genera esta línea de código? No noté cómo y cuándo se crea ...

Según mi opinión, lo que he leído y visto en el sitio web es que solo se usa para aplicaciones que pueden realizar algún tipo de búsqueda, de modo que Google pueda mostrar al usuario las consultas anteriores y resultados más rápidos.


En caso de que esto ayude, puedes deshabilitar esa opción yendo a:

Settings > Intentions > Android > Insert App Indexing API code

y desmarcarlo.


Usted tiene razón: Android Studio crea ese código automáticamente para ayudarlo a implementar la API de indexación de aplicaciones.

Sin embargo, no se crea simplemente agregando una nueva actividad a su aplicación. Necesitará pedir explícitamente a Android Studio que cree este código. A continuación, deberá actualizarlo con los detalles de su actividad: Tipo de acción, Título, Enlace profundo, Página web correspondiente (si existe).

Para que este código se genere para usted, puede usar la lista de intención emergente de Alt + Enter , seleccione " Insertar código de API de indexación de aplicaciones ":

O puede usar la lista de generación de códigos emergentes mediante Alt + Insertar , seleccione " Código de API de indexación de aplicaciones ":

Aquí está la documentación relevante de los desarrolladores de Google:

https://developers.google.com/app-indexing/android/test#link-creation

Realmente hay cuatro piezas para esto que necesitas ajustar:

// What type of action is this? (TYPE_VIEW, TYPE_LISTEN, TYPE_WATCH, etc...) Action.TYPE_VIEW // Title of your page, just like the web "SinglePhotoViewer Page" // The web url of corresponding content, if exists, otherwise leave blank, "" Uri.parse("http://host/path") // Your deep link starting with "android-app://" Uri.parse("android-app://com.example.user.transitionstest/http/host/path")

Como práctica recomendada, debe elegir un título que describa con mayor precisión el contenido en esa ubicación de enlace profundo en su aplicación. Al igual que lo haría en las etiquetas <TITLE></TITLE> en el encabezado de una página web HTML.

Una vez implementado, cualquier actividad que vea su usuario final informará este vínculo profundo al sistema operativo Android. Luego estará disponible en los resultados de Sugerencia de autocompletar cuando un usuario escriba una consulta en el cuadro de búsqueda rápida de Google. El icono de su aplicación y el título que ha proporcionado se mostrarán en los resultados de Sugerencias si la consulta de los usuarios coincide con su título por palabra clave.

Este es un ejemplo de cómo se vería, desde el punto de vista de los usuarios finales, en la aplicación Live Nation, asumiendo que había visitado previamente las dos páginas que se muestran en los resultados de Sugerencias a la izquierda:

Además, al implementar la API de indexación de aplicaciones, obtendrás un aumento de ranking en los resultados de búsqueda como se indica en el enlace que proporcionaste en tu pregunta original:

Esto permite realizar autocompletaciones de consulta para los usuarios de su aplicación, así como resultados de búsqueda más ricos, calidad de búsqueda mejorada y señales de clasificación mejoradas.

Finalmente, puede interesarle este laboratorio de código como un recurso adicional:

https://codelabs.developers.google.com/codelabs/app-indexing/#0


puede deshabilitar esa opción desmarcando la opción en:

Settings > Editor > Intentions > Android > Insert App Indexing API code

Para encontrarlo, escriba "código api" en el cuadro de búsqueda en la ventana Archivo> Configuración. Está ahí en mi instalación de Android Studio 2.2.3