W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
onStartCommand() 方法返回整型數(shù)來描述系統(tǒng)應(yīng)該如何在服務(wù)終止的情況下繼續(xù)運行服務(wù).
返回的值必須是以下常量之一:
如果服務(wù)在開始后 (onStartCommand() 返回后) 被終止, 比如內(nèi)存不足, 然后會保持已開始狀態(tài) (started state), 但是并不保留接收的 intent. 稍后當系統(tǒng)有足夠內(nèi)存時會自己嘗試重新創(chuàng)建服務(wù). 因為服務(wù)仍處于已開始狀態(tài), 所以重建后會調(diào)用 onStartCommand() 方法. 但是除非此時有掛起的 intent 要啟動服務(wù), 不然傳遞的 intent 為 null. 使用此方式需要在代碼中考慮處理 null 的情況.
該模式主要用于可以在任意的時間段顯示的開始和結(jié)束服務(wù), 比如后臺的音樂播放服務(wù).
如果服務(wù)在開始后 (onStartCommand() 返回后) 被終止, 但是不會保持已開始狀態(tài). 系統(tǒng)也不會再自建該服務(wù). 只能通過顯示的調(diào)用 startService(Intent) 來重新創(chuàng)建服務(wù). 這是最安全的選項, 可以避免在不必要時以及應(yīng)用能夠輕松重啟所有未完成的作業(yè)時運行服務(wù).
如果服務(wù)在開始后 (onStartCommand() 返回后) 被終止, 則會重建服務(wù), 并且傳入最后一個接收的 intent 到 onStartCommand(). 這適用于主動執(zhí)行應(yīng)該立即恢復(fù)的服務(wù)(例如下載文件).
小結(jié):
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: