欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

bindService-創(chuàng)新互聯(lián)

  1. 兩種Service--本地Service/遠(yuǎn)程Service
          本地service:是和當(dāng)前應(yīng)用在同一個(gè)進(jìn)程中的service,彼此之間擁有共同的內(nèi)存區(qū)域,所以對(duì)于某些數(shù)據(jù)的共享特別的方便和簡(jiǎn)單;
          遠(yuǎn)程service:主要牽扯到不同進(jìn)程間的service訪問。因?yàn)閍ndroid的系統(tǒng)安全的原因?qū)е铝宋覀冊(cè)诓煌倪M(jìn)程間無(wú)法使用一般的方式共享數(shù)據(jù)。在這里android為我們提供了一個(gè)AIDL工具。(android interface description language)android接口描述語(yǔ)言。

    讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡(jiǎn)單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:空間域名、雅安服務(wù)器托管、營(yíng)銷軟件、網(wǎng)站建設(shè)、龍山網(wǎng)站維護(hù)、網(wǎng)站推廣。
  2. Service生命周期

    onCreate()->onStart()->onBind()->onUnbind()->onDestroy() :

    (1)啟動(dòng)/停止方式--startService/stopService
          startService(Intent intent):?jiǎn)?dòng)一個(gè)service
          stopService(Intent intent) :停止一個(gè)service

    (2)綁定/解綁定方式--bindService/unBindService
           如果我們想使用service中的一些數(shù)據(jù)或者訪問其中的一些方法,那么我們就要通過下面的方法:
           public boolean bindService(Intent intent, ServiceConnection conn, int flags) ;
           public void unbindService(ServiceConnection conn);

           conn則是一個(gè)代表與service連接狀態(tài)的類,當(dāng)我們連接service成功或失敗時(shí),會(huì)主動(dòng)觸發(fā)其內(nèi)部的onServiceConnected或onServiceDisconnected方法。如果我們想要訪問service中的數(shù)據(jù),可以在onServiceConnected()方法中進(jìn)行實(shí)現(xiàn)

  3. 使用Service的步驟

    (1)繼承service類,實(shí)現(xiàn)自己的service。
           如果想要訪問service中的某些值,我們通常會(huì)在Service類中再提供一個(gè)繼承了Binder的內(nèi)部類,通過onBind()方法返回給service請(qǐng)求。這里實(shí)際上巧妙的利用了內(nèi)部類能夠訪問外部類屬性的特點(diǎn)。
    (2)在androidManifest.xml中進(jìn)行注冊(cè),如:
           <!-- service配置開始 -->
           <service android:name="MyService"></service>
           <!-- service配置結(jié)束-->
    (3)在activity中進(jìn)行啟動(dòng)、綁定、解綁或者停止service。
           啟動(dòng)/停止(startService/stopService)方式比較簡(jiǎn)單;下面列出一個(gè)Activity綁定/解綁(bindService/unbindService)Service并使用Service中數(shù)據(jù)的例子。

  4. bindService的使用介紹

    (1)service通過Context.startService()方法開始,通過Context.stopService()方法停止;也可以通過Service.stopSelf()方法或者Service.stopSelfResult()方法來(lái)停止自己。只要調(diào)用一次stopService()方法便可以停止服務(wù),無(wú)論之前它被調(diào)用了多少次的啟動(dòng)服務(wù)方法。

    (2)客戶端建立一個(gè)與Service的連接,并使用此連接與Service進(jìn)行通話,通過Context.bindService()方法來(lái)綁定服務(wù),Context.unbindService()方法來(lái)關(guān)閉服務(wù)。多個(gè)客戶端可以綁定同一個(gè)服務(wù),如果Service還未被啟動(dòng),bindService()方法可以啟動(dòng)服務(wù)。

    (3)上面startService()和bindService()兩種模式是完全獨(dú)立的。你可以綁定一個(gè)已經(jīng)通過startService()方法啟動(dòng)的服務(wù)。例如:一 個(gè)后臺(tái)播放音樂服務(wù)可以通過startService(intend)對(duì)象來(lái)播放音樂。可能用戶在播放過程中要執(zhí)行一些操作比如獲取歌曲的一些信息,此時(shí) activity可以通過調(diào)用bindServices()方法與Service建立連接。這種情況下,stopServices()方法實(shí)際上不會(huì)停止 服務(wù),直到最后一次綁定關(guān)閉。

  5. Service綁定流程

    context.bindService() ——> onCreate() ——> onBind() ——> Service running ——> onUnbind() ——> onDestroy() ——> Service stop

    (1)onBind()將返回給客戶端一個(gè)IBind接口實(shí)例,IBind允許客戶端回調(diào)服務(wù)的方法,比如得到Service的實(shí) 例、運(yùn)行狀態(tài)或其他操作。這個(gè)時(shí)候把調(diào)用者(Context,例如Activity)會(huì)和Service綁定在一起,Context退出 了,Srevice就會(huì)調(diào)用onUnbind->onDestroy相應(yīng)退出。

    (2)所以調(diào)用bindService的生命周期為:onCreate --> onBind(只一次,不可多次綁定) --> onUnbind --> onDestory。

    (3)在Service每一次的開啟關(guān)閉過程中,只有onStart可被多次調(diào)用(通過多次startService調(diào)用),其他onCreate,onBind,onUnbind,onDestory在一個(gè)生命周期中只能被調(diào)用一次。

    (4)這個(gè)問題當(dāng)調(diào)用bindService方法后就會(huì)回調(diào)Activity的onServiceConnected,在這個(gè)方法中會(huì)向Activity中傳遞一個(gè)IBinder的實(shí)例,Acitity需要保存這個(gè)實(shí)例。在Service中需要?jiǎng)?chuàng)建一個(gè)實(shí)現(xiàn)IBinder的內(nèi)部類(這個(gè)內(nèi)部類不一定在Service中實(shí)現(xiàn),但必須在Service中創(chuàng)建它)。在OnBind()方法中需返回一個(gè)IBinder實(shí)例,不然onServiceConnected方法不會(huì)調(diào)用。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

網(wǎng)站題目:bindService-創(chuàng)新互聯(lián)
轉(zhuǎn)載來(lái)源:http://chinadenli.net/article24/ddijje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、Google、品牌網(wǎng)站制作域名注冊(cè)、微信公眾號(hào)建站公司

廣告

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

手機(jī)網(wǎng)站建設(shè)