Service 有
不同的模式生命周期不同.
如果是非綁定模式, Service 會(huì)經(jīng)歷 onCreate 到 onStartCommand, 然后處于運(yùn)行狀態(tài),當(dāng)調(diào)用者調(diào)用 stopService() 或者服務(wù)本身調(diào)用 stopSelf() 的時(shí)候調(diào)用 onDestroy.
如果是調(diào)用者自己直接退出而沒(méi)有調(diào)用 stopService 的話, Service 會(huì)一直在后臺(tái)運(yùn)行.
但是如果是綁定模式, 一個(gè) Service 可以被多個(gè)客戶進(jìn)行綁定, 只有所有的綁定對(duì)象都執(zhí)行了onUnbind() 方法后該服務(wù)才回銷(xiāo)毀.
我們?cè)陂_(kāi)發(fā)的過(guò)程中還必須注意 Service 實(shí)例只會(huì)有一個(gè), 也就是說(shuō)如果當(dāng)前要啟動(dòng)的 Service 已經(jīng)存在了那么就不會(huì)再創(chuàng)建該 Service 當(dāng)然也就不會(huì)調(diào)用 onCreate().
更多建議: