记录一下这些天来面试的题目,理理思路
第一部分:入门
1 自我介绍一下
2 说说自己的教育和工作经历
3 你为什么离职
4 你当年为什么离开上海到北京?
第二部分:装X
1 你项目里的难点和解决方案
2 你项目的优化经验
3 说说你认为你做的最好的项目吧
4 你说你有个UI Framework的库,那你讲讲这个库吧,你怎么决定什么样的控件是否放进你这个库
第三部分:Java和安卓
1 说说并发,一个线程等待另一个线程完成再继续,怎么实现,wait怎么写,为什么这么写,CountDownLatch干什么的,Schdule的Executor和Timer相比好在哪儿,Syncronized给什么加锁?Volatile什么意思?延时队列怎么实现的?
2 进程间通信
3 工厂三模式
4 说说你了解的Http库吧
5 Volly配合缓存说说Volly发起请求的过程
6 Glide,Piccaso,Fresco对比
7 你说你写了http库可以兼容各种http库,有什么必要呢
8 View的测量,布局,绘制,父是wrap,子是match,会发生什么?
9 热补丁你用过没,有了解吗
10 在线多渠道打包会吗
11 画图表什么的熟悉吗?
12 Touch事件分发流程
13 最近有研究什么新的开源项目吗,讲讲
14 有什么业余时间自己的作品吗,讲讲
15 熟悉h5吗,你对微信公众号怎么看
16 h5的app和原生的app,你怎么看
17 你简历里说你负责IM模块的重连机制,你怎么做的说一下吧
18 你有什么比较好的自定义控件吗?
19 说说动画
20 你经常写动画吗,说说你觉得你实现过的最好的动画效果
21 EventBus经常用吧,那你说说EventBus是怎么回事吧
22 说说三级缓存,说说SoftReference为什么不好,什么可以取代它?为什么
23 布局优化(这个没人问我,我自己加的)
24 最近有没有关注什么新技术,说说
25 RxJava熟吗,不熟
26 说说你最近这个项目用的架构吧
27 那你详细讲讲MVP吧
28 DataBinding是谷歌推荐的处理MVP的P的东西,详细说说
29 Activity四个启动模式,详细说说
30 说说hashmap 的实现
31 说说LRU 缓存的实现
32 webview 的内存泄漏问题,webview 4.4之前和之后的区别
33 测量过程最后必须调哪个方法
34 Tree map实现
35 除了图片,还有什么oom
36 用户使用过程中anr 了,怎么得到anr信息
37 你们在什么情况下会单独起一个进程?长连接怎么通过一个单独的进程管理,service单独在一个进程里怎么设置
38 插件化实现机制(activity加载和resource加载)
39 resource加载过程
40 热修复实现原理,三个流派
41 MVP细说一下
42 MVVM知道不
43 multidex的问题,低版本慢怎么解决
44 优化方面
布局优化的监控和修复
掉帧的监控和修复
内存泄漏的监控和修复,leak canary实现原理
anr的监控和修复
webview泄漏的解决方案
gradle的的优化,freeline实现原理,缺点
45 架构方面
如何决定架构选型
第三方库是否使用,如何调研
46 算法方面
数组删除重复元素
数组统计重复次数最多的元素
快速排序思路
47 两个TextView在Relativelayout中居中显示,给代码
48 启动一个activity的过程,activityTread,ApplicationThread
49 RecyclerView实现原理,和ListView比较
50 Transform API
51 流量监控
52 Otts和EventBus对比
53 经常有Resource Not Found异常,为什么,解决方案
54 Fresco为什么快,AshMem什么的