android 服務的生命週期 混合方式

2021-09-27 09:03:50 字數 781 閱讀 3727

繫結服務:可以呼叫服務裡面的方法,

如果呼叫者activity

銷毀了,服務也會跟著銷毀

單獨解除繫結的時候,服務也會被銷毀

開啟服務:不可以呼叫服務裡面的方法

如果呼叫者activity

退出了,服務還會存在

需求:既要保證長期執行,又要執行服務裡面的方法

生命週期

單獨呼叫:

startservice() ==>  oncreate()

stopservice() ==> ondestroy()

或者bindservice()  ==> oncreate()  ==>onbind()

unbindservice()  ==> onunbind()  ==>ondestroy()

混合呼叫:

技巧:1.

開啟服務

2. 繫結服務

startservice()  ==>  oncreate()

bindservice()  ==>  onbind()

unbindservice()  ==> onunbind()

在介面退出的時候解除繫結,在介面ondestroy()

的時候呼叫,在這裡面用

trycatch

包裹一下就不會報紅色的錯誤了,保證方法呼叫完之後就解除繫結

呼叫unbindservice(conn)

方法,引數:

serviceconnection

物件,前面繫結的時候建立的物件

服務只能被解綁一次

android生命週期

通用生命週期流程如下 正常啟動 oncreate onstart onpost oncreate onresume onpostresume 轉向下乙個activity onpause onstop 從下乙個activity返回當前 按機器返回鍵 onrestart onstart onresume...

android生命週期

oncreate 第一次進入此頁面或者從其他頁面跳轉到此頁面時呼叫此方法。從其他頁面按下返回鍵到達此頁面時不執行該方法。onstart 第一次進入此頁面或者從其他頁面跳轉到此頁面時呼叫此方法,在oncreate 後執行。如果從第二個頁面發揮到此頁面也執行此方法,是在onrestart 後執行。onr...

android生命週期

1 程式的正常啟動 oncreate onstart onresume 2 程式正常退出 onpause onstop ondestory 3 乙個activity啟動另乙個activity onpause onstop 再返回onrestart onstart onresume 4 程式按back...