警告: Google Play Instant はご利用いただけなくなります。2025 年 12 月より、Google Play を通じて Instant Apps を公開できなくなり、すべての Google Play 開発者サービス Instant API が機能しなくなります。ユーザーには、あらゆるメカニズムを使用して Google Play からインスタント アプリが提供されなくなります。
この変更は、デベロッパーからのフィードバックと、Google Play インスタントの導入以来、エコシステムの改善に継続的に投資してきたことに基づいて行われます。
引き続き最も効果的にユーザーを獲得するために、デベロッパーは、ディープリンクを使用して、ユーザーを通常のアプリやゲームに誘導し、必要に応じて特定のジャーニーや機能にリダイレクトすることをおすすめします。
アプリの成功を追跡することは、Instant 版かインストール版かにかかわらず、各デベロッパーにとって重要なことです。Fabric Answers、Localytics、Mixpanel などの分析ライブラリは Google Play Instant と互換性があります。
使用中の分析ソリューションがこの中にない場合、あるいは Google Play Instant に対応していないと判明した場合は、テレメトリー ソリューションとして Firebase 向け Google アナリティクスを使用することを検討してください。このページでは、Instant App プロジェクトで Firebase 向け Google アナリティクスをセットアップする方法について説明します。
Firebase 向け Google アナリティクスを Instant App プロジェクトに追加する
- Firebase 向け Google アナリティクスのスタートガイドに記載されている手順に沿って、Firebase SDK をアプリに追加します。
- 最新バージョンの google-services プラグインを使用します。
google-services.json
ファイルを各モジュールに配置します。各モジュールの
build.gradle
ファイルに次の行を追加します。Groovy
// android { ... } // dependencies { ... } plugins { id 'com.google.gms.google-services' }
Kotlin
// android { ... } // dependencies { ... } plugins { id("com.google.gms.google-services") }
Firebase 向け Google アナリティクスを Instant App プロジェクトに追加すると、インストール版アプリ プロジェクトと同じように Firebase 向け Google アナリティクスの API を使用できます。
Firebase 向け Google アナリティクスの使用方法について詳しくは、Firebase 向け Google アナリティクスのスタートガイドをご覧ください。
インストール済みアプリのデータと Instant App のデータの区別
インストール済みのアプリと Instant App がパッケージ名を共有しているため、それぞれから収集されたイベントとデータを区別する必要があります。アナリティクスで Instant App とインストール済みのアプリを区別するには、app_type
ユーザー プロパティに、それぞれ「instant」、「installed」という値を設定します。
次のコード スニペットは、アナリティクス インスタンスを取得してユーザー プロパティを設定するアクティビティを示しています。このコードでは、PackageManagerCompat.isInstantApp()
を onCreate(android.os.Bundle)
メソッドで使用して、アプリのコンテキストを特定します。
Kotlin
val STATUS_INSTALLED = "installed" val STATUS_INSTANT = "instant" val ANALYTICS_USER_PROP = "app_type" private lateinit var firebaseAnalytics: FirebaseAnalytics protected fun onCreate(savedInstanceState: Bundle?) { ... firebaseAnalytics = FirebaseAnalytics.getInstance(this) // Determine the current app context, either installed or instant, then // set the corresponding user property for Google Analytics. if (InstantApps.getPackageManagerCompat(this).isInstantApp()) { firebaseAnalytics.setUserProperty(ANALYTICS_USER_PROP, STATUS_INSTANT) } else { firebaseAnalytics.setUserProperty(ANALYTICS_USER_PROP, STATUS_INSTALLED) } }
Java
final String STATUS_INSTALLED = "installed"; final String STATUS_INSTANT = "instant"; final String ANALYTICS_USER_PROP = "app_type"; private FirebaseAnalytics firebaseAnalytics; @Override protected void onCreate(Bundle savedInstanceState) { ... firebaseAnalytics = FirebaseAnalytics.getInstance(this); // Determine the current app context, either installed or instant, then // set the corresponding user property for Google Analytics. if (InstantApps.getPackageManagerCompat(this).isInstantApp()) { firebaseAnalytics.setUserProperty(ANALYTICS_USER_PROP, STATUS_INSTANT); } else { firebaseAnalytics.setUserProperty(ANALYTICS_USER_PROP, STATUS_INSTALLED); } }
app_type
ユーザー プロパティを設定したら、アナリティクス コンソールの [イベント] タブでイベントを選択し、app_type
の値でイベントをフィルタできます。結果のデータ投影から、Instant App またはインストール済みのアプリで指定されたイベントの数が得られます。
Firebase 向け Google アナリティクスでのイベントのログと表示の詳細については、イベントをロギングするをご覧ください。
アナリティクス イベントの解釈
アナリティクスを使用すると、Instant App にとって価値のあるさまざまな指標を追跡できます。次の表は、アナリティクスの対応するイベント名やプロパティなど、Instant App に関連する指標を説明しています。
名前 | アナリティクスの値 | 定義 |
---|---|---|
訪問数 | session_start |
セッションの開始。このイベントは自動的に追跡されます。 |
物理的な購入 |
Firebase.Event.ECOMMERCE_PURCHASE
|
物理的な購入。このイベントはコードで明示的に追跡する必要があります。 |
デジタル コンテンツの購入 | in_app_purchase |
アプリ内デジタル購入。このイベントは自動的に追跡されます。 |
アプリ滞在時間 | user_engagement |
アプリがフォアグラウンドにあった時間。このイベントは自動的に追跡されます。 |
Instant App のコンテキスト | app_type |
Instant またはインストール済みのコンテキストで実行中のアプリから発生したイベント。このイベントはコードで明示的に追跡する必要があります。上記のインストール済みアプリのデータと Instant App のデータの区別をご覧ください。 |
リピート訪問 | session_start.count 、app_type |
2 回以上アクセスしたユーザーのオーディエンス。app_type イベントは明示的に追跡する必要があります。session_start が追跡されます。上記のインストール済みアプリのデータと Instant App のデータの区別をご覧ください。 |
アナリティクスで収集できるイベントの定数について詳しくは、FirebaseAnalytics.Event をご覧ください。