Android Binder之经典好文

来源:互联网 发布:淘宝人工客服在哪里找 编辑:程序博客网 时间:2024/04/29 11:37

Binder IPC作为Android的核心,作为Android的开发者必须对其熟练掌握(至少在原理及如何使用方面),强烈推荐如下文章:

1)理论篇

        Android之所以采用Binder作为进程间IPC通信机制,主要体现在效率和安全上两方面(与Linux上传统的管道、System V IPC和socket相比),详细原理介绍请参见:” Android Bander设计与实现 - 设计篇 “ - http://blog.csdn.net/universus/article/details/6211589

        值得一提的是,Android既支持实名Binder,也支持匿名Binder。实名Binder是通过将名字和Binder实体注册给ServiceManager,外界通过名字查询ServiceManager便可以获取到相应的XXXService在客户端的代理(BpXXXService)。而匿名Binder是在通过实名Binder建立好的client和server端的Binder连接基础上,由Server端透过该Binder连接将新创建的Binder实体传给client(这个新创建的Binder实体并没有向ServiceManager注册,所以外界无从获得)。客户端在实名Binder和匿名Binder的具体用法上并无区别。


2)应用篇

          有了Binder Driver的支持,Framework层是如何设计及使用的呢,请参考:

          ” Android Binder之基本类介绍 “ - http://blog.csdn.net/mediatec/article/details/9968713

          ” Android深入浅出之Binder机制 “ - http://www.cnblogs.com/innost/archive/2011/01/09/1931456.html


        认真读完上述文章,相信会对BpBinder、BBinder、ServiceManager、Binder Driver、XXXService、BnXXXService、BpXXXService整体工作flow至少知道个大概,细节就只能自己去”Read The Fucking Source Code“。有了Binder基础,便可以开始Android的进一步学习了。