夏季已经过去,错过金三银四,迎来了金九银十。又到了一年一度的中秋节佳节。在这里先祝大家中秋节团团圆圆;许多人在一个地方月饼吃了好几年,工资也没见长。一种可能及时技术没得到进阶。二种是没能去跳槽。
所谓跳槽是涨薪的唯一直接手段,但是对于面试难住了许多Android开发人员。所以此篇就来说说我们面试需要准备的面试题。
Android面试题分享
- ANR如何解决,trace.txt如何看?
- 内存泄漏常见的有哪几种?如何检测?LeakCanary原理,Activity、Fragment ?
- 自定义View有哪几种方式?核心流程。一次完整的绘制流程是怎样的?
- Android里面的两种序列化方式,如何实现的?
- 包体积优化:access优化、R文件、arsc文件优化介绍?
- 如何监控页面卡顿?ChoreoGrapher方案呢?
- 网络请求:https请求如何保证安全性?Charles能抓https请求么?能抓的话那安全性在哪?app如何防止代理抓包?
- 图片压缩。RGB565,为何不是556呢?
- 谁根据Intent中的信息去查找对应的进程呢?去查找对应的Activity呢?PKMS。
- 通过view#post获取view宽高,可以获取到么?原理
- View#request之后,流程是怎样的
- juc包下的lock如何实现的?有了synchronized,为何还要有这个?
- HashMap的数据结构,如何保证快速查找,容量为何要设计为2的n次方这样?对扩容有没有影响?
- 线程池核心参数,有哪些问题?
- TCP和UDP的区别,TCP建立连接的过程
- GCRoots类型,Handler内存泄漏的引用链分析
- 跨进程传递数据,为何要序列化?
- 下载一个几百M的大文件,如何校验文件正确性?如何修复?
- Binder:内存copy几次。mmap几次映射
- synchorized和Lock的区别?synchorized是如何实现加锁的?偏向锁的实现?锁膨胀的过程
- 为何掉帧?原理,怎么解决
- 引入sdk时有哪些指标要考量?
- NA端截图如何传递给h5?共享的方式呢?
- 系统为何不设计Activity#setData这种方式,让外部可以给activity提供数据呢?
- SharedPreference的commit和apply优化、有什么问题?如何解决?
这是大家常常在面试大厂会遇到的一些疑难问题,所以我们需要注意多刷几遍。由于面试题答案会过长;我把这些总结归纳起来与【阿里Android高级工程师】整理的其他常问500道面试题组成《Android精选面试题库》一个文档;供大家可以参考便于刷题。
**跳槽除了技术高超外,面试也是首当其冲的。**好比考驾照,许多人能把科目一与科目四考好几遍;而实操科目二、三却能一次性过。老司机都是吃了没刷题的苦啊。
把面试题利用起来,明年的大厂月饼(钱)一定很香 !