Falta el soporte para la indexación de aplicaciones de Firebase (Android lint)

149

Recibo esta advertencia de pelusa al analizar mi código (Analizar> Inspeccionar códigos) en los estudios de Android.

La Búsqueda de Google no puede indexar la aplicación; considere agregar al menos una Actividad con un relleno de intención ACTION-VIEW. Vea la explicación del problema para más detalles.

¿Qué es esta advertencia y cómo puedo hacer que mi aplicación sea indexable mediante la Búsqueda de Google? suena importante para SEO, pero no puedo encontrar ningún detalle en Google.

También me gusta saber cómo acceder a la "Explicación del problema" desde el estudio de Android.

ingrese la descripción de la imagen aquí

Editar:

"La búsqueda de Google no puede indexar la aplicación" era la advertencia anterior. La nueva advertencia es "Falta soporte para la indexación de aplicaciones Firebase"

Angel Koh
fuente

Respuestas:

106

Descubrí cómo acceder a la "Explicación del problema". Necesito pasar el cursor sobre un error de inspección para mostrar la explicación completa del problema en línea (y presionar Ctrl-F1)

ingrese la descripción de la imagen aquí

¡así que la palabra clave que me falta es "enlaces profundos"!

La siguiente es la página de desarrollador de Android para hacer enlaces profundos "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"

http://developer.android.com/training/app-indexing/deep-linking.html

El siguiente es el fragmento de código sobre cómo hacer un enlace profundo. Sin embargo, no tengo idea de cómo Google puede rastrear mi aplicación simplemente agregándola ...

<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>

También hay una nota que dice

Note: Intent filters may only contain a single data element for a URI pattern. 
Create separate intent filters to capture additional URI patterns.
Angel Koh
fuente
2
Esto es para configurar enlaces profundos en su aplicación. Ejemplo: si un usuario busca en el dispositivo móvil una palabra clave específica que coincida con su sitio web / aplicación, puede vincularse directamente a su intención, lo que puede abrir la actividad / vista específica dentro de su aplicación. En resumen, la búsqueda permitirá directamente a los usuarios abrir aplicaciones internas.
Nagesh Susarla
@NageshSusarla, entonces, en el ejemplo anterior, ¿la palabra clave es "gizmos"?
Angel Koh
66
developers.google.com/app-indexing/android/app tiene información detallada al respecto. En este caso, cualquier palabra clave que aparezca en su página como ejemplo.com/gizmos en los resultados de búsqueda apuntará a esta intención.
Nagesh Susarla
3
No lo entiendo, ¿qué se supone que debo poner?
busuu
66
¿Tienes que tener tu propio sitio web para agregar?
Azurespot
28

En realidad, hay 2 formas de lidiar con el problema 'la aplicación no es indexable por Google'.

  1. Agregue un enlace profundo a la aplicación como se describe anteriormente.
  2. Simplemente desactive la advertencia de pelusa. A veces, la aplicación no se publica en Google Play, por lo que no se necesitarán enlaces profundos, etc.

    android {
    defaultConfig {
    // something
    }
    lintOptions {
    disable 'GoogleAppIndexingWarning'
    baseline file("lint-baseline.xml")
    }
    }
    
zkvarz
fuente
19

Puede eliminar la advertencia agregando el siguiente código en el <intent-filter>interior<activity>

        <action android:name="android.intent.action.VIEW" />
Bibin Johny
fuente
7

Si desea desactivar esta advertencia hasta que se complete el desarrollo de su aplicación o si no tiene ninguna URL web para agregar, agregue esta línea en su AndroidManifest.xmlarchivo.

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:tools="http://schemas.android.com/tools"
          package="com.example.yourappname">

   <application
       ...
       ...
       tools:ignore="GoogleAppIndexingWarning">

          ....

   </application>

</manifest>
Shashanth
fuente