Service是是Android系统中的四大组件之一
定义: Service是在后台处理一些耗时的逻辑, 或执行某些需要长期运行的任务的应用程序组件。
第一步:如何注册
快速创建继承Service的类.
<service
android:name=".MyService"
android:enabled="true"
android:exported="true" />
清单文件中会自动注册.
第二部:启动Service
Service的两种启动模式:
(1)应用组件通过调用 startService() 启动服务;
Intent intent = new Intent(this, MyService.class);
startService(intent);
(2)绑定: 应用组件通过调用 bindService() 绑定到服务
要先在Service类中创建一个继承Binder的类
public class MyBind extends Binder{
}
再在activity类中执行以下代码zhu
MyService2.MyBind myBind;
ServiceConnection serviceConnection = new ServiceConnection() {
@Override
public void onServiceConnected(ComponentName name, IBinder service) {
myBind=(MyService2.MyBind)service;
}
@Override
public void onServiceDisconnected(ComponentName name) {
}
};
public void bindservice(View view) {
Intent intent = new Intent(this, MyService2.class);
bindService(intent,serviceConnection,BIND_AUTO_CREATE);
}
注:在绑定模式下,当所有绑定到Service的客户端都解绑的时候,service会被销毁
解绑方法:
public void unbindservice(View view) {
unbindService(serviceConnection);
}
Service的特点:
1.是单例的 2.不包含界面 3.长时间在后台运行 4.生命周期运行在主线程