2021春招BAT面试真题详解,意外收获字节跳动内部资料

## Android相关 Android部分我就不分几大块了。直接列举,但是列举到的每一项都是面试经常会问到并且会延伸问的,所以需要深入的去研究。 1. 四大组件有哪些,说出你对他们在Android系统中的作用和理解。 2. Activity生命周期,A启动B两个页面生命周期怎么运行的,为什么会这样,生命周期为什么这么设计,你有了解过吗。 3. 四种启动模式,内部堆栈是怎么回事,你工作中怎么使用的。 4. Activity的启动过程,这个我强烈建议每个Android开发人员都要清楚的知道,并且跟一下源码,几个核心类的作用。你会对Android有一个更好的认识。 5. 事件分发流程,怎么处理滑动冲突。举例:长按ListView的一个Item它变灰了。这个时候在滑动。item恢复原来的样子,这个时候他们内部的事件传递是什么样子。有很多种问法,所以你一定要搞清楚。 6. 自定义View,View的绘制流程。onMeasure,onLayout,onDraw都是什么作用。ViewGroup是怎么分发绘制的。onDraw里面怎么去做绘制,Canvas,Path,Paint你都需要了解。并且配合ValueAnimtor或者Scroller去实现动画。有时候面试的会突发奇想问你ViewGroup是树形结构,我想知道树的深度,你怎么计算,突然就变成了一个数据结构和算法的题。 7. Bitmap和Drawable 8. Animation和Animator 9. LinearLayout、RelativeLayout、FrameLayout三种常用布局的特性,他在布局的时候是怎么计算的。效率如何。CoordinatorLayout配合AppbarLayout的使用,以及自定义Behavior。ConstraintLayout的使用。用来减少层级。 10. Handler消息机制,推荐看一下Looper的源码 11. 进程间通信,Binder机制 12. AsyncTask源码看一下。 13. 图片的压缩处理,三级缓存,Lru算法 14. 分辨率和屏幕密度,以及计算一个图片大小。mdpi,hdpi的关系和比例。 15. 优化,内存优化,布局优化,启动优化,性能优化。内存泄露,内存溢出。怎么优化,用了什么工具,具体怎么做的。 16. listView和RecycleView对比,以及缓存策略。 17. JNI(很少问) 18. MVC,MVP,MVVM 19. 开源框架Okhttp,Glide,EventBus,Rxjava等,以及JetPack下的开源库,要会用,还说说出一些东西,推荐 Retrofit,Okhttp,Glide,EventBus这些看一下源码。 20. RecyclerView四大块,能实现什么效果,大致怎么实现的,心里要有数 21. DecorView,Window,WindowManager,PhoneWindow关系,以及个子的职责。 加分项:Kotlin,Gradle,Flutter,组件化,插件化,热修复。 ## Android相关总结 上面的列的相关内容,看似很短一句话,但是每一项都需要你深入的去研究,要了解原理,最好去看一下源码实现。当然还有一些是我没写到的,可能是我写的时候没有想起来,并不代表他们不重要,你也需要重视,再来一波推荐:《Android开发艺术探索》强烈推荐,建议细细的读,如果粗心大意建议读两到三遍,针对性的读。《Android进阶之光》《高级Android开发强化实战》《Android组件化架构》《Android热修复技术原理》《Android插件化开发指南》 #### 最后 考虑到文章的篇幅问题,我把这些问题和答案以及我多年面试所遇到的问题和一些面试资料做成了PDF文档,**如果有需要的朋友可以私信我【面试】免费领取** **[点击这里领取Android面试资料汇总](https://github.com/a120464/Android-P7/blob/master/Android%E5%BC%80%E5%8F%91%E4%B8%8D%E4%BC%9A%E8%BF%99%E4%BA%9B%EF%BC%9F%E5%A6%82%E4%BD%95%E9%9D%A2%E8%AF%95%E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md)** ![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626006678433516.jpg) ![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626006679344079.jpg) 喜欢的朋友可以关注、转发、点赞 感谢!
上一篇:你头秃都没想到还能这样吧!面试题附答案


下一篇:你所不知道的Android原生开发的现状,HR的话扎心了