2012-09-01 88 views
0

更多活動需要獲取有關位置的信息,所以我認爲將它們分別設置爲位置偵聽器並不是一個好主意。 因爲這個原因,我的想法是讓後臺服務監聽變化,然後當一個活動想知道當前的經緯度時,它只是要求他們服務。如何進行位置偵聽器服務

問題是,當前活動暫停(屏幕變暗,用戶按下home鍵等)時,服務應停止監聽(以避免電池浪費)。

你能否告訴我一個很好的模式來實現我想要做的事?根據你的說法,正確的方法是繼續嗎?

回答

1

您應該創建一個綁定服務 - 一旦所有綁定的活動被刪除(不是onPause ...),該服務就會停止。

對於onPause檢測,您需要覆蓋應用程序類並創建一個靜態值「inForeGround」。

Here是一些綁定服務的信息!

+0

我雖然一個更好的辦法:我簡單地定義對服務的取消註冊監聽器方法,我的onPause()中調用的活動方法) – user1610075

+0

這很好,也當然的,但不要忘了取消註冊在每一個活動! –