《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
完整开源地址:https://docs.qq.com/doc/DSkNLaERkbnFoS0ZF
建议用掌握与熟练掌握取代了解与精通。
这里教给大家一个小套路,可以提高收到面试邀请的机会。那就是在你简历的左上角印上准备面试公司的Logo。面试官在一堆简历中突然翻到一张印着自己公司Logo的简历,不免会多看你的几眼。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qe6bzune-1611123109279)(//upload-images.jianshu.io/upload_images/24142630-6fa55bb3c179cdba.png?imageMogr2/auto-orient/strip|imageView2/2/w/791/format/webp)]
关于算法
算法可以说是现在找工作必须的知识储备,具体得看公司的业务。以我的面试经验来看,总体来说问的不多,还有些公司基本不问算法。
但是如果去面试字节,网易,快手这种每轮必问算法的公司,因为算法题拿不到offer就很可惜了。
算法题就好像高考语文的古诗词默写一样,分不多,但丢了就很可惜了。
主要还是平时力扣的刷题积累
面经
接下来就是各公司的面经了,分享出来供大家参考。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FjlW9r1i-1611123109281)(//upload-images.jianshu.io/upload_images/24142630-8eb2424736ccbca8.png?imageMogr2/auto-orient/strip|imageView2/2/w/540/format/webp)]
第一个去的是我一直心心念念的B站,可以第二轮就挂掉了…
B站一面
1.自我介绍
2.treemap、红黑树、完全平衡二叉树
3.快速排序和插入排序
4.个大致有序的数组如何排序,最快时间复杂度
5.如何自定义实现一个FlexLayout
6.RecyclerView的回收复用机制
7.如何实现RecyclerView的局部更新
8.说说对泛型的了解,Retrofit中的泛型是怎么解析的
9.说说对binder机制的了解
10.进程的状态,线程的状态,两者有区别吗
11.synchronized锁住对象的理解
12.Fragment replace生命周期变化
13.TCP和UDP有什么区别? 讲讲招手挥手过程
14.用过C++开发吗
15.Dalvik和Hotspot虚拟机了解吗?有什么区别?
B站二面
1.说自己做过最满意的项目
2.性能优化你做过哪些工作
3.屏幕适配做过哪些工作
4.遇到过哪些坑(困难点),是怎么解决的
5.如果要你来开发B站的一个页面,哪一个页面可以很快入手
6.用过哪些框架?MVVM?Jetpack有入手吗?
7.用过哪些开源库
6.热修复、插件化都用过,遇到过哪些坑?可以讲讲原理吗
7.为什么想来B站,看哪种视频多一点,点赞多还是白嫖多
8.你觉得B站APP有哪些可以优化的地方
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XrYEMbUI-1611123109283)(//upload-images.jianshu.io/upload_images/24142630-b1861af2420bc8e7.png?imageMogr2/auto-orient/strip|imageView2/2/w/600/format/webp)]
斗鱼一面
1.Java多态的理解
2.HashMap原理
3.手写一个单例模式,问有什么优缺点
4.View的绘制流程
5.APP的启动过程
6.说说插件化的原理,资源的插件化id重复如何解决?
7.Recyclerview优化
8.Handler消息机制
9.用过哪些第三方库,OKHTTP原理说一下,热修复原理呢?
10.对屏幕刷新机制的了解,双重缓冲,三重缓冲,黄油模型
11.onCreate,onResume,onStart里面,什么地方可以获得宽高
12.为什么要用线程池(扯到线程分配资源的过程,和进程分配资源过程的区别)
13.GC内核清理用什么算法,老年代有什么算法?
14.TCP 三次握手四次挥手,第一次和第三次如果没收到回应会怎样?
15.MVP和MVVM有什么区别,那种用的多
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vV4CLg58-1611123109286)(//upload-images.jianshu.io/upload_images/24142630-48964c62772ba98e.png?imageMogr2/auto-orient/strip|imageView2/2/w/554/format/webp)]
字节一面
0.算法有点题比较复杂,记不起来了
1.构造方法有哪些?重载与重写的区别?
2.线程有哪些状态?
3.WebView安全问题,做过WebView性能优化吗
4.RecyclerView 缓存结构
5.RecyclerView回收复用机制,回收什么?复用什么?回收到哪里去,复用从哪里拿?
6.Handler休眠是怎样的?epoll的原理是什么?如何实现延时消息,如果移除一个延时消息会解除休眠吗?