2013年9月23日 星期一

Service-(1)

來源:http://blog.csdn.net/android_tutor/article/details/5789203
Service概念及用途:
 
與Activity不同,不能自己啟動的,運行在後台的程序,如果我們退出應用時,Service進程並沒有結束仍然在後台運行,那我們什麼時候會用到Service呢?

比如當我們一個應用的數據是通過網絡獲取的,不同時間(一段時間)的數據是不同的這時候我們可以用Service在後台定時更新,而不用每打開應用的時候在去獲取。

Service生命週期 :

它只繼承了onCreate(),onStart(),onDestroy()三個方法,
當我們第一次啟動Service時,先後調用了onCreate(),onStart()這兩個方法,
當停止Service時,則執行onDestroy()方法,這裡需要注意的是,如果Service已經啟動了,當我們再次啟動Service時,不會在執行onCreate()方法,而是直接執行onStart()方法,具體的可以看下面的實例。

第一次啟動 Service => onCreate() => onStart()
再次啟動 Service => onStart()
停止 Service => onDestroy()

Service與Activity通信:

Service後端的數據最終還是要呈現在前端Activity之上的,因為啟動Service時,系統會重新開啟一個新的進程,當我們想獲取啟動的Service實例時,我們可以用到bindServiceonBindService方法,它們分別執行了Service中IBinder()和onUnbind()方法。

bindService : IBinder()
onBindService : onUnbind()













沒有留言:

張貼留言