android实现绑定服务器,Android Service详解(四)---绑定服务BoundService详解之扩展Binder类...

这是第四篇文章主要讲的是BoundService中使用扩展Binder类实现

一、基础知识

1.什么是绑定服务

绑定服务是客户端-服务器接口中的服务器。绑定服务可让组件(例如 Activity)绑定到服务、发送请求、接收响应,甚至执行进程间通信 (IPC)。 绑定服务通常只在为其他应用组件服务时处于活动状态,不会无限期在后台运行。

2.实现原理

应用程序组件(客户端)通过调用bindService()方法能够绑定服务,然后Android系统会调用服务的onBind()回调方法,这个方法会返回一个跟服务端交互的IBinder对象。这个绑定是异步的,bindService()方法立即返回,并且不给客户端返回IBinder对象。要接收IBinder对象,客户端必须穿件一个ServiceConnection类的实例,并且把这个实例传递给bindService()方法。

ServiceCOnnection对象包含了一个系统调用的传递IBinder对象的回调方法。

注意:只有Activity、Service 、和内容提供器(content provider)能够绑定服务--富裕广播接收器不能绑定服务。

3.管理绑定服务的生命周期

Bound Service的生命周期:onCreate():创建服务

onBind():绑定服务,服务开始运行

onUnbind():取消绑定

onDestroy() :服务被停止

【详细说明:】

在程序中调用:context.bindService()会触发执行Service生命周期中的onCreate()、onBind()回调方法,此时服务开始运行;

o

你可能感兴趣的:(android实现绑定服务器)