用startService,bindService创建的服务只能在本应用程序内访问,如果要使得本程序的服务能够被其他应用程序访问,这时候就要使用远程过程调用(Remote Procedure Call,RPC)方式来实现,安卓定义了一种接口定义语言Android Interface Definition Language,简称AIDL。今天记录一下如何在Android Studio下创建AIDL Serivce。
建立ADIL Service的步骤比建立普通Service要多一些,主要有:
1、创建AIDL文件,在这里面定义远程接口。
2、生成Java接口文件。
3、建立一个Service的子类,并且记得在AndroidManifest.xml文件中配置。
在客户端调用ADIL Servie:
1、拷贝服务器端的AIDL文件,并生成Java接口文件。
2、用BindService来调用Service,与调用普通Serivce相类似,只是获取IBinder的方式有点不一样。