平时做Android开发较多的用到Activity,与之对应的还有Service,下面将Service的绑定过程记录下来,以便更好的理解Android提供的自定义服务接口Service。
首先来看一张图:
图1 android本地服务示意图
Android的服务分为本地服务和远程服务两种,区别就在于服务与调用服务的对象是否在同一个进程中,此处只针对在同一个进程,即本地服务来加以说明。
(1) Activity中发起绑定请求
(2) localService调用onBindeed()API接口并返回一个localBinder对象给Activity
bindService()
Public classlocalBinder extends Binder{
LocalService getService(){
ReturnLocalService.this
}
}
(3) Activity在ServiceConnect中接收到返回的localBinder对象,并调用其getService()来获得LocalService的引用。
(4) Activity可通过LocalService的引用可调用LocalService的其他方法,绑定完成。
本文内容摘至《Android框架揭秘》