service onStartCommand()注意點

2.0?API?level之后,實現(xiàn)onStart等同于重寫onStartCommand并返回START_STICKY??

@Override??

public?void?onStart(Intent?intent,?int?startId)?{??

handleCommand(intent);??

}??


//?2.0?API?level之后尸曼,onStart()方法被onStartCommand()取代了??

@Override??

public?int?onStartCommand(Intent?intent,?int?flags,?int?startId)?{??

handleCommand(intent);??

//?We?want?this?service?to?continue?running?until?it?is?explicitly??

//?stopped,?so?return?sticky.??

return?START_STICKY;??

}???


啟動服務(wù)時依次執(zhí)行onCreate,onStartCommand侠仇,onStart;如果在系統(tǒng)顯示調(diào)用stopService和stopSelf之前終止服務(wù)腹尖,service再次重啟狮荔,onStartCommand會被調(diào)用,重啟服務(wù)時依次執(zhí)行onStartCommand贫贝,onStart秉犹。無論何時,都會先調(diào)用onStartCommand()稚晚,在調(diào)用onStart()崇堵。??

onStartCommand返回值??


onStartComand使用時,返回的是一個(int)整形客燕。??

這個整形可以有四個返回值:START_STICKY鸳劳、START_NO_STUCKY、START_REDELIVER_INTENT也搓、START_STICKY_COMPATIBILITY棍辕。??

它們的含義分別是:??

1):START_STICKY:如果service進程被kill掉,保留service的狀態(tài)為開始狀態(tài)还绘,但不保留遞送的intent對象楚昭。隨后系統(tǒng)會嘗試重新創(chuàng)建service,由于服務(wù)狀態(tài)為開始狀態(tài)拍顷,所以創(chuàng)建服務(wù)后一定會調(diào)用onStartCommand(Intent,int,int)方法抚太。如果在此期間沒有任何啟動命令被傳遞到service,那么參數(shù)Intent將為null昔案。??

2):START_NOT_STICKY:“非粘性的”尿贫。使用這個返回值時,如果在執(zhí)行完onStartCommand后踏揣,服務(wù)被異常kill掉庆亡,系統(tǒng)不會自動重啟該服務(wù)??

3):START_REDELIVER_INTENT:重傳Intent。使用這個返回值時捞稿,如果在執(zhí)行完onStartCommand后又谋,服務(wù)被異常kill掉,系統(tǒng)會自動重啟該服務(wù)娱局,并將Intent的值傳入彰亥。???


4):START_STICKY_COMPATIBILITY:START_STICKY的兼容版本,但不保證服務(wù)被kill后一定能重啟衰齐。??


onStartComand參數(shù)flags含義??


flags表示啟動服務(wù)的方式:??

Additional?data?about?this?start?request.?Currently?either?0,?START_FLAG_REDELIVERY,?or?START_FLAG_RETRY.??


START_FLAG_REDELIVERY:如果你實現(xiàn)onStartCommand()來安排異步工作或者在另一個線程中工作,?那么你可能需要使用START_FLAG_REDELIVERY來讓系統(tǒng)重新發(fā)送一個intent任斋。這樣如果你的服務(wù)在處理它的時候被Kill掉,?Intent不會丟失.??

START_FLAG_RETRY:表示服務(wù)之前被設(shè)為START_STICKY,則會被傳入這個標記耻涛。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末废酷,一起剝皮案震驚了整個濱河市瘟檩,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌澈蟆,老刑警劉巖墨辛,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異丰介,居然都是意外死亡背蟆,警方通過查閱死者的電腦和手機鉴分,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門哮幢,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人志珍,你說我怎么就攤上這事橙垢。” “怎么了伦糯?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵柜某,是天一觀的道長。 經(jīng)常有香客問我敛纲,道長喂击,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任淤翔,我火速辦了婚禮翰绊,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘旁壮。我一直安慰自己监嗜,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布抡谐。 她就那樣靜靜地躺著裁奇,像睡著了一般。 火紅的嫁衣襯著肌膚如雪麦撵。 梳的紋絲不亂的頭發(fā)上刽肠,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天,我揣著相機與錄音免胃,去河邊找鬼五垮。 笑死,一個胖子當(dāng)著我的面吹牛杜秸,可吹牛的內(nèi)容都是我干的放仗。 我是一名探鬼主播,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼撬碟,長吁一口氣:“原來是場噩夢啊……” “哼诞挨!你這毒婦竟也來了莉撇?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤惶傻,失蹤者是張志新(化名)和其女友劉穎棍郎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體银室,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡涂佃,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了蜈敢。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片辜荠。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖抓狭,靈堂內(nèi)的尸體忽然破棺而出伯病,到底是詐尸還是另有隱情,我是刑警寧澤否过,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布午笛,位于F島的核電站,受9級特大地震影響苗桂,放射性物質(zhì)發(fā)生泄漏药磺。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一煤伟、第九天 我趴在偏房一處隱蔽的房頂上張望癌佩。 院中可真熱鬧,春花似錦持偏、人聲如沸驼卖。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽酌畜。三九已至,卻和暖如春卿叽,著一層夾襖步出監(jiān)牢的瞬間桥胞,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工考婴, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留贩虾,地道東北人。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓沥阱,卻偏偏與公主長得像缎罢,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,060評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 【Android Service】 Service 簡介(★★★) 很多情況下策精,一些與用戶很少需要產(chǎn)生交互的應(yīng)用程...
    Rtia閱讀 3,154評論 1 21
  • 本文出自 Eddy Wiki 舰始,轉(zhuǎn)載請注明出處:http://eddy.wiki/interview-androi...
    eddy_wiki閱讀 3,270評論 0 20
  • 上篇我們講解了Android中的5中等級的進程,分別是:前臺進程咽袜、可見進程丸卷、服務(wù)進程、后臺進程询刹、空進程谜嫉。系統(tǒng)會按照...
    徐愛卿閱讀 3,858評論 6 33
  • 如何判斷當(dāng)前BroadcastReceiver接受到的是有序廣播還是無序廣播 在BroadcastReceiver...
    侯蛋蛋_閱讀 1,492評論 0 1
  • 死并非是生的對立面,死潛伏在我們的生之中凹联。 一個人對生命中懊悔的部分越少沐兰,他對死亡的焦慮也就越少。 一個英雄不是因...
    富貴兒媽媽閱讀 172評論 0 0