[转载]添加HIDL接口hash值(解VTS问题)

18 篇文章 10 订阅

https://blog.csdn.net/joggingpig/article/details/106184980

添加HIDL接口的hash值得:

若遇到如下VTS测试报告中的错误,需要自己添加接口hash值到current.txt中:

使用二进制工具hidl-gen,执行如下命令即可:

将输出的内容放入到软件包根目录中的current.txt文件中即可。

具体步骤

1.在软件包中找到需要生成hash接口的hidl位置:

 

2.

打开HIDL接口同级目录下的Android.bp文件:

 

name属性后为要生成hash值的软件包名称(hidl接口为软件包的一部分);

root属性后为软件包所在的根目录路径;

 

AOSPhidl接口所在的软件包的前缀、位置及类型:

 

3.

每个文件都可以通过软件包根目录映射及其完全限定名称找到

例如,若软件包为 vendor.xiaomi.harware.vibratorfeature@1.0并且向 hidl-gen 发送了 -r vendor.xiaomi.harware:vendor/xiaomi/hardware(软件包前缀决定了hidl接口的类型),

则接口文件应该位于 $ANDROID_BUILD_TOP/vendor/xiaomi/hardware/vibratorfeature/1.0/IVibratorFeature.hal与$ANDROID_BUILD_TOP/vendor/xiaomi/hardware/vibratorfeature/1.0/types.hal。

故可以使用命令

hidl-gen -L hash -r vendor.xiaomi.harware:vendor/xiaomi/hardware -r android.hardware:hardware/interfaces -r android.hidl:system/libhidl/transport vendor.xiaomi.harware.vibratorfeature@1.0 >> vendor/xiaomi/hardware/interfaces/current.txt

具体指定生成某一个接口的hash值,例如

hidl-gen -L hash -r vendor.xiaomi.harware:vendor/xiaomi/hardware -r android.hardware:hardware/interfaces -r android.hidl:system/libhidl/transport vendor.xiaomi.harware.vibratorfeature@1.0 ::types.hal>> vendor/xiaomi/hardware/interfaces/current.txt

hidl-gen -L hash -r vendor.xiaomi.harware:vendor/xiaomi/hardware -r android.hardware:hardware/interfaces -r android.hidl:system/libhidl/transport vendor.xiaomi.harware.vibratorfeature@1.0 ::IVibratorFeature.hal>> vendor/xiaomi/hardware/interfaces/current.txt

Note:(1)current.txt文件若不存在可自行创建;(2)若已有current.txt文件存在,则追加执行命令生成的内容;(3)标黄的部分术语为”完全限定名“

 

关于hidl-gen:

1.hidl-gen 是HIDL compiler,功能:Compile .hal file to .cpp and .java

  hidl-gen 的源代码路径为:$ANDROID_BUILD_TOP/system/tools/hidl

  截图为该目录下的Android.bp文件,显示了编译生成hidl-gen工具所需的源文件及依赖的模块:

 

 

2.在编译android源码之后,二进制工具hidl-gen存在于$ANDROID_BUILD_TOP/out/host/linux-x86/bin/hidl-gen:

 

3.hidl-gen为二进制的可执行文件,使用 “hidl-gen --help"命令可以查看相关参数信息,如下图:

 

若需要了解更多具体的相关知识,请参看

https://source.android.com/devices/architecture/hidl/hashing

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值