2015-09-25 61 views
0

我有Android服務,在的onCreate方法如何關閉Android手機睡眠和喚醒後添加系統重疊視圖的Android服務?

WindowManager.addView(mOverlayView, mLayoutParams); 

增加了一個系統的覆蓋圖(TYPE_SYSTEM_ALERT),並在使用

WindowManager.removeView(mOverlayView); 

當視圖是的onDestroy方法刪除它雙擊,通過使用關閉服務將其從屏幕上移除

stopSelf(); 

疊加視圖使用

android:keepScreenOn="true" 

現在保持在屏幕上,當我按下電源按鈕,把手機睡覺,然後再按一下喚醒它,在解鎖之後,覆蓋觀點依然是打開並在屏幕上。

當按下電源按鈕並且手機進入睡眠狀態時/之後,如何使服務自行停止?我不希望覆蓋視圖在喚醒和解鎖手機後在屏幕上可見。

回答

0

觀看ACTION_POWER_OFF和/或ACTION_POWER_ON廣播。請注意,AFAIK您只能通過registerReceiver()註冊您的服務,而不是通過您的清單。由於您的服務已經運行,這不應該是一個問題。當您收到廣播時,請停止該服務。