我已經看到使用Android的報警管理,一些奇怪的問題,儘管我使用RTC(非喚醒)手機將在可靠地發送PendingIntents正確的重複間隔。我測試的允許手機,而在Android上使用
詳細
- 設備不充電,只是坐在我的牀頭櫃上,而我睡
- 我的服務醒了它的重複間隔時間(30分鐘,一個極端的,我知道)EVERY TIME
- 的服務記錄其在文件中的活動,所以我可以在早上
現在讀它應該除非我把它叫醒,否則我的警報不應該在手機醒來之前發送。
- 爲什麼我的服務執行?
- 如果其他服務行爲不端和使用報警將我的服務醒得的_WAKEUP變種?
- 我能避免被另一個服務喚醒,並從用戶打開屏幕只是醒了嗎?
這兩個廣播的侷限性如何?正如您在錯誤報告http://code.google.com/p/android/issues/detail?id=10735中所記錄的那樣,他們無法在清單中註冊。這對於一個活動來說很好,但是因爲我正在處理一項服務,所以它們本質上是無用的,並且將在服務死亡時快速發佈(針對IntentService快速發佈)。廣播也不粘,所以我不能隨意查詢它們。我錯過了什麼嗎?我可以在我的IntentService中創建長期存在的BroadcastReceiver嗎? – smith324 2011-05-24 16:40:01
@ smith324:「正如您在bug報告code.google.com/p/android/issues/detail?id=10735中所記錄的那樣,他們無法在清單中註冊。」 - 恩,是的,沒錯。對不起,忘了。 :-(「我可以在我的IntentService中創建一個長期存在的BroadcastReceiver嗎?」 - 「IntentService」並非設計爲「長期存在」。 – CommonsWare 2011-05-24 16:46:13
嗯,我想我可以創建另一個服務來偵聽屏幕/關閉,但只是感覺像一個黑客和資源浪費:\ – smith324 2011-05-24 16:52:53