通过网络的例子,生成的BookManager如下所示:service和client都是相同的java文件生成的。
这个类的例子添加book和查询book两个例子
客户端创建bookmananger方法:
bookManager = BookManager.Stub.asInterface(iBinder);
客户端里的iBinder,是binderProxy类的
创建一个proxy的例子
点击添加后
点击后调用
mRemote.transact(Stub.TRANSACTION_addBook, _data, _reply, 0);----》》
调用BinderProxy类里的public boolean transact(int code, Parcel data, Parcel reply, int flags) throws RemoteException
接着调用Binder里面的execTransact,执行了native函数后,会自动执行下面的图片函数,进入service服务端的代码,下面代码是单独的进程,在binder
进程里面,所以不需要担心这里的操作。