传统 Hal 开发指南1 —— 开发环境准备

💡 原文中文,约2300字,阅读约需6分钟。
📝

内容提要

本文介绍了传统HAL开发环境准备,包括Ubuntu1604模拟器和Android7.0源码及内核源码的准备和编译,以及Linux驱动和HAL模块的编写,JNI层代码的修正,硬件服务模块的增加和App的编写。还介绍了搭建开发环境的步骤,包括源码下载、软件安装和源码编译,以及适用于模拟器的内核编译步骤。

🎯

关键要点

  • 本文介绍传统HAL开发环境准备,包括Ubuntu1604模拟器和Android7.0源码及内核源码的准备和编译。
  • HAL层以so库的方式存在,Framework层通过JNI加载这些so库,并通过Binder服务向App提供硬件操作接口。
  • 开发环境准备步骤包括下载源码、软件安装和源码编译,以及适用于模拟器的内核编译步骤。
  • 需要使用Android 7.0.0_r1的系统源码和对应内核,建议使用VMWare安装Ubuntu1604虚拟机。
  • 下载源码时可能遇到Python版本问题,解决方法包括在Ubuntu2204上同步源码或直接下载单分支源码。
  • 安装编译Android所需的软件,包括openjdk、g++、lib32等。
  • 编译Android 7源码时可能出现Jack server相关错误,需修改配置文件解决。
  • 下载并编译适用于模拟器的内核,编写编译脚本并执行。
  • 自定义内核启动并检查版本,完成开发环境的建立。
➡️

继续阅读