2023學年完整公開課版自定義服務(wù)_第1頁
2023學年完整公開課版自定義服務(wù)_第2頁
2023學年完整公開課版自定義服務(wù)_第3頁
2023學年完整公開課版自定義服務(wù)_第4頁
2023學年完整公開課版自定義服務(wù)_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

《通信業(yè)務(wù)開發(fā)》課程自定義服務(wù)自定義服務(wù)使用方法屬性方法Start啟動PART26-3Bind啟動使用方法示例定義Service服務(wù):新建服務(wù)類,并繼承Service覆寫onCreate、onStart、onDestroy編碼實現(xiàn)服務(wù)功能注冊Service服務(wù):在AppManifest中注冊在應用程序中使用服務(wù)本地服務(wù):startService啟動,stopService或stopSelf終止遠程服務(wù):bindService啟動unbindService終止服務(wù)步驟publicclassMusicServiceextendsService{…………..}<serviceandroid:name=".MusicService"><intent-filter><actionandroid:name="com.musicplayer.START_AUDIO_SERVICE"/><categoryandroid:name="ent.category.default"/></intent-filter></service>startService(newIntent("com.musicplayer.START_AUDIO_SERVICE"));……stopService(newIntent("com.musicplayer.START_AUDIO_SERVICE"));No.方法及常量類型描述1publicstaticfinalintSTART_CONTINUATION_MASK常量繼續(xù)執(zhí)行Service2publicstaticfinalintSTART_STICKY常量用于顯式啟動和停Service3publicabstractIBinderonBind(Intentintent)普通設(shè)置Activity和Service之間的綁定4publicvoidonCreate()普通當一個Service創(chuàng)建時調(diào)用5publicintonStartCommand(Intentintent,intflags,intstartId)普通啟動Service,由startService()方法觸發(fā)6publicvoidonDestroy()普通Service銷毀時調(diào)用,由stopService()方法觸發(fā)屬性方法Service方法1No.方法類型描述1publicComponentNamestartService(Intentservice)普通啟動Service2publicbooleanstopService(Intentname)普通停止Service3publicbooleanbindService(Intentservice,ServiceConnectionconn,intflags)普通與Service綁定4publicvoidunbindService(ServiceConnectionconn)普通取消與Service綁定Activity中Service接口2Start啟動Start啟動定義Service1publicclassMusicextendsService{

privateMediaPlayerplayer=null;@OverridepublicIBinderonBind(Intentintent){returnnull;}publicvoidonStart(Intentintent,intstartId){

super.onStart(intent,startId);player=MediaPlayer.create(this,R.raw.because);player.start();

}

publicvoidonDestroy(){

super.onDestroy();player.stop();

}}Music服務(wù)Start啟動注冊服務(wù)2<manifestxmlns:android="/apk/res/android"package="com.musicplayer“android:versionCode="1"android:versionName="1.0“><uses-sdkandroid:minSdkVersion="4"/><applicationandroid:icon="@drawable/music"android:label="@string/app_name"><activityandroid:name=".MainAc"android:label="@string/app_name"android:theme="@android:style/Theme.Dialog"><intent-filter><actionandroid:name="ent.action.MAIN"/><categoryandroid:name="ent.category.LAUNCHER"/></intent-filter></activity>

<serviceandroid:name=".Music"><intent-filter><actionandroid:name="com.musicplayer.START_AUDIO_SERVICE"/><categoryandroid:name="ent.category.default"/></intent-filter></service></application></manifest>AndroidManifestStart啟動使用-StartService3publicclassMainAcextendsActivity{ButtonbtnStart,btnStop;TextViewtxtView;@Override

publicvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);setContentView(R.layout.main);

btnStart=(Button)findViewById(R.id.btnStart);btnStop=(Button)findViewById(R.id.btnStop);

txtView=(TextView)findViewById(R.id.textInfo);

}

publicvoidOnbtnStart(Viewview){startService(newIntent("com.musicplayer.START_AUDIO_SERVICE"));txtView.setText("因為愛情.mp3");}publicvoidOnbtnStop(Viewview){

stopService(newIntent("com.lily.MusicPlayer.START_AUDIO_SERVICE"));finish();}}MainAc啟動服務(wù)Bind啟動Bind啟動定義Service1publicclassMusicextendsService{

privateMediaPlayerplayer=null;@OverridepublicIBinderonBind(Intentintent){player=MediaPlayer.create(this,R.raw.because);player.start();returnnull;}@OverridepublicbooleanonUnbind(Intentintent){player.stop();returnsuper.onUnbind(intent);}publicvoidonStart(Intentintent,intstartId){

super.onStart(intent,startId);

}

publicvoidonDestroy(){

super.onDestroy();

}}Music服務(wù)Bind啟動注冊服務(wù)2<manifestxmlns:android="/apk/res/android"package="com.musicplayer“android:versionCode="1"android:versionName="1.0“><uses-sdkandroid:minSdkVersion="4"/><applicationandroid:icon="@drawable/music"android:label="@string/app_name"><activityandroid:name=".MainAc"android:label="@string/app_name"android:theme="@android:style/Theme.Dialog"><intent-filter><actionandroid:name="ent.action.MAIN"/><categoryandroid:name="ent.category.LAUNCHER"/></intent-filter></activity>

<serviceandroid:name=".Music"><intent-filter><actionandroid:name="com.musicplayer.START_AUDIO_SERVICE"/><categoryandroid:name="ent.category.default"/></intent-filter></service></application></manifest>AndroidManifestBind啟動使用-BindService3publicclassMainAcextendsActivity{ButtonbtnStart,btnStop;TextViewtxtView;

ServiceConnectionserviceConnection=newServiceConnection(){@OverridepublicvoidonServiceCo

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論