2011-03-31 86 views
0

我看了這個http://developer.android.com/guide/topics/fundamentals/services.html並在那裏說服務的生命週期取決於我是如何通過onStartCommand()啓動的,並且該服務永遠或通過onBind()運行(幾乎),並且該服務僅運行就像我的申請一樣。安卓服務問題

現在我讀了http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/AlarmService.html那裏的服務是通過AlarmManager啓動的。 onBind()和onStartCommand()方法都不使用。現在這項服務的生命力如何?

第二個問題,以某種方式(如何?)確保如果應用程序一次又一次地啓動,該服務只調度一次?

感謝,A

回答

0

或通過onBind()和服務只只要我的應用程序運行。

更確切地說,它會一直運行,直到所有bindService()調用都與unbindService()調用匹配。

既不onBind(),也不是onStartCommand()方法用於

這不是一個Service,儘管名稱。這是一個Activity

第二個問題,以某種方式(如何?)確保如果應用程序一次又一次地啓動,該服務只調度一次?

PendingIntent將相當於兩個setRepeating()調用,因此第二setRepeating()應該覆蓋第一。這就是說,這是一個馬虎的例子。

+0

但活動調用服務,這一個http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/AlarmService_Service.html – AndyAndroid 2011-04-05 14:00:44