首页 > 解决方案 > Android 应用程序使用情况 (usagestats) 不显示覆盖绘制应用程序的条目,如 Facebook Messagener 聊天头

问题描述

我正在尝试在 android 中捕获单个应用程序事件,以了解每个应用程序中的时间量。大多数情况下,它适用于常规应用程序,但对于屏幕被绘制为覆盖的应用程序(如 facebook 聊天头),使用统计信息中不会显示任何条目。# #4636# # -> 使用统计信息也是如此。

如果有任何方法可以获取覆盖应用程序的详细信息,请告诉我。

提前致谢!!!

标签: androidoverlayusage-statistics

解决方案


实际上有一种方法可以检测用户正在与不在前台的活动进行交互。您需要使用使用事件而不是使用统计。您需要与使用情况统计信息相同的权限。但是使用:

UsageStatsManager usm = (UsageStatsManager) this.getSystemService("usagestats")
UsageEvents usageEvent = usm.queryEvents(startTime, System.currentTimeMills());

然后通过使用这样的循环来检索使用事件:

while(usageEvents.hasNextEvent()){
UsageEvent.Event e = new UsageEvent.Event()
usageEvents.getNextEvent(e)
//key bit of code:
e.getEventType()
}

然后,如果您检索值为 7 的结果,则表示用户正在与应用程序交互,但它不在前台。


推荐阅读