写点什么

Android 开发 7 年,疫情期间八家大厂高工的面试经历和真题整理

用户头像
Android架构
关注
发布于: 2021 年 11 月 07 日

寒冬

年后疫情爆发,不出所料,我被公司优化了。


原因大概要追溯到年前,10 月底的时候,公司项目经理跳槽了,职位空了出来。当时我是项目组长。


这家不大不小的公司已经做了有三四年了。在技术层面上,至少在公司里已经是数一数二了。本以为空出来的项目经理理应是我上,我的组员也都觉得肯定是我了。


公告出来的时候,我直接懵 13 了,另一个组长上了经理的位置。他技术层面大不如我,而且在我看来是个玩弄人际吃饭的“老油条”。公司上上下下的人似乎都对他印象挺好,而我对他一直是有点“不屑”的。可能是每个程序员都有的一个天真的“误区”:程序员是个纯技术职业。技术至上,比我菜的都是“辣鸡”。


我天真的像个傻 13 一样,去找老板理论。凭什么啊?给他上?老子来的比他早,经验比他久,技术甩他几条街。当时老板办公室有客户在谈合作,我说完就走了。


后来我还比较奇怪,老板也没有找过我,好像什么都没有发生过一样。我还是个小小的组长,干活,加班,上版本。


直到疫情爆发,公司宣布要优化。在优化名单里,不出意外的看到了我的名字。


在这个疫情肆虐的寒冬里,我收到了这个宛如一根冰针的消息,扎进了我心里。全身冰凉。


老婆肚子里是快要分娩的孩子,想赶上春暖花开的季节让他来到这个世界。作为家里唯一的经济来源,每天睁眼想的便是房贷车贷、茶米油盐。我几近崩溃。


复苏

让我宽慰的是,父母、包括我的岳父母和我的妻子,都给了我最大程度的鼓励和支持。让我找回重新开始的信心。疫情封城、隔离的期间,我在家复习、准备面试找工作。岳父岳母来到了家里照顾我妻子(妻子家里是杭州本地的,我的父母回了乡下过年)

面试经历

复习了两个月左右。四月中旬开始边投简历边进行复习扫尾、巩固,大大小小的公司投出了大概三四十份简历。收到面试大概 20 场。下面我挑了几个较好的和一些大厂的真题面经分享一下。


小建议:面试某家公司前,最好是要先了解你所面试的工作岗位,公司的业务,主要是做哪个方面的,这样可以更加具有针对性的复习和准备。

华润集团下某借贷子公司(借贷公司,肯定对 APP 安全方面比较着重)

  • Activity 的启动过程

  • Broadcast 注册方式与区别

  • 磁盘缓存怎么实现

  • 进程间通信原理、Binder 机制原理

  • APK 加固、dex 文件加密实现、原理

  • 说一下类加载的过程、机制,为什么要这样设计?

  • 谈谈你对安卓签名的


《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
浏览器打开:qq.cn.hn/FTe 免费领取
复制代码


理解。


  • 对于提高 app 的安全性,你有哪些建议或方法?

腾讯新闻(大概就是 UI、页面流畅度、适配这些方面吧)

  • 如何将一个 Activity 设置成窗口的样式。

  • Android 中跨进程通讯的几种方式

  • 屏幕适配的处理技巧都有哪些?

  • ListView 卡顿原因及处理

  • 广播传输的数据是否有限制,是多少,为什么要限制?

  • 如何防止过度绘制

  • View 的回执流程

  • 说说对 Context 的理解

  • 卡顿的一整套解决方案是怎么做的?

某知名外卖 APP(布局、页面、高级 UI 之类的)

  • View 的绘制过程,onMeasure 方法中两个参数的含义;

  • 你在做布局优化的过程中用到了哪些工具?

  • 做完布局优化有哪些成果产出?

  • 看过哪些源码

  • 混合开发有没有做过

  • 大致说一下自己做过最满意的项目吧

字节跳动抖音部(音视频、算法)

  • 静态注册和动态注册的原理分别说一下吧

  • JNI 是如何访问 java 中的方法和字段的?

  • JNI 规范中定义了哪些引用,区别是什么

  • 算法:获取单链表倒数第 k 个元素

  • 单例实现线程的同步的要求?

  • LaunchMode 应用场景

  • 计算一个 view 的嵌套层级


算法:


某上市公司(母婴类产品)

  • 请介绍下 ContentProvider 是如何实现数据共享的。

  • android 本身的一些限制,比如 apk 包大小限制,读取大文件时的时间限。

  • 算法:复制含有随机指针节点的链表

  • Android 系统中 GC 什么情况下会出现内存泄露呢?

  • 三次握手四次挥手说一下吧

  • HashMap 、HashTable 原理?

  • Java 虚拟机 &内存结构 &GC&类加载 &四种引用 &动态代理

  • 进程保活怎么做

合资外企

  • LeakCanary 原理

  • OOM 场景及规避

  • App 安装过程的怎样的

  • ANR 是什么?怎样避免和解决 ANR

  • MVC MVP MVVM 原理和区别

  • 算法:2000 万个整数,找出第五十大的数字?

  • App 是如何沙箱化,为什么要这么做?

  • flutter 用过吗?

  • Flutter 如何与 Android iOS 通信?

志安科技(类似于华为海思,对底层很看重)

  • HashMap 原理

  • andorid 的 Binder 机制是怎么样的

  • Linux 的原理有了解吗

  • 有看过哪些源码,有深入到 C++中吗,C++熟练吗?

  • 熟悉 framework 哪些模块的源码,对图像性能优化有了解吗

  • 以后的技术发展方向是如何的

阿里巴巴 P6 岗

  • HTTP2.0 与 3.0 的区别

  • 项目中常用的设计模式

  • https 中哪里用了对称加密,哪里用了非对称加密,对加密算法(如 RSA)等是否有了解?

  • 了解过 Android 虚拟机有哪些?

  • 对 Dalvik、ART 虚拟机有什么了解?

  • Gradle 自动补丁包生成原理

  • Hybrid 通信原理是什么,有做研究吗?

  • 来介绍下你最成熟的一个项目是哪个?

  • 能简单的画一下你这个项目的架构图吗?

  • 除了 MVP,MVC,MVVM 外还有什么其他的架构方式?

用户头像

Android架构

关注

还未添加个人签名 2021.10.31 加入

还未添加个人简介

评论

发布
暂无评论
Android开发7年,疫情期间八家大厂高工的面试经历和真题整理