如何跟踪应用程序在Android中的使用情况?如何检测活动何时启动?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (51)

我需要跟踪App中的应用使用情况,比如AppUsage的应用使用情况。我计划做的是记录应用程序启动时的开始时间,然后记录应用程序暂停或停止时的结束时间。在LogCat中,我可以看到活动开始的日志。我查看了可用的系统广播,我不确定是否有活动开始时广播的内容。基本上,我如何检测活动何时启动?

提问于
用户回答回答于

我们现在可以使用作为Android 5.0 API的一部分发布的新android.app.usage API访问Android设备上的应用使用历史记录。系统根据每个应用收集使用情况数据,汇总每天,每周,每月的数据,和每年的时间间隔

对于每个应用程序,系统记录下列数据:

使用应用程序的最后时间该应用程序在该时间间隔(按天,周,月或年)前台的总时间时间戳记捕获组件(由程序包和活动名称标识)移至一天中的前景或背景当设备配置更改时捕获时间戳(例如,由于旋转导致设备方向改变时)。

用户回答回答于

Android SDK中没有“应用程序启动的开始时间”,也没有“应用程序暂停或停止的结束时间”。

你所引用的应用程序可能会浪费大量的CPU时间,RAM和电池寿命,持续轮询ActivityManager

请记住,如果你计划让用户以外的任何人访问它,那么你计划跟踪的内容会与发生CarrierIQ的类型的隐私侵犯相冲突,并造成相当大的麻烦。

扫码关注云+社区