AndroidNDKBinder命名规则
创始人
2024-10-09 10:01:54
0

在 C++ 代码中正确地使用 Binder 交互所需的命名规则。

Binder 是 Android 所采用的一种进程间通信机制,Android NDK 为 C++ 开发者提供了使用 Binder 的接口。 在使用 Binder 时,应注意命名规则,以确保 C++ 代码与 Java 所使用的 Binder 接口相互兼容。

以下是一些使用 Binder 时应注意的命名规则:

  1. Java 类名必须与 C++ 类名相对应,且 Java 类名必须以“android.os.I”为前缀,C++ 类名必须以“Bp”或“Bn”为前缀。例如,对于 Java 类 SentinelInterface,相应的 C++ 类名为 BpSentinelInterface 或 BnSentinelInterface。

  2. 对于 Binder 接口的每个方法,C++ 函数名必须与 Java 方法名相对应。C++ 函数必须以“transact_”为前缀,后跟 Java 方法名的哈希值。例如,对于 Java 方法“getSentinel”,相应的 C++ 函数名可能是“transact_getSentinel_9dcb26dd”。

  3. 对于 Binder 接口中的数据结构,Java 中的字段名称必须与 C++ 中的字段名称相对应。Java 中的字段必须是 public static final 类型(类似于 C++ 中的常量),C++ 中的字段必须是 const 类型。

下面是一个使用 Binder 的示例(假设存在一个名为 SentinelInterface 的 Java 接口):

Java 代码:

public interface SentinelInterface extends IInterface { static final int GET_SENTINEL = IBinder.FIRST_CALL_TRANSACTION + 0; String getSentinel() throws RemoteException; }

C++ 代码:

class BpSentinelInterface : public BpInterface { public: explicit BpSentinelInterface(const sp& impl) : BpInterface

相关内容

热门资讯

透视ai代打!德普之星透视辅助... 透视ai代打!德普之星透视辅助软件是真的吗,德普之星的辅助工具介绍(透视)真是是有挂(有挂神器)-哔...
现就发布提示!闲逸辅助软件,w... 现就发布提示!闲逸辅助软件,wepoker插件下载,攻略教程(有挂讲解)-哔哩哔哩小薇(辅助器软件下...
透视黑科技!德普之星私人局辅助... 透视黑科技!德普之星私人局辅助免费,德普辅助器怎么用(透视)果然是真的挂(有挂透视)-哔哩哔哩1、玩...
目前来看!土豪联盟辅助器,wp... 目前来看!土豪联盟辅助器,wpk俱乐部辅助器,资料教程(有挂存在)-哔哩哔哩1、wpk俱乐部辅助器模...
透视私人局!德普辅助软件,德扑... 透视私人局!德普辅助软件,德扑圈有透视吗(透视)好像真的有挂(有挂方略)-哔哩哔哩所有人都在同一条线...
出乎意料的是!粤麻圈辅助器,微... 出乎意料的是!粤麻圈辅助器,微乐自建房怎么提高胜率,项目教程(有挂透视)-哔哩哔哩1、完成微乐自建房...
透视黑科技!如何下载德普之星辅... 您好,德普之星透视辅助软件是真的吗这款游戏可以开挂的,确实是有挂的,需要了解加去威信【4852750...
据统计!情怀国粹麻将开挂,新天... 据统计!情怀国粹麻将开挂,新天道联盟辅助器,策略教程(有挂秘籍)-哔哩哔哩新天道联盟辅助器辅助器是一...
透视模拟器!德普之星怎么开辅助... 透视模拟器!德普之星怎么开辅助,德普之星透视辅助(透视)确实真的是有挂(有挂攻略)-哔哩哔哩透视模拟...
受玩家影响!宝宝临海辅助器,小... 受玩家影响!宝宝临海辅助器,小程序财神十三张祈福,绝活儿教程(有挂秘诀)-哔哩哔哩小薇(辅助器软件下...