Android 春招面经:二本渣院面试网易被拒,最终终于拿到腾讯
面试情况
学习情况
Android 的入门主要学习了《第一行代码》
Andr
oid 进阶学习《Android 开发艺术探索》,面试必读,重点知识我反复看了好多遍。
Android 的面经学习简书厘米姑娘,也是我腾讯的内推人,非常感谢她。
java 基础学习了《java 编程思想》,看源码。
java 总结学习《码出高效》,这本书对知识点总结的很好,面试回答的时候我都是根据这本书的总结来回答的。
jvm 学习《深入理解 java 虚拟机》,必读,我是背了重点的内容,对于安卓来说,只需要熟悉重点章节就可以了。
计算机网络:《计算机网络》谢希仁的,熟悉重点部分就可以了
项目两个
自己做了一个学校驾校的小应用
针对阿里面试,寒假之前做了语雀的 app
奖项
--
acm 奖牌 0,算法超级渣,《剑指 offer》都没刷完
省里面超级水的应用开发比赛三等奖,二等奖
腾讯一面
(一面面试官很 nice,但是发短信约时间之后,鸽了我 4 个小时,我上课时打过来,约晚上,结果鸽了我三天,之后我主动发短信约时间,答应了之后结果又鸽了我。。。orz)
自我介绍
自我介绍时说过自己看过 EventBus 源码,然后让我谈谈事件总线的理解。
EventBus 会有什么问题吗?
EventBus、接口回调、观察者模式的使用场景说一下。
项目什么地方用到数据的持久化,说一下。
Activity 的生命周期,弹出 dialog 和一个 activity 的 dialog 生命周期有什么区别?
Activity 的启动模式,应用场景,然后举了很多微信的场景,让我去选择用那种启动模式,说下理由。
Activity 进程的优先级。
如何防止微信不被系统杀死?
service 两种启动模式,区别
两种启动模式,如果我在退出 Activity 的时候没有退出 service 会怎么样。
设计一个图片浏览框架,(线程池,lru 缓存,brabra 的说了一堆)。
有一个很大很大的图片加载到内存上,不能降低清晰度和压缩图片你怎么解决?(提示我局部显示?我没懂)
如何适配不同厂商的手机,然后设计模式,brara 又说了一大堆,最后还说到 jetkins 自动部署上面去了
AsyncTask 源码分析,每个方法在哪个线程执行的?
一面面试官真的很好,有些你不懂的他还举例教你,一面我觉得难度比较大,常规的背题肯定会不满意的,题目比较少,引申出来的知识点却很多,大部分时间都是我在谈自己的解决思路然后分析到知识点的源码上面去,比如说像如何防止微信不被杀死这种,其实我说了常用的进程保活思路,它还要我分析其他情况
面试官说我不错,叫我明天准备二面,电话一挂,我就愉快地去吃饭,吃着饭看状态灰了,这谁顶得住啊~
回去看完电影之后,再查一下状态,变成了复试,估计之前是到时间简历被释放了。
腾讯二面
(二面总监/面委,由于开会,鸽我半个小时)
上来大数相乘,我做的眼泪都快流出来了。
put 和 post 的区别,应用场景。
看了我的 flutter 项目,我改了一个框架,问我这个框架。
让你设计一个跨平台的框架,你怎么设计(这里我谈了 flutter 的架构)。
https 的流程。
fragment 的懒加载。
一个商场里有一个电影院,你会把厕所建设在哪里,说一下你的理由?
hr 面
(鸽了我 20 分钟,腾讯都是大猪蹄子?哈哈~~开玩笑,面试官真的很忙,有时候换位思考一下,心态好点)
自我介绍
为什么选择微信?
对我们了解吗?
愿不愿意来
家里的情况
什么时候可以来实习,可以实习到什么时候
(入职)
阿里一面
自我介绍
自己看过的源码,说一下?
接下来就 EventBus 的东西了,还是老问题,优缺点,有没有什么问题,列举了很多场景,我看源码看的比较细,根据自己看过的东西做回答和分析,然后还是,接口回调和观察者模式之间的选择。
问我你看过这么多源码,你觉得什么东西最重要?
答了源码中看到了大量的反射使用,多线程方面,Collections,数据结构这些。
问我多线程,引申出 handler,我从 handler 的源码去解释
handler 引申出的内存泄漏,为什么静态内部类不会持有外部对象
接下来还是场景题,图片框架的实现,涉及到的 Lru 缓存,线程池,线程池该如何分配线程数量。
APP 从打开到显示之间发生的事情。
为什么 java 可以调用 c/c++的函数,调用 jni 发生的事情说一下。
动画种类,使用动画的步骤,有没有看过动画框架的源码。
(面试官说我在应用层上基础知识很好,懂得去看源码学习,但是 android 深度不够,应该要往 Framework 和 c/c++那边学习)
阿里二面
1.自我介绍
2.还是自己对 EventBus 的理解。
3.学习 Android 的过程
4.项目遇到的问题,怎么解决的
5.回答过程中提到 csrf,问原理
6.对公司有什么要求
7.IPC
8.socket 的连接过程
(说我这方面的技术和兴趣不错,但是缺少大型项目的经验,考虑不够全面,如果有一个机会给我就很好了。)
阿里三面
自我介绍
详细说我第一个项目
http 缓存
如何把 ip 地址存储在一个 int 变量里面?
评论