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);
- }