最新の API に移行する

現在使用しているバージョン 10.0.0 より前の Firebase App Indexing API を最新バージョンにアップグレードするには、次の手順に従います。

手順を開始する前に、アプリに Firebase が追加されていることを確認してください。

App Indexing ライブラリを更新する

アプリの build.gradle スクリプトを開いて、次の依存関係を追加します。

dependencies {
  ...
  compile 'com.google.firebase:firebase-appindexing:11.2.2'
  ...
}
      

アクティビティ内のインポートを更新する

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

Google API クライアントの呼び出しを削除する

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();
    …
   }
 }
 

ユーザー アクション ビルダを更新する

      //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);
     }
     

ユーザー アクション呼び出しを更新する

新しいバージョンの API を使用してアプリのコンテンツに対するアクションを記録する前に、端末上のインデックスにコンテンツが追加されていることを確認してください。コンテンツがインデックスに追加されていない場合は、ロギングの start() または stop() を呼び出す前に、そのコンテンツをインデックスに追加するための呼び出しを行う必要があります。

//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();
}

フィードバックを送信...

ご不明な点がありましたら、Google のサポートページをご覧ください。