2016-02-05 78 views
0

我會第一講故事的開始..後保持一個接收器活着服務被殺

我有服務MSERVICE,接收機mReceiver,PreferenceFragment一個開關。

現在,這個開關將運行服務,它將註冊一個Screen.OFF接收器,當屏幕關閉時,接收器將被調用,並且它將檢查屏幕是否被鎖定,如果是,它會輸出一個日誌消息。

所以,鎖定意味着終止服務,接收者只會被調用兩次然後關閉,我已經註冊接收者並將其解析到mService中的onDestory中。

我已經添加了一個布爾值,並想過在onDestroy中添加一個「if」語句,如果它處於On並被殺死,那麼在設備解鎖時運行該服務。

另一個想法,它使服務活着(這將耗盡電池)。

我想要什麼,以保持聽Screen.OFF,我不想開始使用其中的一個沒有關於使用的建議,或者我可能以錯誤的方式瞭解它? 。

代碼是基本的,註冊/ unRegister /類擴展Service。

回答

0

如果您需要保持接收器正常工作 - 您需要託管此接收器的東西。 所以是的,你需要保持服務的活力。

+0

是否「如果選項打開,重新啓用時解鎖」方法是一個很好的做法?或者不是「專業」方法。 – Jaeger

+0

也許我不明白你,但是當設備解鎖時你將如何開始服務?誰或什麼會聽設備解鎖? – udenfox