AIDL 进程间通信

Android Interface Definition Language

服务器端

1、建一个.aidl结尾的文件。在里边定义接口。接口名字与文件名字相同,假设接口为

Interface  MyServer { String  write();}

2、Build工程后在gen目录下会生成一个MyServerJava文件, 其中包含实现接口Myserver的类 Stub 。

3、新建一个继承 MyserverStub 的类,假设名字为MyServerImpl实现 MyServer接口的方法 write()

4、新建一个MyService 类继承 Service。在onBind 的方法中返回一个 MyserverImpl实例并在 AndroidManifest 中的service intentFilter属性中添加 <action> 假设 action 值为 "com.test.myserver"

客户端

1、新建一个Acitivity 将服务器端的 。aidl文件连同包一起拷贝到 客户端的src目录下Build工程生成一个与 服务器端 一样的 MyServerJava文件。

2、在Activity中创建 ServiceConnection 在 onServiceConnected 中通过 

MyAIDL.Stub.asInterface(service) 获取 MyServer 接口实例。

3、绑定 服务器端 MyService 在 Intent action 中写入 服务器 清单中 service中的 action。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值