2016-06-29 2 views
0

Есть ли способ восстановить время, когда устройство заблокировано? Например, пользователь заблокировал свое устройство и заблокировал его на 59 минут. Затем мое приложение проверяет время и разблокирует его.Android заблокирован на время <?>

ответ

1

Я не знаю прямого метода. Однако вы должны иметь возможность прослушивать ACTION_SCREEN_ON и OFF события трансляции и рассчитывать прошедшее время.

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(); 

Вы также можете найти несколько переполнение стека дискуссий вокруг разблокировки, как:

+0

OP просит затраченного времени, а не текущее время. – muratgu

+0

Это может быть сделано разницей, когда устройство времени было заблокировано. Что задает @ramzixp, так это то, как получить время, когда устройство заблокировано. –

Смежные вопросы