在Android studio 实现远程服务(Service)AIDL的方法与在eclipse中实现有些不同,Android studio中自带了AIDL创建的方式,而eclipse中需要手动创建;
下面简单介绍实现远程服务(Service)AIDL的方法;
一、 创建服务工程应用项目 RemoteDemo
2. 创建 RemoteService 服务类
3. 创建AIDL文件, PublicBusiness 接口类
在创建之前在目录 build-->generated-->source-->aidl-->androidTest-->debug下面发现还没有任何文件
创建 PublicBusiness AIDL
创建后会出现如下 : 左边的main目录下出现aidl文件夹和PublicBusiness.aidl文件和包,将PublicBusiness.aidl文件中的basicTypes 方法删除
4. 在 PublicBusiness接口类中写入提供远程调用的方法,在确保PublicBusiness.aidl所在的包名与项目中默认的包名一致,如果一致,点击 Build-->Make Project(也可以直接点下图箭头指向的地方),生成相应的Java文件。如果不一致,则改aidl的包名,改成一致,再点击生成,生成效果如图。
此时会发现在目录 build-->generated-->source-->aidl-->androidTest-->debug下面出现了编译的文件;
二、 创建使用远程服务中的工程应用项目 UseRemoteDemo工程:
1. 将 RemoteDemo中main目录下的aidl文件夹全部复制到 UseRemoteDemo工程 的main目录下即可;
三、下面是代码:
服务工程应用项目 RemoteDemo 代码:
注册服务:
MainActivity.java
RemoteService.java
PublicBusiness.aidl 接口类
使用远程服务中的工程应用项目 UseRemoteDemo工程
布局代码:
MainActivity.java
从RemoteDemo项目中复制的PublicBusiness.aidl文件内容不变;
运行后的结果: