Binder源码分析之Java层(原)

前面的几节中我们介绍了Native层Binder通讯的原理和用法,那么在Java层如何使用Binder通讯呢?其原理又与Native层的Binder有什么关系呢?         与Native层的ServiceManager类似,Android在Java层也有一个ServiceManager用于...

2014-03-11 14:38:51

阅读数:3091

评论数:1

Binder源码分析之Native层(原)

前面两节中介绍了Binder机制中的ServiceManager和Binder驱动,在这一节中,我们来介绍Native中的Binder通讯。         为了更好的理解过程,我们挑选Native中的MediaServer进行分析。     一、MediaServer加载过程         A...

2014-03-10 15:31:37

阅读数:6204

评论数:7

Binder源码分析之驱动层(原)

前言         在《Binder源码分析之ServiceManager》一文中我们介绍了利用Binder进行通讯的流程,即ServiceManager把自己注册为“管理员”之后,负责其他Service的add操作,或者其他Client的get操作。在这个过程中,有一些接口我们并没有深入分析,...

2014-03-04 19:30:50

阅读数:5921

评论数:4

Binder源码分析之ServiceManager(原)

ServiceManager作为Native层Service的管理员,有着极其重要的作用,主要表现两个方面:         1、对于服务端来说,系统所有的服务提供者都需要向ServiceManager注册。         2、对于客户端来说,所有客户端如果想要获得某个系统服务的代理,必须向Se...

2014-02-24 20:12:34

阅读数:4243

评论数:1

两种AIDL用法分析(原)

我们在前面介绍了关于AIDL的两种用法,第一种用法主要用在应用层中,第二种用法主要用在framework中。但是这两种用法中都提到了Stub、asInterface等关键字,在这一节中我们主要针对AIDL内部机制的分析来深入理解AIDL调用的过程。         为了便于分析,我们还拿第一节中我...

2013-09-27 10:11:19

阅读数:15781

评论数:2

Framework中的AIDL(原)

这一节中,我们来看一下系统中更为普通的AIDL用法。         为了便于分析,我们挑选了ITelephonyRegistry这个SystemService进行分析。这个服务的主要作用就是对通话相关的事件进行监听,我们把重心放在AIDL的实现结构上,不去关注ITelephonyRegistry...

2013-09-27 09:59:11

阅读数:5546

评论数:6

应用层的AIDL用法(原)

一、什么是AIDL服务   一般创建的服务并不能被其他的应用程序访问。为了使其他的应用程序也可以访问本应用程序提供的服务,Android系统采用了远程过程调用(Remote Procedure Call,RPC)方式来实现。与很多其他的基于RPC的解决方案一样,Android使用一种接口定义语言(...

2013-07-09 19:42:35

阅读数:8406

评论数:4

提示
确定要删除当前文章?
取消 删除
关闭
关闭