Android service讲解

service的生命周期

oncreat()建立service

startcommand()启动服务

onbind()绑定服务

unbind()解除绑定

ondestroy()销毁服务
当
当调用startservice()时就会建立服务 和启动服务

当调用stop()时就会调用ondestroy()

当你建立了一个服务,这整个系统只会存在一个服务 不管你启动多少次 超过一次 再用startservice()就只会调用oncreate方法

只要你是通过startservice启动服务的就必须调用stopservice销毁服务 且这个是不用管activity的

如果你是直接bindservice 系统会创建绑定服务但不会启动服务,且受activity的生命周期影响,后台不会直接运行 出发及再用startservice、

你绑定并启动了服务后不能直接用stopservice需要先解绑

既然启动操作是用来实现service的主要用途 ,那绑定操作是来干嘛的呢?

serviceconnect是用来绑定客户端和服务的

里面有两个方法 ,一个是正常连接下的,还有一个是异常连接的
当我们解绑后,不能再调用onbinder方法那我们怎么监听呢?
就在serviceconnect里面的onserviceconnect()方法里面实现

绑定类实际上是用来监听进度的

再onbind方法中要求我们放回IBinder类 我可以先构造一个内部类取继承Binder
再返回我们的Mybinder类 在我们的类中去实现监听方法

用bindservice()来监控进度 如果还有监控的话 先解绑 后绑定

发布了14 篇原创文章 · 获赞 5 · 访问量 455

猜你喜欢

转载自blog.csdn.net/Professional_6/article/details/102673810