前言
我20年毕业于一所双非本科院校计算机专业,之前在小米实习和工作了一年,一直都是Android开发。 年中的时候因为个人原因打算离开小米到外面看看,投了很多简历,最终面试了字节跳动、腾讯、美团、快手,忧喜参半,本文对这这次面试做一个总结。
字节跳动
字节是一个同学内推的,也是我很想去的一个公司,整个面试流程下来体验很nice,效率很高,面试官人也很亲切。
- 手写代码:计算View树上所有view的数量,参数ViewGroup
- 主线程Looper一直循环查消息为何没卡主线程?
- RecyclerView相对ListView区别?
- Bitmap resize相关,设置option,decode
- 用MultiDex解决何事?其根本原因在于?Dex如何优化?主Dex放哪些东西?主Dex和其他Dex调用、关联?Odex优化点在于什么?
- Dalvik和Art虚拟机区别?
- 多渠道打包如何实现(Flavor、Dimension应用)?从母包生出渠道包实现方法?渠道标识替换原理?
- Android打包哪些类型文件不能混淆?
- Retrofit主要实现机制?Retrofit的作用、原理
- 动态代理静态代理区别?
- 模块化怎么做?怎么设计?接口发现暴漏怎么做?基于什么基本思想?
- MVC、MVP、MVVM应用和彼此本质区别?
- Glide缓存特点
- 擅长哪个方向?
- 算法题:两个线程分别持续打印奇数和偶数,实现两个线程的交替打印(从小到大)
- 模块化、工程化架构思想
腾讯是一个哥们帮忙内推的,我也挺想去腾讯的,但没有面过,能记住的内容就这么多了。
- GC机制;
- RxJava有没有了解;
- 内存泄漏怎么排查;
- app的页面突然卡了一下,怎么排查?
- ANR怎么排查?定义是什么?
- 使用过哪些开源库;
- 对OKHttp有哪些了解?这个框架设计怎么样?
- Databinding有哪些了解?
- EventBus了解吗?
- 安卓的注解有什么了解?
- RelativeLayout和LinearLayout怎么选?为什么?
- 自定义Layout主要有那几个流程?
- 滑动过程卡顿,刷新率太低,怎么排查?
美团是这几次面试中最顺利的一次了。
- tcp中的3次握手。get和post的区别
- TCP和UDP的区别,五层协议
- 线程和进程的区别,线程状态,同步锁,Java里面应用到同步锁的情景,Android哪里用到了同步锁
- 项目中做过哪些优化?简单说下。
- List中的ArrayList和LinkedList的区别,hashmap和hashtable的区别,hashmap的底层实现,如何解决hash冲突
- 算法,一个三叉树,求深度,求最大节点数
- IPC有哪些(Messenger,AIDL,socket),如果让你分类,如何将它们分类,为什么?
- Broadcast可以跨进程么?如果可以,是通过什么实现的
- 了解Binder么?
- 了解Service么?说下bindService和startService的区别?
- 项目中的bug,你是如何解决的?
这次面试流程比较长,快手感觉很注重算法,我后来也被HR答复算法需要加强,想去快手的话多刷点题吧。
- Android/ 布局优化
- Activity启动模式
- RecyclerView和ListView区别
- Handler机制,loop方法为何不会造成ANR
- View绘制流程
- SingleTop和standard启动模式下,生命周期回调有何不同
- onStart和onResume区别
- Java/ 面向对象三大特性
- Array和Linked区别
- HashMap底层
- 进程间通信方式
- equals和==区别
- 线程间加锁的方式
- 设计模式
- synchronized的不同使用
- 异常
- 线程池
- 创建线程的方式
- OS/ 死锁
- 网络/ tcp和udp的区别
- 合并k个有序链表
借此机会分享几套字节跳动、腾讯、美团、快手等公司2021年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分,希望能对你有帮助。
【2021字节跳动、腾讯、美团、快手Android开发面试总结】
文章图片
文章图片
上述【高清技术脑图】以及【配套的架构技术PDF】可以点击这里免费获取!
推荐阅读
- 移动互联网寒冬,Android 程序员的出路在哪里()
- 2022年,程序员如何在面试前刷题,顺利入职大厂()
- 面试提前准备,offer胜算翻倍!Android 高级开发面试题及答案解析!
- Android知识点及面试题(2022年Android中高级面试题汇总)
- 备战金三银四,阿里内部这份《2022年Android中高级面试题汇总》我先冲了~
- 谷歌程序员抱怨“招人难”,“金三银四”即将到来,我们该如何从这一群应聘者中脱颖而出()
- 2022年 Android 面试题(四大组件、UI、性能调优、kotlin....),在这凛冽的" 寒冬 "里,砥砺前行 !
- 2022年 (金三银四) 跳槽涨薪必备,五年 Android 高级开发大厂面经总结
- 世界这么大,Android 知识体系这么庞杂,该以什么姿态迎接金三银四()
- 张雪峰(你实现“财富自由”了吗())