Local Service
service 是Android四大组件之一,和Activity非常相似,只不过Service没有UI界面,运行在后台。
本地服务是依附在主进程上的,在一定程度上节约了资源,另外Local Service因为是在同一进程因此不需要IPC,也不需要AIDL,在主进程被kill掉之后,就会终止。
- 启动服务的方法
Context.startService(Intent intent);
Context.bindService(Intent intent,ServiceConnection conn,int flags); - Context.startService(Intent intent);
通过startService()方法启动,需要调用stopService()方法停止服务;
- 调用startService()的生命周期是:
Context.startService()->onCreate()->onStartCommand()-service running - 调用stopService()的生命周期是:
Context.stopService()->onDestory()->service stop - 通过startService的方式启动的服务,只有在调用了stopService()方法或者当前程序被kill掉之后才会停止服务
- 调用startService()的生命周期是:
Context.bindService(Intent intent,ServiceConnection conn,int flags);
- 调用bindService()的生命周期是:
Context.bindService()->onCreate()->onBind()->service is running - 调用unbindService()的生命
Context.unbindService()->onUnBind()->onDestory()-service stop 通过bindService的方式启动的服务,在调用了unbindService()方法或者服务绑定的对象被销毁之后会停止当前的服务。
- 调用bindService()的生命周期是: