如何搭建 Android Automotive 开发环境 | 开发者说·DTalk

本文原作者: 极豆科技

近几年,随着车辆联网率的提升,车企意识到软件和服务生态的重要性,为了满足车主用户对车载软件和服务的体验需求,急需加快数字化转型。

Android Automotive 是一个基本的 Android 平台,它运行预安装的 IVI 系统 Android 应用程序以及可选的第二方和第三方 Android 应用程序。Android Automotive 为汽车信息娱乐系统和主机提供了开放性、自定义性和可扩展性。

在 2019 年,极豆科技作为行业领先的品牌车主服务运营商受某德系豪华车企邀请,以软件和服务平台 Tier1 运营商和创新大赛 "技术协办方" 的双重身份,帮助众多参赛伙伴在创新大赛中实现创新,使用 Android Automotive 平台开发定制化的数字服务。

这之前我们已经熟悉 Android Automotive 的各种代码及架构。Android Automotive 是车载端的领先系统,我们希望通过自己的经验,带给车企、车主用户更多新功能和精彩、方便的数字化服务。所以我们首先要做的,就是基于支持的 Android 设备,编译出一套 Android Automotive 环境,帮助更多没有 IVI 设备的开发者,提高开发效率。

通过调研发现,市面符合硬件规格的开发平板对定制化开发的支持并不友好,因此,我们选择采用 "开发板+外接显示器" 的形式来进行研发,创造出与之契合的开发环境,具体步骤如下。

第一步,porting 移植

首先,需要寻找匹配的 Kernel,然后再将匹配 Kernel 移植到 AOSP 中。基于 Kernel 配置和 Hardware 要求去构建 Device 编译环境。

然而在开发过程中,我们发现,由于 Kernel 的 hostapd.te 模块存在问题,无法进行正常编译 - 

为解决此编译问题,需要在 Device manifest 中增加 hostapd 驱动集成来解决,即可完成编译 -

第二步,将 AutomotiveCar 移植到 Device 中,具体步骤是: 

  1. 基于 AOSP Car.mk 去整理编写 device_car.mk

  2. 在 Device 的 manifest.xml 增加对应的 hal 模块

  3. 在 AndroidProducts 导入 device_car

完成后,即可完成移植步骤。

第三步,经过编译和烧录,Android P Automotive 写入到开发板中,系统正常启动。开发环境便创建完成。

基于此 Android Automotive 环境,极豆科技开发团队将帮助其他开发者更加方便快捷的嵌套代码,快速开发出更多产品,从而实现快速、高标准地交付。

我们计划通过 "开发者说·DTalk" 平台分享更多 Android Automotive 的内容,与各位开发者共同交流学习。

关于极豆

极豆作为领先的品牌车主服务运营商,立足汽车前装市场,服务中高端品牌;以软件为载体,车主运营为核心;以 "让车更智能,让车主生活更愉悦" 为使命,为车企提供场景化车主服务、中台搭建及运维、资源聚合、用户运营、数据和流量变现等数字化车主服务完整解决方案,助力车企数字化转型,持续提升品牌力和运营收入。团队兼备成熟的 ToB 车企服务能力和 ToC 用户运营能力。凭借完善的业务能力及服务生态,极豆已成为奥迪、宝马、保时捷、大众、日产、丰田等十多家中高端车企的 Tier1 供应商,签约车辆数千万,覆盖全系车型,5-10 年长期服务。


长按右侧二维码

查看更多开发者精彩分享

"开发者说·DTalk" 面向中国开发者们征集 Google 移动应用 (apps & games) 相关的产品/技术内容。欢迎大家前来分享您对移动应用的行业洞察或见解、移动开发过程中的心得或新发现、以及应用出海的实战经验总结和相关产品的使用反馈等。我们由衷地希望可以给这些出众的中国开发者们提供更好展现自己、充分发挥自己特长的平台。我们将通过大家的技术内容着重选出优秀案例进行谷歌开发技术专家 (GDE) 的推荐。

 

 点击屏末 |  | 即刻报名参与 "开发者说·DTalk" 

 


相关推荐