Service是Android四大组件之一。
它主要用于在后台处理一些耗时的逻辑,或者去执行某些需要长期运行的任务。
一、方法描述
- onCreate():
在服务第一次被创建的时候调用。 - onStartCommand():
每次服务启动的时候调用。 - onBind():
当其他组件通过bindService()来绑定服务时,系统调用该方法。 - onUnbind():
解除绑定的时候调用。 - onDestroy() :
在服务被销毁的时候调用。
二、startService
创建服务类
public class MyService extends Service {
public MyService() {
}
@Override
public void onCreate() {
super.onCreate();
Log.d("MyServiceTest", "onCreate: ");
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
Log.d("MyServiceTest", "onStartCommand: ");
return super.onStartCommand(intent, flags, startId);
}
@Override
public IBinder onBind(Intent intent) {
Log.d("MyServiceTest", "onBind: ");
return null;
}
@Override
public void onDestroy() {
super.onDestroy();
Log.d("MyServiceTest", "onDestroy: ");
}
}
启动Service和停止Service
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private Button startService;
private Button stopService;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
startService = findViewById(R.id.start_service);
stopService = findViewById(R.id.stop_service);
startService.setOnClickListener(this);
stopService.setOnClickListener(this);
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.start_service:
Intent startIntent = new Intent