a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 系統 > Android > 正文

Android四大組件之Service詳解

2019-10-21 21:26:06
字體:
來源:轉載
供稿:網友

一、Service簡介

Service是Android程序中四大基礎組件之一,它和Activity一樣都是Context的子類,只不過它沒有UI界面,是在后臺運行的組件。

Service是Android中實現程序后臺運行的解決方案,它非常適用于去執行那些不需要和用戶交互而且還要求長期運行的任務。Service默認并不會運行在子線程中,它也不運行在一個獨立的進程中,它同樣執行在UI線程中,因此,不要在Service中執行耗時的操作,除非你在Service中創建了子線程來完成耗時操作。

二、Service生命周期

Android,組件,Service

1.startService / stopService

生命周期順序:onCreate->onStartCommand->onDestroy

OnCreate()

系統在service第一次創建時執行此方法,來執行只運行一次的初始化工作。如果service已經運行,這個方法不會被調用。

onStartCommand()

每次客戶端調用startService()方法啟動該Service都會回調該方法(多次調用)。一旦這個方法執行,service就啟動并且在后臺長期運行。通過調用stopSelf()或stopService()來停止服務。

OnDestory()

系統在service不再被使用并要銷毀時調用此方法(一次調用)。service應在此方法中釋放資源,比如線程,已注冊的偵聽器,接收器等等.這是service收到的最后一個調用。

2.bindService / unbindService

生命周期順序:onCreate->onBind->onUnBind->onDestroy

同樣首先是OnCreate(),接著是

OnBind()

當組件調用bindService()想要綁定到service時(比如想要執行進程間通訊)系統調用此方法(一次調用,一旦綁定后,下次再調用bindService()不會回調該方法)。在你的實現中,你必須提供一個返回一個IBinder來以使客戶端能夠使用它與service通訊,你必須總是實現這個方法,但是如果你不允許綁定,那么你應返回null。

OnUnbind()

當前組件調用unbindService(),想要解除與service的綁定時系統調用此方法(一次調用,一旦解除綁定后,下次再調用unbindService()會拋出異常)。

最后是OnDestory()

注意:通過bindService啟動的Service的生命周期依附于啟動它的Context。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對VEVB武林網的支持。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 亚洲精品一区二区三区蜜桃下载 | 欧美日韩一区二区三区视频 | 国产精品视频一区二区三区, | 精品久久久久久久人人人人传媒 | 美女一级毛片 | 日本不卡在线 | 婷婷午夜激情 | 国产美女精品 | 欧美在线观看网站 | 久色电影 | 欧美日韩导航 | 8×8x拔擦拔擦在线视频网站 | 欧美第一页| 午夜视频在线播放 | 91久久久久久久久久久久久久久久 | 久在线视频 | 欧美综合国产精品久久丁香 | 欧美九九九 | 亚洲一级毛片 | 精品在线免费视频 | 天天色天天色 | 黄色小电影网址 | www.中文字幕.com | 欧美一区二区三区成人 | 国产精品久久久久国产a级 日韩在线二区 | 在线成人av | 欧美三级视频在线观看 | 欧美一级特黄aaaaaaa色戒 | 精品伦精品一区二区三区视频 | 久久精品二区亚洲w码 | 一区二区三区四区精品 | 免费黄色福利网站 | 色婷婷综合久久久久中文一区二 | 欧美日韩第一 | 精品欧美一区二区三区久久久 | 亚洲电影在线观看 | 蜜月久久99静品久久久久久 | 亚洲激情网站 | 操操操av| 狠狠操综合网 | 欧美在线视频一区二区 |