本文にスキップ
weballin

weballin DIGIWIKI

アプリインスタンスID

アプリインスタンスIDは、Firebase SDKがモバイルアプリのインストール単位で生成する一意の識別子で、アプリ内のクライアントIDと同じ役割を果たします。Measurement Protocolを使用してアプリイベントをサーバーから送信するときにapp_instance_idパラメータとして使用します。

weballin

アプリインスタンスIDは、Firebase Analytics(GA4アプリストリームのベース)でアプリのインストールを識別する基本単位です。 Webで_ga CookieがクライアントIDを保存するように、アプリではFirebase SDKがデバイスにアプリインスタンスIDを保存します。

アプリインスタンスIDは、アプリ削除後の再インストール、端末の初期化、端末の変更時に新たに生成されます。したがって、WebのクライアントIDと同様に、同じユーザーを長期間追跡することに制限があります。この制限は、ユーザーID(User ID)をアプリでも設定して補完する。

Measurement Protocolでアプリイベントをサーバーから送信するときは、client_idの代わりにapp_instance_idを渡すことで、該当するアプリインスタンスのデータに関連付けます。 利用するプラットフォームのFirebase Analytics SDKで、現在のアプリインスタンスIDを取得します。

要点

  • Firebase SDKがアプリのインストール時に自動的に生成する一意の識別子で、アプリ内のクライアントIDの役割です。
  • アプリを削除した後、再インストールまたは端末の初期化時に新しいIDが発行されます。
  • Measurement Protocolでアプリイベントを送信するときは、app_instance_idパラメータに渡します。
  • Firebase SDKのFirebaseAnalytics.getAppInstanceId()メソッドで現在の値を照会します。
  • ユーザーIDと一緒に使用すると、アプリを再インストールした後でもユーザーを接続できます。

参考資料

よくある質問

アプリインスタンスIDはどのように確認できますか?

Android では FirebaseAnalytics.getInstance(context).getAppInstanceId(), iOS では Analytics.appInstanceID() メソッドを呼び出して取得します。戻り値や非同期処理の方法は各SDKの仕様を確認してください。 各SDKの対応する取得APIを確認してください。

アプリインスタンスIDとFirebaseインストールID(FID)は違いますか?

別の概念です。アプリインスタンスIDはAnalytics用の識別子であり、FirebaseインストールID(FID)はFirebaseサービス全体(FCM、Remote Configなど)でデバイスを識別するために使用する別の識別子です。