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



Firebase Analytics跟踪许多默认事件:https://support.google.com/firebase/answer/6317485

他们中的一些人喜欢

  • first_open
  • app_remove
  • app_clear_data
  • 应用程序更新

是未发送到受影响包的BroadcastIntent。例如,ACTION_PACKAGE_FIRST_LAUNCH仅发送到安装程序包,而不发送到正在安装的程序包(源)。

Firebase Analytics是如何跟踪这些事件的?他们的方法是什么?

first_openapp_update基于存储在磁盘上的数据。每次启动Firebase Analytics时,它都会读取磁盘上的存储状态,并检查这是否是应用程序第一次运行。如果是这种情况,则会记录first_open事件并更新磁盘上的状态。CCD_ 4的工作原理类似。当Firebase Analytics启动时,检查应用程序上次运行时的版本。如果版本不同,它会记录app_update事件并更新磁盘上的状态。在使用和不使用Google Play Services的设备之间,磁盘上的状态保存位置不同。在提供服务的设备上,状态保存在Google Play Services数据中。在非Google Play设备上,数据与应用程序一起保存。

app_clear_dataapp_remove仅适用于带有Google Play Services的设备(大多数Android设备)。记录磁盘状态的Firebase服务运行在Google Play Services内部,因此当应用程序运行时,应用程序中会有代码告诉Google Play Services存储在应用程序数据中的共享首选项文件是否已删除。然后,Google Play Services检查该应用程序过去是否运行过,如果运行过,则假设应用程序数据已清除并记录app_clear_data

对于app_remove,当删除程序包时,会从程序包管理器进行广播。Google Play Services会收听此广播,当它接收到它时,会记录app_remove事件,并从设备中删除与此应用程序相关的所有数据。