最后
其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。
下图是我进阶学习所积累的历年腾讯、头条、阿里、美团、字节跳动等公司2019-2021年的高频面试题,博主还把这些技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节
整理不易,望各位看官老爷点个关注转发,谢谢!祝大家都能得到自己心仪工作。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
-
openGL渲染模式
-
Android中的动画有哪些它们之间的区别
-
谈谈mvvm
A公司二面
-
讲之前做的项目负责哪块,根据业务采用什么架构
-
使用过哪些设计模式,项目中遇到哪些棘手的问题,如何解决的。
A公司三面
这个是hr说,整体问下以前公司的情况等问题
感受:自己简历上写的东西要熟悉,基本面试官都是根据简历来问的。对自己以前做的项目也好好梳理,提前组织好语言,挖掘项目闪光点。
B公司一面
-
java引用,以及引用队列,以及使用场景
-
拆装箱
-
LeakCanary
-
map
-
线上性能监控
-
SharedPrefrence 遇到的问题
-
手写算法
B公司二面
-
Handler
-
进程间通信
-
序列化
-
动画
-
native崩溃捕获原理
-
结合项目提问
-
Recyclerview的点击事件原理
-
启动一个空的apk,回启动几个线程
-
手写算法
B公司三面
-
跳槽原因
-
原来公司规模
-
预期薪资
-
个人优势
感受:
1.简历上写的一定要了解,并且知道原理
2.多熟悉项目,找出一些能聊得功能点
3.崩溃捕获,以及解决(java ,native)
4.优化需要知道(大厂都会问)
5.了解由点到面,需要把知识连贯起来
6.还有如果想要高薪,一定要多跳槽,一般大厂工资涨幅都是有限度的,最高涨幅百分之30,除非你特别牛皮
C公司一面
-
MediaCodec连环炮:MediaCodec报错,只有错误码,没有任何其它信息,如何解决?使用MediaCodec遇到了哪些问题?同步使用和异步使用有什么区别?
-
如何计算音频帧,一帧音频帧有多大
-
YUV基础知识,相比于RGB减少了多少空间,YUV 各个分量都是0实际渲染出来是什么颜色的,NV21和NV12有什么区别
-
MP4是如何存储音视频文件的,它是什么结构
-
OpenSL 相关的问题,如何使用。可以干什么不可以干什么
-
结合项目问题
C公司二面
1.SurfaceView和TextureView区别
2.OpenGL ES相关问题,MVP矩阵左乘和右乘有什么区别,什么是外部纹理,为什么叫外部
3.OpenGL如何渲染一个View
4.VBO是用来干嘛的解决什么问题
5.结合项目问问题
C公司三面
1.项目是什么架构,如何设计的,为什么这么设计
2.算法题:字符串反转
3.平时如何学习的
感受:音视频开发感觉OpenGL ES问的比较多
D公司一面
1.问的项目中哪些用到了hook技术,是怎么实现的
2.Okhttp底层原理
3.点击应用图标的启动流程
4.hashmap在java7和java8的区别,为什么要引入红黑树
D公司二面
1.项目是怎么搭建的,用到了哪些技术点
2.arouter用到了什么技术点,是用来解决什么问题
3.socket底层原理
4.一个功能是如何从分析需求到落地的
5.如何带领团队的
感受:主要简历要写的好,尽量围绕简历上的点来刷面试题,不一定都要研究透彻,被问到自己不熟的点,可以尽量尝试着往自己熟悉点带,例如之前我被问到pms是怎么管理package信息的,我就说目前我对pms了解不深,主要也是研究了ams,然后就把自己了解的说一下就好了。
毕业时选择的是一家非一线大厂的公司,在这边工作的近两年时间里,业余学习了许多 Android 相关的专业知识(因为不忙),但是由于业务原因,且公司发展一直在走下坡路,我在项目上的经验比较欠缺,因此考虑进一家大厂继续磨练磨练自己。
这次面试也暴露出了我的一些问题,最主要的话还是业务项目经验上不太足,所幸面试到的公司基本上都通过了,可能是因为我在 Android 基础上还可以吧。面试也是一种能够快速地发现自己缺点与不足的方法,可以更好地提高自己。
关于算法题:个人感觉有些八股了,也比较讨厌刷题,只写了剑指offer和leetcode上hot前百中所有easy难度的题,以及几道中等题,总共估计不超过100道吧。。。面试的时候感觉算法题这块都不是很难,大概也许可能是运气好呗。
关于面试的充分准备
一些基础知识和理论肯定是要背的,要理解的背,用自己的语言总结一下背下来。
虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,我能明显感觉到国庆后多了很多高级职位,所以努力让自己成为高级工程师才是最重要的。
好了,希望对大家有所帮助。
接下来是整理的一些Android学习资料,有兴趣的朋友们可以关注下我免费领取方式。
①Android开发核心知识点笔记
②对标“阿里 P7” 40W+年薪企业资深架构师成长学习路线图
③面试精品集锦汇总
④全套体系化高级架构视频
**Android精讲视频领取学习后更加是如虎添翼!**进军BATJ大厂等(备战)!现在都说互联网寒冬,其实无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!现如今市场上初级程序员泛滥,这套教程针对Android开发工程师1-6年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
i6-1715145241323)]
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!