Android開發之Service

來源:互聯網
上載者:User

標籤:

Service的建立:

建立一個類,繼承自Service即可

Service也是Android四大組件之一,需要在資訊清單檔中配置

Service的生命週期:

一.通過startService開啟

onCreate -> onStartCommand() -> onDestroy()

其他組件調用startService()後,首先執行onCreate(),接著執行onStartCommand(),直到自身或其他組件調用stopSelf()服務才會停止,最終被系統銷毀

二.通過bindService開啟

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

Service通過bindService方式開啟,需要調用unbindService解除綁定服務



bind方式啟動服務:

bingService()方法需要接收三個參數

第一個參數為Intent對象,用於指定要啟動的Service

第二個參數為ServiceConnection對象,監聽調用者與Service之間的串連狀態

第三個參數為flags,用於指定是否自動建立服務,指定為0是不自動建立,指定為BIND_AUTO_CREATE是自動建立



服務中除需重寫onCreate,onBind,onUnBind方法外,還需要一個內部類並繼承自IBinder,裡面定義的方法可以與調用者進行通訊

調用者需要建立一個內部類繼承自ServiceConnection來實現串連服務

令重寫的onServiceConnection方法中的IBinder對象轉換為自己的類對象

Android開發之Service

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.