首页 > 解决方案 > 如何在android studio中获取设备的屏幕唤醒时间?

问题描述

我知道 UsageStats 但它只有应用程序的统计信息。如何获取每天、每周、每月、每年在设备上花费的总时间?

标签: androidandroid-studiousage-statistics

解决方案


我们找不到屏幕唤醒时间,但是我们可以运行一个无限循环的前台服务,当屏幕打开时,计数器的值每秒递增一次。

将以下代码放入服务中。

PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);

Handler handler= new Handler(); 
Runnable myRunnable = new Runnable() {
public void run() { 
if( powerManager.isScreenOn()){
counter++;
 }
 } 
}; 
handler.postDelayed(myRunnable,1000);

计数器以秒为单位显示时间。


推荐阅读