service的启动方式
首先简单的说说,activity和service之间关系
1,Activity 和 Service 都是 Android 四大组件之一,他俩都是Context 类的子类 ContextWrapper 的子类,因此他俩可以算是兄弟关系吧!
2,Activity负责用户界面的显示和交互,Service 负责后台任务的处理。Activity 和 Service 之间可以通过 Intent 传递数据,因此可以把 Intent 看作是通信使者.
3,对于同一个app,activity和service都是在主线程中.(小知识:service中可以吐司的)...
service的启动方式 1,startservice 2,bindservice
1,采用start的方式开启服务
首先定义一个类继承service,在注册清单中配置service(四大组件都应该注册!),使用context中的startService(Intent)方法启动该Service.不使用时,调用stopService(Intent)方法停止该服务.
一旦服务开启跟调用者(开启者)就没有任何关系了。
开启者退出了,开启者挂了,服务还在后台长期的运行。
开启者不能调用服务里面的方法。
2,采用bind的方式开启服务
首先定义一个类继承service,在注册清单中配置service,使用Context的bindService(Intent, ServiceConnection, int)方法启动该Service,不再使用时,调用unbindService(ServiceConnection)方法停止该服务.
bind的方式开启服务,绑定服务,调用者挂了,服务也会跟着挂掉。
绑定者可以调用服务里面的方法。
浙公网安备 33010602011771号