1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Android 车机初体验:Auto Automotive 傻傻分不清楚?

Android 车机初体验:Auto Automotive 傻傻分不清楚?

时间:2022-07-13 03:36:28

相关推荐

Android 车机初体验:Auto Automotive 傻傻分不清楚?

原创作者:小虾米君

转载地址:https://mp./s/3OL8boekmBId0UVU6amp8A

WWDC 上野心勃勃的 CarPlay 让不少车企感受了更多可能,也让不少车企察觉到了危机。

作为手机行业的一贯对手 Google 亦在车机上早有布局,包括 Android Auto 和 Automotive。虽推出已有数年,但中国开发者还很陌生,今天让我们来简单了解一下。

Android Automotive OS, AAOS

Android Automotive OS 简称 AAOS,是扩展自 Android OS 的操作系统、直接基于车载硬件运行。和 Android 一样是一个可定制程度非常高的全栈开源平台。

在电动车大浪潮下,可为车企的信息娱乐体验提供强大的技术支持。同时为了兼容性考虑,AAOS 支持专为 Android 打造的应用,以及专为 Android Auto 打造的应用。

Android VS Android Auto VS AAOS

Auto 和 Automotive 的命名比较相似,貌似分不清楚,实则区别非常明显。

首先,Android Auto 不是 OS。它是集成在 Android OS 里的 feature。当通过 USB、Wi-Fi 将 Android Phone 连接到支持 Android Auto 的车机上后,Android OS 将自动加载支持 Auto 模式下的 App 并将图像投屏到车机屏幕上。

跟 CarPlay 一样,其本质上是投屏。Phone 提供计算、渲染,车机只是 Display,Display 和按键回传 Input 的事件,Phone 处理好之后将新的帧数据回传进行 Display。

而 Android Automotive 是 OS,其归属于 AOSP 项目,代码也在 Android OS 之中。在编译的时候选择 automotive 的编译 target 即可生成车载机使用的 AAOS。

它支持加载 Android Auto 的 App,即将 Android Phone 和 AAOS 车机仍旧能像 Android Auto 一样使用。同时支持 Android OS 的 App,即不适配车载机亦能运行在 AAOS 上。这可能也是主流互联网 App 无意适配 AAOS 的部分原因,同时导致适配车机 UI 的任务落到了车企身上。

Develop Apps for Android Cars

模拟器

车机资源比较宝贵、稀少,很难像手机、平板设备一样非常便捷地在真机上开发和测试,而模拟器则是比较好的选择。Google 和车企都有相应的 AAOS Image 可供创建模拟器。

Generic AOSP Image

官方说 9.0 公开了 AAOS Image,打开 AS 的 SDK Manager 页面反复刷新和尝试都没有出现官方的 Image Item。偶然间还会出现如下的错误:

No System Images available. Are you connected to the internet?

即基于未知原因官方暂时下架了 AAOS 的 Image。

OEM Image

好在Volvo及旗下的Polestar作为最早开发 Android Automotive 车机的车企,对外公开了 Image。虽不支持 ARM 架构,可以在 PC 上安装体验。

在 SDK Manager 的 SDK Update Sites 页面可以添加如下的 Url 来添加 Volvo 的站点。

/sdk/volvo-sys-img.xml

添加好了之后,可以再次打开 SDK Manager 页面,就可以在 SDK Platforms 页面看到 Volvo 的 Image 了。

Check 之后会自动下载,像手机 Image 一样方便的创建 Automotive 车机模拟器。

启动之后,可以看到整体界面:

除了 Drawer、Video、座椅、空调等 Icon 以外还有 Map、BT、Google Assistant 这几个常用 App。

点击 Assistant App 可以进行语音操作:

点击抽屉按钮,可以看到除了 Map、BT、Google Assistant 还可以看到 Google Play、Car 使用说明这几个 App。

Car 使用说明 App 的截图:

Polestar2车型也对外公开了 Image,像上面一样添加如下的 Url 即可创建其模拟器。

/sdk/polestar2-sys-img.xml

不亏是一家的,界面和 Volvo 差不多,Launcher 的布局由列表布局改成了四宫格。

其他也有车企采用了 AAOS,比如Honda,只是没有公开。

Develop Apps

接下来就可以开发针对 AAOS 的 App 了,官方提供了 Car 相关的 SDK 供我们开发,即 Android for Cars App Library。为了兼容非 Car 的设备集成到了 AndroidX 中。

另外提供了针对导航等几个场景提供了开发 Sample:

/android/car-samples

这些 Sample 的优势在于,其兼顾了 Phone 和 Automotive 两种开发场景。将 App 共通的 Car 部分放置在 Common Module 里,各自的逻辑放在独立的 Module 中。

好处是编译 Phone Task 的话生成的 Apk 安装在 Phone 上,当其进入 Android Auto 模式之后会自动加载 Common 里的 Car 逻辑。而编译到 Automotive 的 Apk 可直接运行在 AAOS 上,以执行 Common 逻辑和特有的 Car 逻辑。

有点需要注意的是该 Sample 的Gradle 和 AGP 版本需要升级到最新,才能编译通过。

Phone 运行到 Auto

可以利用 DHU 将手机转为 Android Auto 模式,这样的话就可以测试 App 的 Auto 模式下的表现。

Automotive 运行在 AAOS

Automotive 的 Sample Apk 运行到 Volvo 和 Polestar2 模拟器中都是如下结果,貌似无法正常使用。

经过日志排查和文档确认发现 Sample 依赖了 Car 中最新的特性,需要 AAOS 去下载和安装最新版的Google Automotvie App HostApk。

可是遇到如下问题,无法安装:

该 App 需要 11 及以上的 AAOS 系统,而 Volvo 和 Polestar2 公开的最新的版本都是 10该 App 在 APK Downloader 等网站上均无法直接下载Volvo 的 AAOS Emulator 上 GooglePlay 无法连接网络

adb shell am start -n com.android.vending/com.google.android.finsky.carmainactivity.MainActivity

结语

虽然 Sample 运行遇到了点问题,但是成功地运行了 AAOS 模拟器,也感受了一下 Car 的开发 Module 构成。

推荐:

Android车载开发与设备调试学习手册

Automotive

1.Android Automotive 13 版本详情

2.Android Automotive 12 QPR3 版本详情

3.Android Automotive 12L 版本详情

4.Android Automotive 12L 版本详情

5.Android Automotive 12 版本详情

6.Android Automotive 11 版本详情

7.什么是 Android Automotive?

Android 虚拟设备

1.概览

2.用作开发平台的 Android 虚拟设备

3.构建自己的云模拟器

模拟器 USB 透传模式集成指南

1.已测试的加密狗

2.原生 USB 支持

3.蓝牙支持

4.Wi-Fi 支持

使用 Pixel 手机作为开发平台

1.注意事项

2.前提条件

3.代码同步及 build

4.设置设备以刷写 build

5.刷写 build

有需要的可以 直接点击此处参考↓↓↓ 学习!!!

测试工具和基础架构

1.系统性能工具

2.界面测试和框架

3.在 Android Automotive OS (AAOS) 中模拟网络

plete Automotive Tests in a Box

5.在 AAOS 设备上启用模糊测试工具

6.Spectatio:Automotive 测试框架

7.车载音频

8.音频焦点

9.音频路由

10.音量管理

11.创建播放器的替代方案

12.电台调谐器

13.蓝牙

14.按应用选择网络 (PANS)

15.屏幕和输入源概览

16.监控状态

17.按键输入

18.仪表板

19.有关防止驾驶员分心的准则

20.汽车用户体验限制 21.增强型视觉系统 (EVS)

22.Android Automotive 中的闪存磨损管理

23.位置信息绕过许可名单政策

24.电源管理

25.时间

26.启用 USB Gadget HAL API

27.用户与账号

28.SWITCH_USER

29.USER_IDENTIFICATION_ASSOCIATION

30.车载设备硬件抽象层

31.车载相机 HAL

语音

1.语音助理点读功能

2.语音交互简介

3.集成流程

4.应用开发

5.执行命令

6.测试和调试

人机接口

1.HMI 概览

2.AOSP 主机集成指南

汽车设置结果

1.概览

2.添加汽车设置

3.重新排列汽车设置

4.汽车设置中的“防分心优化”

5.汽车设置搜索索引

6.双窗格自定义

7.偏好设置字幕

自定义状态栏系统图标

1.特定图标的叠加

2.单个图标

3.配置图标

通知

1.概览

2.设置通知

3.浮动通知

车载设备界面库集成指南

1.车载设备界面库概述

2.将车载设备界面库集成到应用中

3.自定义应用

4.车载设备界面插件

5.包含 car-ui-lib 的 Google 软件包列表

6.添加自定义字体

7.自定义车载设备界面偏好设置

8.使用运行时资源叠加层来自定义工具栏

9.CarUiListItem

10.自定义 CarUiRecyclerView

11.排查运行时资源叠加层问题

12.车载设备界面库版本说明

拨号键

1.概览

2.技术详情

3.自定义准则

4.全局可配置值

5.工具栏

6.调试和测试

车载媒体

1.自定义 Media

2.系统组件和用户流

适用于 Automotive 的设备管理

1.个人设备

2.企业设备

旋控器

1.概述

2.开发应用

3.不使用车载设备界面库开发应用

4.适用于 OEM 的集成指南

系统界面

1.实现系统界面

2.SystemUIOverlayWindow 管理系统

3.SystemUIOverlayWindow Codelab

虚拟化

1.概述

2.架构

3.工具

有需要的可以 直接点击此处参考↓↓↓ 学习!!!

有需要的可以复制下方链接,传送直达!!!https://mp./s/5etgMk9R7AymokLz_l3wCg

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。