为什么车载行业一下蹦出大量高薪Android开发岗位?
Posted 初一十五啊
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么车载行业一下蹦出大量高薪Android开发岗位?相关的知识,希望对你有一定的参考价值。
当前社会的发展基本上离不开智能化,甚至以智能化为主旋律,从电脑到智能手机,再到如今的智能汽车,每次智能化的都会改变人们的生活,并带来一个前景广阔的新产业。
车载无疑是具备这种潜力的行业, 大量车企打出年薪百万招车载开发,招人还是难,所以就出现一种怪现象,车载开发行业 “薪酬无上限”
今年的传统 android 市场不景气,不仅难,而且卷。金九银十 没有出现以往的火爆程度 ,但是车载行业的招聘热度远远超出金九银十。
所以就出现了怪圈,传统的IT互联网各种吐槽不好找,行业冰封,大厂裁人,而车载行业又是一片热火朝天,大有技术革命之势。
给人的感觉车载和传统Android是两门不同的技术编写。完全不同的语言一样
为什么车载这么火爆呢?
说说车载行业;现在每家每户都购买小轿车,多的一人一辆,车辆需求大。现如今全球开始走向环保新能源。
欧盟今年6月正式宣布,27个成员国就“2035年完全禁止销售内燃机发动机汽车”的协议达成共识,届时欧盟境内将再无燃油车对市场出售。
可以看出燃油的退出,新能源全部覆盖。新能源汽车的市场无疑是巨大的。
国内迸发出蔚来、比亚迪、几何、问界、小鹏、威马、哪吒、吉利、极狐等等车企,当量新生的车企,意味着巨大的需求。所以就迸发出大量的Android车载岗位,传统燃油车企已经走向了生命末期,这种替代所导致迸发的车载岗位 是比较稳定的,也不用担心热度过了一地鸡毛的问题。
再看我们的Android车载工程师的行业如何,薪资对比图:
薪资平均收入在30k左右,收入水平对于许多Android应用工程师已经高出许多。
如何成功跨入车载呢?
例如在比亚迪面试的时,经常问关于rom定制的问题,像手机启动,application启动,在车载里面几乎是必考
1.比亚迪面试题必问-Application启动源码分析;
2.比亚迪面试题必问-Activity&Window&View之间的关系;
3.比亚迪面试题必问-UI绘制流程分析;
4.比亚迪面试题必问-UI渲染流程分析;
5.比亚迪面试题必问-子线程如何更新UI;
可以看出面试车载时 Framework可谓是重中之重,这个也可以从车企的应聘要求上可以看出来, 所以被问到这些问题 也不足为奇了
那我们转行进入车载 Android开发还需要学习哪些其他的呢?
USB通信和串口通信
Automotive系统开发
Android系统的底层
HAL甚至于Native的一些运行原理
车机Luancher与系统应用
……
9月20.21系列视频:
附赠资料:
腾讯Android开发笔记+2022Android十一位大厂面试真题+音视频60道面试题+Jetpack+Matrix+JVM
一丶腾讯Android开发笔记
1.Android工程师必备基础技能
涉及: 注解、泛型、Retrofit、架构动态编程技术原理、Butterknife、JavaSSit丶虚拟机丶并发内存丶Synchronize丶并发原理之线程池丶数据序列化
2.核心优化能力
涉及: 启动优化、内存优化、启动优化速度、卡顿优化、布局优化、崩溃优化、应用启动全流程(源码深度解析)等内容.
3.Framework
涉及:Framework通信、Framework底层服务、Framework事件机制等内容.
4丶Compose(开源项目)
5.音视频开发
涉及:C和C++基础语法,H264
编码基础和进阶,H265
编码原理和应用MediaCodec
硬解码,Media
内核源码,WeChat
视频通话。初级-中-高
附带音视频开发预习资料文档
涉及:视频区,视频压缩,音视频同步,FFmpeg,OPenGL,OpenSL ES,抖音美颜滤镜,交叉编译,视频变速,FFmpeg实现音视频同步
6.Android资深架构师
涉及:Arraylist
,Okhttp
,Retrofit
,图片加载,Dagger 2
,MVC
.MVP
.MVVM
,Jetpack Room
7.Android车载工程师
涉及:Android Auto
,汽车媒体应用,构建Android Auto
即时通信应用,构建车载导航和地图注点应用,构建Android Automotive OS
视频应用,测试Android
车载应用,分发Android
汽车应用,适用于汽车的Google Play
服务,Android Automotive OS
的通知.
8.Flutter高级工程师
涉及:Dart
语法,Flutter
动画丶组件丶网络请求以及Flutter3.0
简介。
9.Harmony OS
涉及:Ability
组件,分布式任务,事件总线,Harmony OS
线程,UI
自定义控件
10.Kotlin相关
涉及:对象丶类丶继承丶变量丶常量丶拓展函数等20多个内容
二丶2022最新Android十一位大厂面试真题(含答案)
1.百度篇
1.关于okhttp
和Retrofit
2.view
的绘制流程
3.触摸的传递机制
4.自定义view
主要重写哪个方法
5.讲一下策略模式和状态模式的各自的特点和区别
6.说一下线程安全,线程同步的原子性,可见性和有序性
7.讲一下双重检查锁中的 volatile
关键字的作用
8.讲一下jvm
的堆栈
9.二叉树的层次遍历
10.自定义Navigator
切换fragment
11.Navigation
使用和源码剖析
12.volatile
的作用
2.阿里篇
1.Android
插件化.Hook
插件化框架 ( Hook Activity
启动流程 | Hook
点分析
2.Android
中Handler
处理Runnable
任务的常见方法
3.讲讲对Handler
的认识
4.求二叉树中两个节点之间的最大距离。
5.谈谈对Binder
的认识
6.动态代理实现
7.ASM
的原理
8.内存泄漏常见场景以及解决方案
9.touch
事件源码问题。
10.Android
自定义崩溃收集器捕获java
层和native
层崩溃异常
11.如果 int 的值大于了 3 需要提示
12.介绍下 flutter
的启动流程
13.介绍下 flutter
与 weex
的区别
14.组件化介绍一下
15.webview
与 js
交互的实现方法
16.介绍下 flutter_boost
的原理
3.腾讯篇
1.讲一下MVVM, MVP,MVC
2.LiveData
在项目里的实践是怎样的,遇到了什么问题;有没有想过怎么去解决LiveData
膨胀的问题
3.Handler
,messageQueue
懂多少说多少,越详细越好
4.View
绘制的三个流程;onMeasure
中的measureSpec
,wrapContent
为什么会失效
5.内存泄漏是怎么避免的?LeakCanary
原理是什么,没看过源码的话现在想一下该怎么实现
6.项目里的webView
是如何优化加载速度的的
7.RecyclerView
和ScrollView
为什么不能一起使用
8.线程池用过吗,工作组件有哪些,OkHttp
用的是什么线程池,为什么要用
9.synchronized
锁升级的过程,为什么要设计这个锁升级
10.HashMap
的实现,如果要自己实现多线程安全的HashMap怎么操作
11.如果我想要自定义个任务有优先级的线程池,应该从哪些方面入手
12.为啥打开一个app
以后默认会显示白屏吗,为啥不是黑屏呢?
13.进程间通信方式有哪些,Binder
讲一下,和共享内存的区别是什么
14.动态代理和静态代理
15.数据结构和23种设计模式
16.RecyclerView
的性能优化怎么实践
17.堆排序实现
4.京东篇
1.Activity
相关(生命周期、启动模式)
2.service
的意义
3.Handler
内存泄漏相关
4.OKhttp
源码相关
5.手写Singletion
5.字节篇
1.弱引用与软引用,HashMap
的各个版本差异
2.什么是线程安全,如何实现线程安全 .常用的线程池种类,为什么要这么设计
3.单例常见的实现方式
4.DCL
为什么要加两层判断
5.ReentrantLock
如何实现公平锁的
6.线程池里面非核心线程什么时候会被回收
7.handler
机制,
8.AsyncTask
原理,
9.Activity
窗口层级,
10.binder
机制,
11.Activity
的启动流程,
12.mmap
,Intent
传输数据的限制,
13.ANR
原理,
14.RxJava
线程池的使用注意问题,
15.OKHTTP
拦截器
16.Activity
的启动流程
17.OKhttp
,Retrofit
18.布局优化,内存优化,网络优化,apk瘦身
19.kotlin
,
20.常用设计模式,
21.MVC,MVVM,MVP
22.main
方法执行之前发生了什么
6.Bilibili篇
1.启动Activity
的方法
2.intent
可以传递的数据
3.Activity
和Fragment
的关系,生命周期,如何传递数据
4.项目用到了ViewModel
,说说看他的原理,为什么Fragment
可以获取到Activity
的ViewModel
5.你说到了内存泄露,有用过别的内存检查的工具吗,什么时候会发生内存泄露
6.说说进程和线程的理解
7.请说说看mvp
和mvvm
模式有什么区别吗
8.JVM
的内存结构是怎样的,哪个地方不会出现内存泄露
9.App
的启动流程
10.对Handler
的理解,handler
的内存泄露了解吗
7.网易篇
1.线程进程
2.IPC
3.HashMap
4.创建线程三种方式
5.锁、volatile
6.动态代理
7.http
相关(https、响应码、请求方式)
8.Handler
9.Binder
10.view
绘制
8.小米篇
1.Android
启动模式
2.不同启动模式活动跳转的生命周期
3.handler
机制
4.一个线程中几个handler
同时发送一个相同的消息,怎么分辨哪个消息是哪个handler
发送的
5.Android
服务的生命周期
6.Android
持久化存储的方式
7.Android
广播的分类和使用场景
8.自定义view
三个方法,每个方法都要覆写吗
9.java
怎么使得一个同步方法变为异步方法
10.synchnoized
作用
11.java
抽象类和接口的区别
12.抽象类的方法一定要继承吗
9.携程篇
1.Glide
讲一讲。你为什么选择glide
2.Glide
三级缓存
3.Glide
怎么加载图片进Imageview
的
4.OKhttp
拦截器
5.get
和post
请求区别
6.项目里面内存优化
7.LeakCanary
8.Bitmap
高效缓存
9.项目中启动优化
10.渲染布局优化
11.ViewStub
懒加载
12.MVP
和MVVM
,谈谈你对它们的了解
13.设计模式项目里边有用过哪些
14.HTTPS
通信
15.JVM内存模型
16.怎么保证线程安全
17.垃圾回收gc
讲一讲
10.小红书篇
1.Java
深拷贝和浅拷贝的区别
2.自定义View
是怎么绘制的?ViewGroup?
3.Handler
机制,
4.TCP
和UDP
的区别
11.爱奇艺篇
1.Android
布局嵌套深有什么问题
2.kotlin
协程
3.HashMap
原理
4.算法:手写快排
5.Activity
启动模式
6.Activity A → B
的生命周期在这四种启动模式下的状态
7.有序广播如何实现的按顺序收到广播
8.SharedPreferences
的格式
9.xml
解析方式
10.json
与xml
的区别,json
为什么比xml
更好
11.Android view
绘制流程
12.surfaceView
13.机型大小适配
14.ANR
什么时候出现,如何排查
15.Android
动画
16.startService
与bindService
的区别
17.Service
保活方式
18.java
泛型
19.重写equals
方法需要重写hashCode
方法吗
三丶60道经典音视频面试题(含答案)
1.为什么巨大的原始视频可以编码成很小的视频?这其中有什么技术?
2.怎么做到直播秒开优化
3.直方图在图像处理里面最重要的作用是什么?
4.数字图像滤波有哪些方法?
5.图像可以提取的特征有哪些?
6.衡量图像重建好坏的标准有哪些?怎么计算?
7.AAC
和PCM
的区别?
8.H264
存储的两个形态
9.FFmpeg
:图像如何合成视频?
10.常见的音视频格式有哪些?
11.1080P
的意义
12.请解释颜色的本质及数字记录原理,并说出你知道的色域
13.请解释矢量图和位图的区别
14.请从光圈,快门速度,感光度,白平衡,景深中任意选2个进行叙述?
15视频分量YUV
的意思及数字化格式
16.在MPEG
标准中图像类型有哪些?
17.列举一些音频编解码常用的实现方案?
18.叙述MPEG
视频基本码流结构?
19.SPS
和PPS
的区别
20.叙述AMR
基本码流结构?
21.预测编码的基本原理是什么?
22说一说FFmpeg
的数据结构
23.说一说AVFormatContext
和AVIntFormat
之间的关系?
24.说一说AVFormatContext
, AVStream
和AVCodecContext
之间的关系?
25.说一说视频拼接处理步骤?(细节处理,比如分辨率大小不一,时间处理等等)
26.NV21
如何转换成I420
?
27.DTS
与PTS
共同点?
28.影响视频清晰度的指标有哪些?
29.编解码处理时遇到什么困难?
30.如何秒开视频?什么是秒开视频
31.如何降低延迟?如何保证流畅性?如何解决卡顿?解决网络抖动?
32.需要把网络上一段视频存储下来(比如作为mp4 ), 请实现并说出方法(第一个视频需要翻墙才能进)?
33.需要把网络上一段语音存储下来(比如作为mp3 ), 请实现并说出方法?
34.为什么要有YUV
这种数据出来?(YUV
相比RGB
来说的优点)
35.H264/H265
有什么区别?
36.视频或者音频传输,你会选择TCP
协议还是UDP
协议?为什么?
37.平时说的软解和硬解,具体是什么?
38.何为直播?何为点播?
39.简述推流、拉流的工作流程?
40.如何在直播中I
帧间隔设置、与帧率分辨率选定?
41.直播推流中推I
帧与推非I帧区别是什么?
42.常见的直播协议有哪些?之间有什么区别?
43.点播中常见的数据传输协议主要有哪些?
44.RTMP、HLS
协议各自的默认端口号是?
45.简述RTMP
协议,如何封装RTMP
包?
46.m3u8
构成是?直播中m3u8
、ts
如何实时更新?
47.何为音视频同步,音视频同步是什么标准?
48.播放器暂停、快进快退、seek
、逐帧、变速怎么实现
49.说说你平时在播放过程中做的优化工作?
50.你研究过哪些具体的流媒体服务器,是否做过二次开发
51.什么是GOP
?
52.音频测试的测试点,音频时延如何测试?
53.美颜的实现原理,具体实现步骤?
54.如何直播APP
抓包过来的文件,如何过滤上行,下行,总码率?
55.如何测试一个美颜挂件?
56.为什么要用FLV
?
57.如何测试一个美颜挂件?
58.平常的视频格式?
59.何为homebrew
?你用它安装过什么?常用命令有哪些?
60.RTMP
、HLS
协议各自的默认端口号是?
四丶Jetpack全家桶
1.Jetpack
之Lifecycle
2.Jetpack
之ViewModel
3.Jetpack
之DataBinding
4.Jetpack
之Navigation
5.Jetpack
之LiveData
五丶Android性能监控框架Matrix
1.Matrix
介绍
2.内存泄漏监控及原理介绍
3.内存泄漏监控源码分析
4.Hprof
文件分析
5.卡顿监控
6.卡顿监控源码解析
7.插桩
8.资源优化
9.I/O
监控及原理解析
六丶JVM解析
20.21号车载视频内容:
腾讯Android开发笔记+2022Android十一位大厂面试真题+音视频60道面试题+Jetpack+Matrix+JVM
以上是关于为什么车载行业一下蹦出大量高薪Android开发岗位?的主要内容,如果未能解决你的问题,请参考以下文章
收藏这份《Android车载系统应用指南》,助你轻松入门,斩获高薪
“2023热门岗位”Android车载系统开发工程师入门指南