当前位置: 首页 > news >正文

HIDL 和 AIDL 的历史背景

  • HIDL (HAL Interface Definition Language)

    • Android 7.0 Nougat(2016年) 的发布,Google 引入了 HIDL。它被设计为硬件抽象层(HAL)的接口语言,用于在 Android 系统服务和底层硬件驱动之间建立接口。HIDL 的目标是为 Android 系统的更新提供更好的模块化和版本兼容性,尤其是在项目 Treble 引入之后。首次发布:HIDL 是在 Android 8.0 Oreo 时作为项目 Treble 的一部分发布的,旨在改进 Android 系统更新的效率用于定义硬件抽象层 (HAL) 接口。

    • HIDL 的主要目的是提供一种稳定的接口定义语言,使得 HAL 可以在不同版本的 Android 系统之间保持兼容性。

    • HIDL 支持 C++ 和 Java 后端,并且提供了丰富的类型系统和接口定义功能。、

  • AIDL (Android Interface Definition Language)

    • AIDL 从 Android 1.0 开始引入,是 Android 框架中一项基础的 IPC 机制,主要用于进程间通信 (IPC)。

    • AIDL 最初主要用于 Java 环境,但在 Android 11 中,Google 扩展了 AIDL 的功能,使其支持 C++ 和 Rust 后端。

    • Android 11 中引入的 AIDL 跨平台通信功能,使得 AIDL 可以用于定义 HAL 接口,从而替代 HIDL。

AIDL 替代 HIDL 的历史和现状

在 Android 10(2019年)之前,HIDL 一直是 HAL 的主要接口定义语言。但自 Android 10 起,Google 开始逐步将 AIDL 引入到底层 HAL 层,允许其作为 HIDL 的替代品,尤其是在 HAL 模块化和简化开发方面有了显著进展。

  • AIDL 替代 HIDL:从 Android 11 开始,Google 正式推荐在新开发的 HAL 接口中使用 AIDL,而不是 HIDL。这主要是因为 AIDL 具备更简洁的语法、易于开发者理解和维护,同时也减少了学习新语言的成本。

Google 推荐 AIDL 的原因和趋势

  • Google 推荐时间:Google 开始强烈推荐使用 AIDL 代替 HIDL 的时间点是 Android 11 发布时(2020年)。
  • 趋势:HIDL 是否会被放弃
    • 长期趋势:根据 Google 的规划,HIDL 逐步淡出新开发中的 HAL 接口是大势所趋。HIDL 主要仍会在现有的接口中保留,尤其是那些在 Android 10 之前开发的设备。但未来的开发工作和接口定义将更多地基于 AIDL。
    • AIDL 优势:相比 HIDL,AIDL 的优势在于它更广泛地用于 Android 应用层,同时开发工具链成熟,且社区支持更广泛。因此,AIDL 成为 Google 推动的新方向。

总结来看,HIDL 在现有系统中仍有用武之地,但其新开发中的作用正在逐步减弱,AIDL 的替代趋势越来越明显,特别是在 Android HAL 层。


http://www.mrgr.cn/news/39057.html

相关文章:

  • MongoDB的查询/超详细
  • 类和对象1
  • 16.网络编程(下篇)
  • [C++] bitset 按字节解析为std::string
  • 在Python中,使用Pillow(PIL的更新分支)库来合并两张图片成一张上下结构的图片
  • 存储技术(CXL、open-channel SSD)
  • k8s中,ingress的实现原理,及其架构。
  • 加速 Python for 循环
  • 解锁电商数据宝藏:API 接口采集与接入演示
  • 一文读懂 Git fetch 和 Git pull 的终极区别(带实验结果)
  • 四十、多云/混合云架构设计(概念设计原则)
  • C++(Qt)软件调试---内存调试器Dr.Memory(21)
  • 我想注册一批账号做矩阵,需要每次注册都切换一个ip吗
  • 摩尔平台今日学习点
  • Python运算符
  • Python中深拷贝和浅拷贝
  • centos9 nginx 版本
  • 打造高业绩朋友圈:策略与实践
  • stm32 bootloader跳转程序设计
  • PMP考试没通过可以重考吗?补考费多少?