我想弄清楚如何檢測手機從黑屏模式中醒來併爲該事件編寫處理程序。那可能嗎?這似乎是廣播接收機應該處理的事情?還是有更好或更正確的方法?是否可以編寫一個Android廣播接收器來檢測手機何時醒來?
9
A
回答
3
如果您有它積極的,你可以捕捉這些事件
registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// do something
}
}, new IntentFilter(Intent.ACTION_SCREEN_ON));
然而,這依賴於擁有一個永遠正在運行的服務這是我最近學會了不鼓勵,因爲它是脆服務(操作系統喜歡關閉它們)並永久使用資源。
令人失望的是,它似乎不可能在清單中有一個接收器來攔截SCREEN_ON事件。
這又拿出了最近:
android.intent.action.SCREEN_ON doesn't work as a receiver intent filter
也
Android - how to receive broadcast intents ACTION_SCREEN_ON/OFF?
0
你是正確的廣播接收器。您可以收聽SCREEN_ON和SCREEN_OFF廣播事件。
3
您也可以擁有一個廣播接收器,捕獲用戶解鎖設備時的USER_PRESENT廣播意圖。自然,Honeycomb的某些版本並不尊重這一點,但對於Android的所有非腦死亡版本(2.x和4.x),它很好地工作。
+1
如果您從AndroidManifest.xml註冊,這也適用。 – bk138 2013-02-28 11:22:16
相關問題
- 1. 來電廣播接收器
- 2. 如何在廣播接收器的幫助下檢測來電?
- 3. Android手機關機時的廣播接收器
- 4. 使用廣播接收機來檢測撥出電話
- 5. 接收來自廣播接收器的廣播意圖錯誤
- 6. 如何禁用廣播接收器以停止接收來電?
- 7. 我們可以廣播一個對象來接收其他類
- 8. 如何檢測耳機按鈕雙擊HTC手機與廣播接收器?
- 9. 檢查是否有一個電話從廣播接收器
- 10. 如何在android中檢測電話廣播接收機
- 11. 廣播接收機android
- 12. 廣播接收機來檢查互聯網連接
- 13. 是否可以從廣播接收機啓動意圖?
- 14. 廣播接收器不檢測的KeyEvents
- 15. 廣播接收器未觸發來電
- 16. 服務和廣播接收器來檢查網絡的可用與否
- 17. 是否可以檢測Android手機是否有軌跡球?
- 18. Android編程廣播接收器
- 19. 定時器廣播接收器android
- 20. 廣播接收器從深度睡眠喚醒。 (就像,嘿設備剛剛醒來繼續廣播!)
- 21. 是否可以向接收器投射來自手機麥克風的輸入?
- 22. Android的 - 如何使用廣播接收器來讀取短信?
- 23. Android廣播接收器
- 24. Android MMS廣播接收器
- 25. Android廣播接收器
- 26. Android。廣播接收器
- 27. 來自廣播接收機的更新通知android
- 28. 是否有一個有序的廣播接收機列表?
- 29. 在Windows 10手機中接收廣播
- 30. 如何使用android廣播接收機
啊謝謝,這將檢測到屏幕上,並讓我妥善處理它的權利? 我在讀你的帖子,你不建議讓後臺服務運行並等待電話醒來。爲什麼?有什麼缺點,有什麼方法嗎?如何檢測像這樣的事件是不是運行後臺服務? – Joe 2010-04-05 07:33:28
本文討論後臺服務問題 - http://www.androidguys.com/2010/03/29/code-pollution-background-control/ – 2010-04-05 08:13:25
該答案的問題,任何它爲什麼工作的原因是您的活動在手機睡着時不會收到意圖。所以你可以在你的活動中註冊screen_on,但你永遠不會得到它。 – 2012-01-30 17:11:07