Ir a la consola

Migra a la API más reciente

Si actualmente usas una versión de la API de Firebase App Indexing anterior a la 10.0.0 y deseas pasar a la versión más reciente, sigue estos pasos.

Antes de comenzar, asegúrate de haber agregado Firebase a la app.

Actualiza la biblioteca de indexación de aplicaciones

Ve a la secuencia de comandos build.gradle de la app y agrega la siguiente dependencia:

dependencies {
  ...
  implementation 'com.google.firebase:firebase-appindexing:17.1.0'
  ...
}
      

Actualiza las importaciones en tu actividad

      // Before
      import com.google.android.gms.appindexing.Action;
      import com.google.android.gms.appindexing.AppIndex;
      import com.google.android.gms.common.api.GoogleApiClient;

      // After
      import com.google.firebase.appindexing.Action;
      import com.google.firebase.appindexing.FirebaseUserActions;
      import com.google.firebase.appindexing.Indexable;
      import com.google.firebase.appindexing.builders.Actions;
      

Quita las llamadas al cliente de la API de Google

public class ViewMessageActivity extends Activity {
  ...
  // Delete this
  private GoogleApiClient mClient;
  ...

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    ...
    // Delete this
   mClient = new GoogleApiClient.Builder(this)
        .addApi(AppIndex.API)
        .build();
    ...
   }
 }
 

Actualiza los compiladores de acciones del usuario

      //Before
      public Action getAction() {
       Thing object = new Thing.Builder()
        .setName(mText)
        .setUrl(mUrl)
        .build();

      return new Action.Builder(Action.TYPE_VIEW)
        .setObject(object)
        .build();
     }
      

      // After
     public Action getAction() {
         return Actions.newView(mText, mUrl);
     }
     

Actualiza las llamadas a acciones del usuario

Antes de registrar acciones sobre el contenido de la app con la nueva versión de la API, asegúrate de haberla agregado al índice del dispositivo. Cualquier llamada a start() o stop() que afecte al registro debe seguir a una llamada para agregar el contenido al índice primero, si es que no lo agregaste antes.

//Before

@Override
protected void onStart() {
   super.onStart();
   mClient.connect();
   AppIndex.AppIndexApi.start(mClient, getAction());
}

@Override
protected void onStop() {
   AppIndex.AppIndexApi.end(mClient, getAction());
   mClient.disconnect();
   super.onStop();
}


// After

@Override
protected void onStart() {
   super.onStart();
   /* If you’re logging an action on an item that has already been added to the index,
   you don’t have to add the following update line. See
   https://firebase.google.com/docs/app-indexing/android/personal-content#update-the-index for
   adding content to the index */
   FirebaseAppIndex.getInstance().update(getIndexable());
   FirebaseUserActions.getInstance().start(getAction());
}

@Override
protected void onStop() {
   FirebaseUserActions.getInstance().end(getAction());
   super.onStop();
}