浅谈车载 Android 开发趋势~

开篇

如今的互联网行业的就业形势不太理想,就拿“开猿节流”这件事来说,近几年时有发生,而且频率一年比一年高,不少人被迫开始选择转岗转行。正是如此不上的Android 开发萌生了转行做车载开发的想法。

据中汽协数据显示,2022年8月中国汽车出口量达30.8万辆,同比增长65%,这也是历史上首次超过30万辆。从今年前八个月整体情况来看,我国汽车出口量已经超越德国,仅次于日本汽车出口量。其中,新能源汽车1-8月出口量同比增长超九成,贡献了重要的增量。

欧盟也在今年6月正式宣布,27个成员国就“2035年完全禁止销售内燃机发动机汽车”的协议达成共识,届时欧盟境内将再无燃油车对市场出售。

燃油车的退出,也就证明了新能源将会全面覆盖燃油车市场无疑。

新能源的崛起,也直接影响到了传统车企,近几年国内已有不少传统车企转型开发新能源汽车(比如:BYD、吉利等),还有不少新生车企的诞生,这也就意味着需要大量的技术型开发人才,所以车载行业一下蹦出大量高薪Android开发岗位。

该岗位薪资水平平均收入在30k左右,收入水平对于许多Android应用工程师已经高出许多。

如何跨入车载?

在比亚迪面试的时,经常问关于ROM定制的问题,像手机启动、application启动,在车载里面几乎是必考,例如:

1.Application启动源码分析;
2.Activity&Window&View之间的关系;
3.UI绘制流程分析;
4.UI渲染流程分析;
5.子线程如何更新UI;
6.……

可以看出车企对于 Framework底层这块看的比较重要,一是从上面的面试题中,二是不少车企在招聘需求中就有明确说明。所以被问到这些问题也不足为奇了。

那转行进入车载的 Android开发需要学习些什么?

  1. USB通信和串口通信
  2. Automotive系统开发
  3. Android系统的底层
  4. HAL甚至于Native的一些运行原理
  5. 车机Luancher与系统应用
  6. ……

感觉一条条列举出来总感觉少了点什么,于是我将车载中Android 开发所需要学习的内容整理成了一个脑图形式,也方便大家区分中间的每个技术板块需要学习那些内容,如下:

为了帮助到大家更好入手车载,根据官方文档+行业大牛们一些指导,整理出了《Android 车载开发手册》+《Android车载开发学习手册》+《Framework 知识点汇总》,希望能帮助到大家,有需要的可以 点此处进行参考↓↓↓ 学习!!!

Android 车载学习手册

第一章——Android Auto概述

  1. 概述
  2. Android Auto
  3. Android Automotive OS
  4. 支持的应用类别

第二章——开发汽车媒体应用

  1. 构建车载媒体应用
  2. 添加对Android Auto 的支持
  3. 构建Android Automotive OS视频应用

第三章——构建 Android Auto即时通信应用

  1. 使用入门
  2. 声明 Android Auto 支持
  3. 导入 Android X 核心库
  4. 处理用户操作
  5. 向用户提供消息通知

第四章——构建车载导航和地图的注点应用

  1. 使用 Android for cars 应用库
  2. 构建车载导航应用
  3. 添加对 Android Auto 的支持
  4. 添加对 Android Automotive OS 的支持

第五章——构建 Android Automotive OS 视频应用

  1. 在 Android Automotive OS模拟器上适配测速应用
  2. 配置应用清单文件
  3. 针对 Android Automotive OS 优化应用

第六章——测试Android 车载应用

  1. 测试 Android Auto 应用
  2. 测试 Android Automotive 应用
  3. 针对手机屏幕测试应用
  4. 媒体应用的其他测试要求

第七章——分发 Android 车载应用

  1. 了解指南和要求
  2. 开发出优秀的车载应用
  3. Android 车载应用质量测试
  4. Android for Cars 条款
  5. 跟踪审核进度

第八章——适用于车载的Google Play服务

第九章——Android Automotive OS 通知

  1. 车内通知有何不同
  2. 通知中心
  3. 浮动通知
  4. 面向车载的 Notification API 变更和限制

有需要的可以通过↓↓↓ 方式进行参考学习!!!

有需要的可以复制下方链接,传送直达!!!
https://qr21.cn/CaZQLo?BIZ=ECOMMERCE

《Android车载开发学习手册》433页

Framework 知识点汇总

  1. Handler机制实现原理
  2. Binder原理
  3. Zygote部分
  4. AMS源码分析
  5. 深入PMS源码
  6. WMS

原文地址:https://blog.csdn.net/weixin_61845324

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


更新Android SDK到3.0版本时,遇到Failed to rename directory E:\android\tools to E:\android\temp\ToolPackage.old01问题,导致无法更新,出现该问题的原因是由于3.0版本与较早的sdk版本之间文件结构有冲突,解决
Android 如何解决dialog弹出时无法捕捉Activity的back事件 在一些情况下,我们需要捕捉back键事件,然后在捕捉到的事件里写入我们需要进行的处理,通常可以采用下面三种办法捕捉到back事件: 1)重写onKeyDown或者onKeyUp方法 2)重写onBackPressed方
Android实现自定义带文字和图片的Button 在Android开发中经常会需要用到带文字和图片的button,下面来讲解一下常用的实现办法。一.用系统自带的Button实现 最简单的一种办法就是利用系统自带的Button来实现,这种方式代码量最小。在Button的属性中有一个是drawable
Android中的"Unable to start activity ComponentInfo"的错误 最近在做一款音乐播放器的时候,然后在调试的过程中发现一直报这个错误"Unable to start activity ComponentInfo",从字面
Android 关于长按back键退出应用程序的实现最近在做一个Android上的应用,碰到一个问题就是如何实现长按back键退出应用程序。在网上查找了很多资料,发现几乎没有这样的实现,大部分在处理时是双击back键来退出应用程序。参考了一下双击back键退出应用程序的代码,网上主流的一种方法是下面
android自带的时间选择器只能精确到分,但是对于某些应用要求选择的时间精确到秒级,此时只有自定义去实现这样的时间选择器了。下面介绍一个可以精确到秒级的时间选择器。 先上效果图: 下面是工程目录: 这个控件我也是用的别人的,好像是一个老外写的,com.wheel中的WheelView是滑动控件的主
Android平台下利用zxing实现二维码开发 现在走在大街小巷都能看到二维码,而且最近由于项目需要,所以研究了下二维码开发的东西,开源的二维码扫描库主要有zxing和zbar,zbar在iPos平台上应用比较成熟,而在Android平台上主流还是用zxing库,因此这里主要讲述如何利用zxing
Android ListView的item背景色设置以及item点击无响应等相关问题 在Android开发中,listview控件是非常常用的控件,在大多数情况下,大家都会改掉listview的item默认的外观,下面讲解以下在使用listview时最常见的几个问题。1.如何改变item的背景色和按
如何向Android模拟器中导入含有中文名称的文件在进行Android开发的时候,如果需要向Android模拟器中导入文件进行测试,通过DDMS下手动导入或者在命令行下通过adb push命令是无法导入含有中文文件名的文件的。后来发现借用其他工具可以向模拟器中导入中文名称的文件,这个工具就是Ultr
Windows 下搭建Android开发环境一.下载并安装JDK版本要求JDK1.6+,下载JDK成功后进行安装,安装好后进行环境变量的配置【我的电脑】-——>【属性】——>【高级】 ——>【环境变量】——>【系统变量】中点击【新建】:变量名:CLASSPATH变量值:……
如何利用PopupWindow实现弹出菜单并解决焦点获取以及与软键盘冲突问题 在android中有时候可能要实现一个底部弹出菜单,此时可以考虑用PopupWindow来实现。下面就来介绍一下如何使用PopupWindow实现一个弹出窗。 主Activity代码:public void onCreat
解决Android中的ERROR: the user data image is used by another emulator. aborting的方法 今天调试代码的时候,突然出现这个错误,折腾了很久没有解决。最后在google上找到了大家给出的两种解决方案,下面给出这两种方法的链接博客:ht
AdvserView.java package com.earen.viewflipper; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory;
ImageView的scaleType的属性有好几种,分别是matrix(默认)、center、centerCrop、centerInside、fitCenter、fitEnd、fitStart、fitXY。 |值|说明| |:--:|:--| |center|保持原图的大小,显示在ImageVie
文章浏览阅读8.8k次,点赞9次,收藏20次。本文操作环境:win10/Android studio 3.21.环境配置 在SDK Tools里选择 CMAKE/LLDB/NDK点击OK 安装这些插件. 2.创建CMakeLists.txt文件 在Project 目录下,右键app,点击新建File文件,命名为CMakeLists.txt点击OK,创建完毕! 3.配置文件 在CMa..._link c++ project with gradle
文章浏览阅读1.2w次,点赞15次,收藏69次。实现目的:由mainActivity界面跳转到otherActivity界面1.写好两个layout文件,activity_main.xml和otherxml.xmlactivity_main.xml<?xml version="1.0" encoding="utf-8"?><RelativeLayout ="http://schemas..._android studio 界面跳转
文章浏览阅读3.8w次。前言:最近在找Android上的全局代理软件来用,然后发现了这两款神作,都是外国的软件,而且都是开源的软件,因此把源码下载了下来,给有需要研究代理这方面的童鞋看看。不得不说,国外的开源精神十分浓,大家相互使用当前基础的开源软件,然后组合成一个更大更强的大开源软件。好吧,废话不多说,下面简单介绍一下这两款开源项目。一、ProxyDroid:ProxyDroid功能比较强大,用到的技术也比较多,源码也_proxydroid
文章浏览阅读2.5w次,点赞17次,收藏6次。创建项目后,运行项目时Gradle Build 窗口却显示错误:程序包R不存在通常情况下是不会出现这个错误的。我是怎么遇到这个错误的呢?第一次创建项目,company Domain我使用的是:aven.com,但是创建过程在卡在了Building 'Calculator' Gradle Project info这个过程中,于是我选择了“Cancel”第二次创建项目,我还是使用相同的项目名称和项目路_r不存在
文章浏览阅读8.9w次,点赞4次,收藏43次。前言:在Android上使用系统自带的代理,限制灰常大,仅支持系统自带的浏览器。这样像QQ、飞信、微博等这些单独的App都不能使用系统的代理。如何让所有软件都能正常代理呢?ProxyDroid这个软件能帮你解决!使用方法及步骤如下:一、推荐从Google Play下载ProxyDroid,目前最新版本是v2.6.6。二、对ProxyDroid进行配置(基本配置:) (1) Auto S_proxydroid使用教程
文章浏览阅读1.1w次,点赞4次,收藏17次。Android Studio提供了一个很实用的工具Android设备监视器(Android device monitor),该监视器中最常用的一个工具就是DDMS(Dalvik Debug Monitor Service),是 Android 开发环境中的Dalvik虚拟机调试监控服务。可以进行的操作有:为测试设备截屏,查看特定进程中正在运行的线程以及堆栈信息、Logcat、广播状态信息、模拟电话_安卓摄像头调试工具