1. Binder由哪几部分组成
1)在Android系统的分层结构中,Binder在每一层的对应结构, Framework/Native/HAL/Kernel
2)在同一层各个部分又由哪几部分组成?
2. Binder各层在整个Binder架构中担当的角色是什么?
3. interface_cast实质是什么,Android中将Binder通过面向对象的继承关系组织到一起,相互转化,能够这样相互转化的实质是什么?
实质就是内存对其。
4. Binder结构,在每次asInterface之后,得到的到底是谁的(Proxy端的对象还是Native端的对象)的Interface引用,说到底就是remote()方法或mRemote成员到底是谁的引用?
看看IMPLEMENT_META_INTERFACE和queryLocalInterface也许可以帮助你回答这个问题,实际上你得到的是一个Bp的对象。
5. Proxy的对象如何最终转到Native的对象?实质是Proxy引用如何最终能调用Native端的方法?
IPCThreadState::transact这个方法也许可以帮你回答这个问题。
6. Binder驱动到底干了什么?
提示:Binder两端一般都分属于不同的进程,但无论是Binder实体还是对实体的引用都从属与某个进程,都不能透明地在进程之间传输,那驱动就是一个翻译。
7.How to use Binder implement ourselves Application?