安卓2018面试技术栈
通过Boss直聘,和几次面试大致总结出来了,大点的公司2018年需要通用的技术栈
- ams(AndroidManagerService) wms(WindowManagerService) pms(PackageManagerService)源码分析,(ps:面试官会问Manifest里面的东西怎么加载的,或者问你Activity怎么加载的,你得说出这些来。)
- Rxjava的原理,主要是背压能说说
- 自定义绘制控件,如何绘制,几个方法说说,还有spec
- 事件分发,以及事件冲突处理(主要是自定义方面的事件冲突)
- Handler机制,会问道HandlerThread,以及Looper源码
- JNI以及原理,会问怎么加载so或者.h等文件的,以及调用方法命名,cmake等等
- openGl ES,问到surfaceView、矩阵最好要会
- 流媒体以及短视频
- socket,java和c++的两种实现以及netty等框架的始用(vert.x也是netty实现的)
以上大部分内容我听人说,android开发艺术探索 里面有相当多的东西,但是其他的技术还需要自己找文档,觉得大家想进入好公司的最好把上面的东西弄一点demo,然后看看原理的讲解。
面试注意事项
如果你在面试过程中提到了某个技术点可能会被面试官继续追问,如果你说了多线程面试官可能会问你Threadlocal,尽量少跟自己挖坑,或者对这些坑点你都有所研究。
网友评论