设备锁定时是否有任何方法可以检索时间?例如,用户锁定了他的设备并将其锁定了59分钟。然后我的应用程序检查时间并解锁它。
答案 0 :(得分:1)
我不知道直接的方法。但是,您应该能够收听ACTION_SCREEN_ON
和OFF
广播事件并计算已用时间。
答案 1 :(得分:0)
我不认为即使设备被锁定,Android也会阻止您占用当前时间。
您可以按照以下时间获取当前时间:
Calendar c = Calendar.getInstance();
int seconds = c.get(Calendar.SECOND);
然后您可以通过以下代码解锁屏幕:
PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK
| PowerManager.ACQUIRE_CAUSES_WAKEUP
| PowerManager.ON_AFTER_RELEASE, "INFO");
wl.acquire();
KeyguardManager km = (KeyguardManager) context.getSystemService(Context.KEYGUARD_SERVICE);
KeyguardLock kl = km.newKeyguardLock("name");
kl.disableKeyguard();
您还可以找到几个关于解锁的堆栈溢出讨论,如: