##混合的方式开启服务,服务的生命周期
* startService --- stopService
> onCreate() --> onstartCommand() --> onstartConnand() --> onDestory()
* bindService --- unbindService
> onCreate() --> onbind() --> onUnbind() --> onDestroy()
##为什么需要采用混合的方式开启服务?
> startService 服务长期后台运行,但是不可以调用服务里面的方法
> bindService 可以调用服务的方法,但是不能长期后台运行
> 采用混合的方式开启服务:1.服务长期后台运行 2.可以调用服务的方法
1.如果服务被绑定了,并且没有解绑,服务就不会停止了(停止不了)
2.如果服务被采用start的方式开启过,并且没有stop过,采用unbind服务,不会让服务停止。
##推荐使用的步骤:
1.startService() --> 保证服务长期后台运行。
2.如果要调用服务的方法 --> bindService()绑定服务。
3.就可以调用服务的方法。
4.unbindService解绑服务。
5.服务还是长期后台运行。
6.如果要停止服务 --> stopService()
转载于:https://blog.51cto.com/zengyinan/1721460