1.Service是什么
Service是一个应用程序组件
Service没有图形化界面
Service用于处理一些耗时较长的动作
可以使用Service更新ContentProvider,发送Intent以及启动系统的通知等等
2.Service不是什么
Service不是一个单独的进程
Service不是一个线程
3.Service生命周期
Service首次运行时,会执行onCreate方法
再次运行时,由于Service在运行,所以不会执行onCreate,而是直接执行onStartCommand
4.启动和停止Service的方法
1.新建一个类,并继承于Service
public class MyService extends Service{
@Override
public IBinder onBind(Intent intent){
}
@Override
public void onCreate(){
System.out.println("Service Start...");
}
@Override
public int onStartCommand(Intent intent, int flags, int startId){
System.out.println("flags:" + flags + "; startId:" + startId);
return START_NOTE_STICKY;
}
@Override
public void onDestory(){
System.out.println("Service Stop...");
}
}
2.在AndroidManifest.xml文件中注册服务
<service android:name=".MyService"></service>
3.编写代码启动、关闭服务
public void startService(){
Intent intent = new Intent();
intent.setClass(ServiceActivity.this, MyService.class);
startService(intent);
}
public void stopService(){
Intent intent = new Intent();
intent.setClass(ServiceActivity.this, MyService.class);
stopService(intent);
}