跟踪应用(无论是免安装应用还是安装版应用)的成效对每个开发者来说都非常重要。多个分析库与 Google Play 免安装体验兼容,其中包括 Fabric Answers、Localytics 和 Mixpanel。
如果您当前的分析解决方案未列出,或您发现它不支持 Google Play 免安装体验,请考虑将 Google Analytics for Firebase 用作遥测解决方案。本页面介绍如何在免安装应用项目中设置 Google Analytics for Firebase。
将 Google Analytics for Firebase 添加到免安装应用项目中
- 按照 Google Analytics for Firebase 入门指南中的说明将 Firebase SDK 添加到您的应用。
- 使用最新版本的 Google 服务插件。
- 在每个模块中放置
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") }
将 Google Analytics for Firebase 添加到免安装应用项目后,您就可以像在安装式应用项目中一样使用 Google Analytics for Firebase API。
如需详细了解如何使用 Google Analytics for Firebase API,请参阅 Google Analytics for Firebase 的使用入门文档。
区分安装式和免安装应用数据
由于您的安装式应用和免安装应用共用同一个软件包名称,您可能需要区分从这两种应用中收集的事件和数据。如需在 Analytics 中区分免安装应用和安装式应用,请设置 app_type
用户属性,将免安装应用的值设为“instant”,安装式应用的值设为“ installed”。
以下代码段展示了一个 activity,它会获取 Analytics 实例,然后设置用户属性。请注意,该代码使用 onCreate(android.os.Bundle)
方法中的 PackageManagerCompat.isInstantApp()
来确定应用的上下文。
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
用户属性后,您可以在 Analytics 控制台的事件标签页中选择一个事件,然后按 app_type
值过滤事件。生成的数据投影将显示免安装应用或安装式应用中指定事件的计数。
如需详细了解如何在 Google Analytics for Firebase 中记录和查看事件,请参阅记录事件。
解读 Analytics 事件
借助 Analytics,您可以跟踪对免安装应用有价值的各种指标。下表介绍了免安装应用的相关指标,包括 Analytics 中的相应事件名称或属性。
名称 | Analytics 值 | 定义 |
---|---|---|
访问次数 | session_start |
会话已开始。系统会自动跟踪此事件。 |
实体店购买 |
Firebase.Event.ECOMMERCE_PURCHASE
|
实体店购买。您必须在代码中明确跟踪此事件。 |
数字商品购买 | in_app_purchase |
数字应用内购买。系统会自动跟踪此事件。 |
在应用内花费的时间 | user_engagement |
应用处于前台的时长。 系统会自动跟踪此事件。 |
免安装应用环境 | app_type |
从在免安装或安装式环境中运行的应用引发的事件。您必须在代码中明确跟踪此事件。请参阅上文中的区分安装式应用和免安装应用数据。 |
回访者数量 | “session_start.count ”和“app_type ” |
至少访问两次的用户的数量。您必须明确跟踪 app_type 事件;系统会为您跟踪 session_start 。请参阅上文中的区分安装式应用和免安装应用数据。 |
如需详细了解可在 Analytics 中收集的事件的常量,请参阅 FirebaseAnalytics.Event。