Android 監聽屏幕喚醒和關閉的廣播
阿新 • • 發佈:2018-08-20
n) 應用 dma 今天 new and androidm receive err
今天希望應用程序的服務運行時,可以監聽到屏幕的喚醒。繼續百度學習法,連同監聽閉幕關閉也一同學習了。
此種情況需要動態註冊系統廣播。在AndroidManifest.xml中靜態註冊的實際運行中無效。
private ScreenStatusReceiver mScreenStatusReceiver;
在需要的地方調用如下函數:
private void registSreenStatusReceiver() { mScreenStatusReceiver = new ScreenStatusReceiver(); IntentFilter screenStatusIF= new IntentFilter(); screenStatusIF.addAction(Intent.ACTION_SCREEN_ON); screenStatusIF.addAction(Intent.ACTION_SCREEN_OFF); registerReceiver(mScreenStatusReceiver, screenStatusIF); }
使用結束後,註銷:
unregisterReceiver(mScreenStatusReceiver);
ScreenStatusReceiver類:
class ScreenStatusReceiver extends BroadcastReceiver { String SCREEN_ON = "android.intent.action.SCREEN_ON"; String SCREEN_OFF = "android.intent.action.SCREEN_OFF"; @Override public void onReceive(Context context, Intent intent) { if (SCREEN_ON.equals(intent.getAction())) { Log.w("ppp","ppp-屏幕亮了"); }else if (SCREEN_OFF.equals(intent.getAction())) {
Log.w("ppp","ppp-屏幕暗了"); } } }
Android 監聽屏幕喚醒和關閉的廣播