Se você usa uma versão da API App Indexing do Firebase anterior à 10.0.0 e quer mudar para a mais recente, siga estas etapas.
Antes de começar, certifique-se de que adicionou o Firebase ao seu aplicativo.
Atualizar a biblioteca da Indexação de apps
Vá até o script build.gradle do seu aplicativo e adicione esta dependência:
dependencies { ... implementation 'com.google.firebase:firebase-appindexing:19.2.0' ... }
Atualizar as importações na sua atividade
// Beforeimport 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;
Remover chamadas ao cliente da API do Google
public class ViewMessageActivity extends Activity { ... // Delete thisprivate GoogleApiClient mClient;... @Override protected void onCreate(Bundle savedInstanceState) { ... // Delete thismClient = new GoogleApiClient.Builder(this) .addApi(AppIndex.API) .build();... } }
Atualizar os construtores de ação do usuário
//Beforepublic 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); }
Atualizar as chamadas de ação do usuário
Antes de registrar ações em conteúdo no aplicativo usando a nova versão da API, verifique se você a adicionou ao índice no dispositivo. As chamadas para iniciar ou interromper — respectivamente, start() ou stop() — os registros precisam ser precedidas por uma chamada para adicionar o conteúdo ao índice primeiro, caso isso ainda não tenha sido feito.
//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. FirebaseAppIndex.getInstance().update(getIndexable()); FirebaseUserActions.getInstance().start(getAction()); } @Override protected void onStop() { FirebaseUserActions.getInstance().end(getAction()); super.onStop(); }