2016-11-04 125 views

回答

2

是的,這是一個很好的做法,當本服務需要無限期地完成一些工作時,您應該這樣做。如果您想要執行一些單一操作,請改用IntentService。 服務也可以綁定到任何其他組件(活動,另一個服務),並在同一時間啓動,所以即使應用程序被最小化或關閉,您也可以在後臺工作。想象一下,你必須做無限期的長時間運行操作,並通過UI與這些操作進行交互。要做到這一點,創建服務,啓動它並同時綁定到它。您將在綁定期間從ServiceConnection獲取用於控制此服務的接口。服務可以同時進行長時間運行。這裏的要點是,不同的Activitis可以綁定到這個服務,並以不同的方式表示操作。另一方面,Intent服務在默認情況下運行自己的後臺線程,但是當該線程上的工作完成時它會自動停止。

+0

我會添加「服務」在啓動它的線程上運行的信息。所以你可能會創建一個線程來啓動'Service',並且它在不同於'main'的線程上運行。 –

相關問題