Service是什麼
Service是一個android 系統中的應用程式組件,它跟Activity的層級差不多,但是他沒有圖形化介面,不能自己運行,只能後台運行,並且可以和其他組件進行互動如更新ContentProvider,Intent以及系統的通知等等。其啟動方式有兩種:context.startService() 和 context.bindService()。Service通常用來處理一些耗時比較長的操作。
Service的編寫
建立一個類(這裡為FirstService)繼承android.app.Service,並覆蓋以下方法:
onBind(Intent intent) Return the communication channel to the service.
onCreate() Called by the system when the service is first created.
onStartCommand(Intent intent, int flags, int startId) Called by the system every time a client explicitly starts the service by calling startService(Intent), providing the arguments it supplied and a unique integer token representing the start request.
onDestroy() Called by the system to notify a Service that it is no longer used and is being removed.
AndroidManifest.xml檔案中添加service配置 複製代碼 代碼如下:<service android:name=".FirstService"></service>
在Activity中啟動和停止Service的點擊事件的編寫 複製代碼 代碼如下:class StartServiceListener implements OnClickListener {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setClass(TestActivity.this, FirstService.class);
startService(intent);
}
}
class StopServiceListener implements OnClickListener {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setClass(TestActivity.this, FirstService.class);
stopService(intent);
}
}