任何人都可以解释android中的未绑定服务和绑定服务之间的区别,并解释一下意图服务吗
谢谢
当应用程序组件通过调用bindService()绑定到服务时,该服务即被绑定。绑定的服务提供了一个客户端-服务器接口,该接口允许组件与该服务进行交互,发送请求,获取结果,甚至跨进程间通信(IPC)进行交互。
当最后一个客户端与服务解除绑定时,系统会破坏服务,除非该服务是由startService启动的
未绑定服务或已启动
当应用程序组件(例如活动)通过调用startService()启动服务时,将启动服务。启动后,即使启动该服务的组件被破坏,服务也可以无限期在后台运行。
但
关于Service类的最困惑实际上是围绕它不是什么:
服务不是独立的过程。Service对象本身并不意味着它在自己的进程中运行;除非另有说明,否则它将与它所属的应用程序在同一进程中运行。
服务不是线程。它本身并不是在主线程之外工作的一种方式(以避免Application Not Responding错误)。
那就是使用IntentService的地方。
IntentService是Service的子类,使用工作线程来
按需处理所有启动异步请求(表示为Intent),一次处理一个。客户端通过startService(Intent)调用发送请求;服务会根据需要启动,使用工作线程依次处理每个Intent,并在工作耗尽时自行停止。
希望能帮助到你 :)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句