2012-05-30 2 views
0

У меня есть приложение, которое устанавливает повторяющийся сигнал тревоги, и я хотел бы, чтобы он разбудил устройство, разблокировал блокировку клавиатуры, что-то сделал, а затем отпустил блокировку, чтобы снова повторить следующий сигнал тревоги. Кажется, что работает, но телефон только просыпается и разблокирует блокировку клавиатуры при первом срабатывании будильника, каждый раз, когда сигнал тревоги повторяется, после этого он не включает экран и не разблокирует, хотя звуковой файл срабатывает каждый раз. Что мне не хватает?Устройство пробуждения от BroadcastReceiver

public class RepeatingAlarmWake extends BroadcastReceiver 
{ 
    @Override 
    public void onReceive(Context context, Intent intent) 
    { 
     PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE); 
     PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, "Wake up!");   
     wl.acquire(); 
     KeyguardManager keyguardManager = (KeyguardManager) context.getSystemService(Context.KEYGUARD_SERVICE); 
     KeyguardLock keyguardLock = keyguardManager.newKeyguardLock("TAG"); 
     keyguardLock.disableKeyguard(); 

     PlayAudio2.INSTANCE.PlayAudio(); 
     wl.release(); 
    } 
} 

ответ

0

где код, на котором вы фактически устанавливаете вращающийся сигнал тревоги? в любом случае вы должны использовать RTC_WAKEUP, чтобы устройство проснулось, когда будильник погас.

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