Firebase Analytics如何跟踪其自动事件?

3
Firebase Analytics跟踪一些默认事件:https://support.google.com/firebase/answer/6317485 其中一些事件如:
  • first_open
  • app_remove
  • app_clear_data
  • app_update
是BroadcastIntents,不会发送到受影响的包中。例如,ACTION_PACKAGE_FIRST_LAUNCH只会发送到安装程序包,而不会发送到被安装的包中(source)。
Firebase Analytics如何仍然能够跟踪这些事件?他们的方法是什么?
1个回答

5
first_openapp_update都是基于存储在磁盘上的数据。每次Firebase Analytics启动时,它会读取存储在磁盘上的状态并检查应用程序是否第一次运行。如果是这种情况,则记录first_open事件并更新磁盘上的状态。app_upgrade也是类似的。当Firebase Analytics启动时,它检查应用程序最后一次运行时的版本。如果版本不同,则记录app_update事件并更新磁盘上的状态。磁盘上的状态保存位置因设备而异,支持Google Play服务的设备状态保存在Google Play Services数据中,不支持Google Play服务的设备状态保存在应用程序中。 app_clear_dataapp_remove仅适用于支持Google Play服务(大多数Android设备)的设备。记录状态的Firebase服务在Google Play Services内部运行,因此当应用程序运行时,应用程序中会有代码告诉Google Play Services其共享偏好文件是否已被删除。然后,Google Play Services检查该应用程序是否曾经运行过,如果运行过,则假定应用程序数据已被清除并记录app_clear_data
对于app_remove,当包被卸载时,Package Manager将广播。Google Play Services侦听此广播,当收到广播时,记录app_remove事件并从设备中删除与该应用相关的所有数据。

谢谢!我接受这个答案,因为我猜想它应该是正确的 :) 没有验证的方法。 - jones
是否有一种方法可以关闭所有自动分析事件?例如“first_open”,“session_start”等等...我们有自己的系统,不希望增加额外的噪音。谢谢。 - Darko
你从哪里得到这些信息,他们如何测量app_clear_data?你的回答是愚蠢的。更容易的方法是监听系统事件,例如https://developer.android.com/reference/android/content/Intent#ACTION_PACKAGE_DATA_CLEARED - Gelldur

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接