面试总共花费30天左右,才拿到了offer。
一面
1.自我介绍
2.项目
3.四大组件
4.activity生命周期
5.启动模式
6.线程状态
7.网络协议(每一层、还有TCP和UDP)
8.会不会网络编程
9.handler
10.JVM,内存模型那些
11.GC(有哪些方法那种问题)
12.项目中的数据库
13.HashMap、HashTable、ConcurrentHashMap
14.反问环节
二面
视频面试。这一面依旧是初试,应该是交叉面?
1.自我介绍
2.项目(这里花了好多时间emm,他会根据我项目一路提问)
3.算法题:字符串根据字典分割的问题。一开始给的解决方法时间复杂度太高,一直要求优化。还有一题我忘了……
4.TCP和UDP以及应用场景
5.JAVA与JS(为什么都喜欢问这个?)
6.其他忘了……也是挺基础的
7.反问
这一轮面试很发散,主要还是针对项目进行讨论,问的问题挺有针对性的(主要是项目)。
三面
1.mmap + native 日志优化?
2.广播和 EventBus 的区别?
3.常用设计模式你了解哪些?
4.跨进程通信有哪些?
5.简单讲讲 binder 驱动吧?
6.跨进程传递大内存数据如何做?
7.说说 ConcurrentHashMap 的实现原理说下,初始化大小是多少?
8.启动优化怎么优化?
9.你写的 rxpay 和 rxlogin 具体怎么实现的?
10.kotlin + fullter 方面的
四面
1.单例设计模式都写写,静态内部类是怎么保证线程安全的?
2.synchronized 底层实现原理,ReentrantLock 公平锁与非公平锁。
3.主线程等待所有线程执行完毕,再执行某个特定任务怎么实现?原理和源码看过没?
4.自定义 view 的一般流程,要注意些什么如何优化,点击事件和长按时间分别是怎么实现的?
5.四种启动模式,在源码分析中的原理是怎样的?
6.讲讲 bindService 的过程,你当初是怎么优化后台服务进程的?
7.开发中你都用到了哪些设计模式?说说当时具体的场景。为什么你要用方法工厂,另外两种呢?
8.RxJava 在使用过程中碰到了某些不友好的错误一般怎么解决?发现了内存泄露一般怎么解决分析,有没有碰到过系统服务内存泄露的问题?
9.你们用的 okhttp ?那你有没有做过一些网络优化呢?比如弱网环境。
10.给你个数 1 吧,比如 1000011 里面有几个 1 ?
11.快排了解不?最坏的情况是怎样?如果有大量重复数据怎么优化?
五面
1.讲讲 handler 的底层实现原理?
2.说说你做的日志记录优化?
3.你看过 binder 驱动的源码,说说他的内存映射过程,说说客户端等待服务端处理返回的流程,如果要跨进程传递大内存数据你具体会怎么做?简单写一写吧。
4.在公司做过哪些优化?
5.过程中遇到的一些最难解决的问题?
6.提到了动态修复替换加载 so ,那你知道怎么修复 class 吗?怎么修复资源呢?
7.还有什么要问的?
六面(HR面)
1.项目
2.薪资
3.反问环节
面试复习笔记
如何做好面试突击,规划学习方向?
面试题集可以帮助你查漏补缺,有方向有针对性的学习,为之后进大厂做准备。但是如果你仅仅是看一遍,而不去学习和深究。那么这份面试题对你的帮助会很有限。最终还是要靠资深技术水平说话。
网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。建议先制定学习计划,根据学习计划把知识点关联起来,形成一个系统化的知识体系。
学习方向很容易规划,但是如果只通过碎片化的学习,对自己的提升是很慢的。
同时我还搜集整理2020年字节跳动,以及腾讯,阿里,华为,小米等公司的面试题,把面试的要求和技术点梳理成一份大而全的“ Android架构师”面试 Xmind(实际上比预期多花了不少精力),包含知识脉络 + 分支细节。
在搭建这些技术框架的时候,还整理了系统的高级进阶教程,会比自己碎片化学习效果强太多。
网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
618156601)**
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!