2011-03-09 88 views
4

我有一項服務供我的所有活動使用,並且應該在沒有任何活動處於前臺時停止服務,但當一個活動可見時始終保持運行狀態。由於Android沒有保持內部狀態來知道前臺應用程序是哪個,有沒有乾淨的方法來實現這一目標?當前臺沒有任何活動時停止服務

回答

0

看到http://developer.android.com/reference/android/app/Activity.html

當方法在onStart,和的onStop在onPause被調用瞭解特定活動的生命週期。然後您可以相應地在其中啓動Service/stopService。

+1

我已經知道他們是如何工作的,我只想知道我的任何活動何時都不在前臺,然後能夠根據它做些事情。 – biquillo 2011-03-09 21:19:39

+0

所以,你確實知道,當一些其他活動出現在你的活動前面時,onPause()會被調用,當你的活動不再可見時,onStop()會被調用,對吧? – Vino 2011-03-10 13:10:19

+0

當然,問題是我的應用程序知道我的任何活動都不在前臺 – biquillo 2011-03-10 22:56:12

1

我猜@biquillo誤解了你的問題,但我發現好主意CommonsWare answer ..

基本上你可以通過綁定到它,並塞汀標誌來創建它如果尚未創建它啓動服務。然後,當有一些活動是創建它綁定到服務,它的onDestroy解除綁定..這將使在不工作時被綁定到其服務中一旦遭到破壞..

希望它可以幫助它解決烏爾問題;)乾杯

相關問題