安全问题: 我不知道现在是怎么回事了,但这个问题的读者想出了想法,对这个问题的解决方案是一个安全威胁。 所以,请记住,我感兴趣的是测量的用户时间/活动的所有数据。 就这样。 什么用户做了-我不感兴趣了!
我需要的是非常简单的概念,但我不能找到一个解决方案。 我想运行一个进程(在后台),并有一个监听到用户交互。
因此,用户触摸屏 - >我的方法被触发。
用户解锁手机 - >我的方法被触发。
物理键盘上的用户类型 - >被触发我的方法。
因此,在短期我的方法不会被触发时,手机仍然处于在桌子上:-)请注意,互动是整个手机,而不是与我的应用程序,我不感兴趣用户键入的字母“K”,我甚至不感兴趣用户键入的东西,我才不管是用手机在某些方面的用户。
顺便说一句。 当用户行走听音乐(手机在口袋里)的状态 - 它不是互动。
我所寻找的是一个触发-像INTERACTION_DETECTED
,或(相反)的回调方法被设置像reportInactiveUser(10*1000)
如果用户不活跃,持续10秒它会被调用。
问题如何检测用户交互?
用途:用于测量手动使用手机的时间。
(缺乏)PROGRESS
我发现BatteryStatsImpl
可容纳我需要的数据。 它的实例是保持BatteryStatsService
,然而这并没有让任何访问权限,只IBatteryStats
这又只有一个有趣的方法- getStatistics
和输出不包括用户活动计数器(或他们都是零;我设置所有权限)。 所以,到目前为止 - 运气不好。
所有来电都被反射进行,因为这些类不可反正;-)。