2012-03-09 59 views
18

我有一个服务正在运行,以便我的应用程序每小时发送一次通知。这工作正常,因为我的通知每小时都听到声音和振动,但我还希望我的通知也能点亮我的屏幕。但是当通知出现时,我无法点亮我的屏幕。收到通知时点亮屏幕android

回答

35
PowerManager pm = (PowerManager)context.getSystemService(Context.POWER_SERVICE); 
boolean isScreenOn = pm.isScreenOn(); 
Log.e("screen on.................................", ""+isScreenOn); 
if(isScreenOn==false) 
{ 
    WakeLock wl = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK |PowerManager.ACQUIRE_CAUSES_WAKEUP |PowerManager.ON_AFTER_RELEASE,"MyLock"); 
    wl.acquire(10000); 
    WakeLock wl_cpu = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,"MyCpuLock"); 

    wl_cpu.acquire(10000); 
} 
+2

你不觉得我们需要释放锁吗? – Pirate 2012-03-09 14:34:02

+1

我明白了,因为它会自动发布。感谢您的回答... – Pirate 2012-03-09 14:57:13

+0

FULL_WAKE_LOCK现已弃用。有什么用呢? – orium 2014-10-21 11:49:25