开发学院手机开发Android 开发 android binder机制实现 阅读

android binder机制实现

 2010-05-31 14:30:00 来源:WEB开发网   
核心提示:主要文件的路径如下所示:Java代码 < width="14" height="15" src="http://mintelong.javaeye.com/javascripts/syntaxhighlighter/clipboard_new.swf"

主要文件的路径如下所示:

Java代码 < width="14" height="15" src="http://mintelong.javaeye.com/javascripts/syntaxhighlighter/clipboard_new.swf" pluginspage="http://www.macromedia.com/go/getflashplayer">

frameworks/base/include/utils/*

frameworks/base/libs/utils/*

frameworks/base/include/utils/* frameworks/base/libs/utils/*

主要的类为:

RefBase.h :

引用计数,定义类RefBase。

Parcel.h :

为在IPC中传输的数据定义容器,定义类Parcel

IBinder.h:

Binder对象的抽象接口, 定义类IBinder

Binder.h:

Binder对象的基本功能, 定义类Binder和BpRefBase

BpBinder.h:

BpBinder的功能,定义类BpBinder

IInterface.h:

为抽象经过Binder的接口定义通用类,

定义类IInterface,类模板BnInterface,类模板BpInterface

ProcessState.h

表示进程状态的类,定义类ProcessState

IPCThreadState.h

表示IPC线程的状态,定义类IPCThreadState

各个类之间的关系如下所示:

android binder机制实现【zz】 - On<wbr>ce - 许兴旺的博客

在IInterface.h中定义的BnInterface和BpInterface是两个重要的模版,这是为各种程序中使用的。

BnInterface模版的定义如下所示:

Java代码 < width="14" height="15" src="http://mintelong.javaeye.com/javascripts/syntaxhighlighter/clipboard_new.swf" pluginspage="http://www.macromedia.com/go/getflashplayer">

template

class BnInterface : public INTERFACE, public BBinder

{

public:

virtual sp queryLocalInterface(const String16& _descriptor);

virtual String16 getInterfaceDescriptor() const;

protected:

virtual IBinder* onAsBinder();

};

BnInterface模版的定义如下所示:

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:android binder 机制

编辑录入:coldstar [复制链接] [打 印]
[]
  • 好
  • 好的评价 如果觉得好,就请您
      0%(0)
  • 差
  • 差的评价 如果觉得差,就请您
      0%(0)
赞助商链接