2011-03-22 33 views

回答

6

當最後一個組件從它上面解除綁定時,是否將作爲啓動和綁定運行的服務退出?

如果事情上Service稱爲startService(),它將保持運行,無論什麼bindService()unbindService()電話可能已經上。最終,Android會停止服務,或者用戶將終止該服務,但在最後的unbindService()之後,兩者都不會立即發生。

+0

太棒了。謝謝!因此,服務對於與活動相同類型的垃圾收集是可取的,並且不能保證始終運行? – rogerkk 2011-03-22 11:33:42

+0

@rogerkk:絕對。在大多數情況下,「永久服務」是Android中的反模式。請記住,許多Android設備的RAM有限。太多的開發者一直在「泄漏」服務,所以用戶和操作系統對於擺脫它們更加積極。例如,大多數情況下,希望服務可以永久運行是更好的選擇,可以與'AlarmManager'一起使用 - 例如,在OS X或Linux中認爲'cron'作業與始終運行的守護程序。 – CommonsWare 2011-03-22 16:51:14

+0

再次感謝!感謝你總是從你那裏得到很好的答案。 :) – rogerkk 2011-03-23 08:37:48