android aidl调用进程间服务的方法
我就拿最近做的项目来说明了,首先创建一个IFMService.aidl的接口文件,在R.java的目录下会自动生成IFMService.java 的文件, 接口文件的内容如下:
public class FMService extends Service:实现如下:
在service里面实现get().的那些方法即可在当前app里面使用这个service了
那么如何在其他app里面使用到这个service呢?
在要使用上面服务的那个app的src目录下面新建一个目录树,要和IFMService的package相对应,比如本例的net.kindroid.fm,然后把生成后的IFMService.java文件拷贝到新建的这个目录树下面,那么在代码里面就可以使用了:
使用的方法和service的那个app类似,就可以调用我们刚刚写的那个service了,还是贴上使用的方法吧:
这样就实现了进程间的服务通讯了,具体的底层机制呢,大家研究一下binder机制吧,呵呵