詳解AndroidService使用時的注意事項-創(chuàng)新互聯(lián)

最近有個項目剛好使用了Service,特別是AIDL遠(yuǎn)程服務(wù),經(jīng)過這次項目對Service有了更好的理解,在這里作個總結(jié)。

創(chuàng)新互聯(lián)建站長期為上千家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為和碩企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè),和碩網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

startService / bindService 混合使用

  1. 每一次調(diào)用 startService 都會回調(diào)onStartCommand,之后調(diào)用了stopService之后就會 destroy Service。即使有多個client啟動服務(wù),那調(diào)用一次stopService 就能 destroy Service 。通過這種方式還有一個好處就是Service可以通過調(diào)用 stopSelf 主動退出。
  2. 第一次調(diào)用bindService 的時候才會回調(diào) onBind,如果有多個client連接服務(wù),在最后一個client調(diào)用unbindService時才會回調(diào) onUnbind,并destroy Service。

如果startService / bindService 混合使用 那Service的生命同期會怎樣呢,其實只要記住以上的思路,這種問題很好理解。首先 startService 與 stopService 對應(yīng) ,沒有stopService 之前不會 destroy Service , bindService 與 unbindService對應(yīng) ,沒有 unbindService 前也不會destroy Service。

為服務(wù)添加權(quán)限

相信大家做的服務(wù)都是公共的,即所有應(yīng)用都可以調(diào)用。但是如果我想我的服務(wù)只給特定的應(yīng)用調(diào)用,應(yīng)該如何設(shè)置呢?我們可以給服務(wù)添加權(quán)限。關(guān)于權(quán)限,Android系統(tǒng)給權(quán)限為了四個類別:

  1. 普通級: 這些權(quán)限并不能真正傷害到用戶(比如更換壁紙),當(dāng)程序需要這些權(quán)限是,開發(fā)者不需要指定程序會自動賦予這些權(quán)限。
  2. 危險級: 這些權(quán)限可能會帶來真的傷害(比如打電話,打開網(wǎng)絡(luò)鏈接等),如果要使用它們需要開發(fā)者在AndroidManifest.xml中聲明對應(yīng)的權(quán)限。
  3. 簽名級: 如果應(yīng)用使用的是相同的簽名證書時,這些權(quán)限會自動授予給聲明或者創(chuàng)建這些權(quán)限的程序。設(shè)計這一層級權(quán)限的目的是方便組件間數(shù)據(jù)共享。
  4. 簽名/系統(tǒng)級: 和簽名級一樣,例外的是系統(tǒng)鏡像是自動獲取這些權(quán)限的,這一層級是專為設(shè)備制造商設(shè)計的。
<uses-permission android:name="android.permission.custom.XXX"/>

網(wǎng)站題目:詳解AndroidService使用時的注意事項-創(chuàng)新互聯(lián)
網(wǎng)站鏈接:http://muchs.cn/article24/dcooce.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護、全網(wǎng)營銷推廣移動網(wǎng)站建設(shè)、手機網(wǎng)站建設(shè)、靜態(tài)網(wǎng)站服務(wù)器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計