目录
本篇分为上中下三篇文章:
上篇:阿里巴巴与今日头条
中篇:网易与爱奇艺
本篇接着上一篇,继续分享网易与爱奇艺的Android岗位面试经验
1.网易Android岗位面经
网易总共两轮面试,一轮电话面试,一轮杭州现场面试,值得注意的是网易我面的是互娱的移动工具类开发岗位,比较偏基础架构的部门,所以问的知识点比较偏底层,源码方面涉及比较多:
1.1 一面---1Hour20Min
1.对于第三方框架弹出的一个activity,如何保证在按下back键的时候不会销毁他?不能渗入第三方源码
利用back键finish当前任务栈最上面的activity实例出发,我们只需要让第三方activity有一个单独的任务栈,之后在把当前任务栈切换回来就可以了,其实用到了activity的启动模式
2.源码问题
主要包括OKHttp、RxJava、Handler、HandlerThread、intentService的源码,主要了解这些框架或者类的设计思想以及几个关键步骤是如何实现的,不需要具体到每一个步骤(一般人也不会去记忆每一步吧)。
Handler他还问了除了那些基本用法,你自以为有哪些需要注意的地方,这种就看大家自己发挥啦
3.Synchronized与lock的区别?
4.JDK1.5的并发包你有哪些了解的?
5.你听说过countDownLatch?
(博客了解一下)
6.你了解LinkedHashMap吗?
数组+双向链表实现,典型使用就是LRUCache,天生具有数据结构优越性
7.Https建立连接过程?你了解其中三个随机数吗?
OKHttp里面笔记有,这里不详细叙述了
8.算法:如何识别链表是否成环?如何找到环入口?
9.大数据算法:有一个2G文件,都是乱序int,可以使用一块200M内存,如果高效排序
10.如何实现微信的首页(一个是底部的导航另一个是侧滑)
底部导航我说的是使用MaterialDesign的BottomNavigation控件实现。
滑动可以通过viewpager+fragment实现
11.你是否熟悉Socket编程?
12.你了解操作系统里面多线程同步方式?如何用信号量实现生产者和消费者模型?
13.你有用过数据库吗?了解吗?
14.onCreate中可以通过getHeight获得控件高吗?为什么?应该在什么时候可以获取?为什么?
15.你做过哪些性能优化的措施?
16.你关注过哪些博客?哪些公众号?有自己的博客吗?
1.2 二面---50Min
二面是去杭州,应该是我面试部门的老大,问的问题不如一面那么细,比较开放的一些题目
1. 你会RN之类的混合开发框架吗?你认为他比起原生来说更适合什么?缺陷?
2. 你数据库这一块了解的多吗?你们平台的数据库用过什么高并发技术没有?
3. 网络编程擅长吗?
4. Linux熟悉吗?
5. 说说你的实习项目和经历
6. 你对Android未来的看法?猜一猜你觉得下一个版本会更新什么
2.爱奇艺Android岗位面经
爱奇艺现场进行了2轮面试,然后过了n久才迎来了最后一场电话面试
2.1 一面---1Hour
1.说一下Android测量布局绘制过程?每个部分作了什么?什么时候开始谁控制的这个过程?
2.描述一下Android事件分发机制的过程?
3.有一个需求:我需要在onTouchListener里面调用onClick方法(不是返回flase自己去调用),具体应该如何实现?包括判断down、move、up事件过程,每个事件怎么处理,返回什么?
4.有一个需求:需要在onTouchListener里面判断是否是长按(大于1s),如何利用三个事件进行判断?如果手指没有移动,只是利用down和up事件如何判断出来?
5.算法:求n个数字中出现次数最多的数字?
6. HashMap的遍历方式有哪些?具体如何遍历?
7. 你了解的排序算法有哪些?说一下快排的步骤,说一下快排的最好和最坏的时间复杂度?基准一般怎么选择?最坏的时间复杂度举一个例子,对应升序和降序排列的?
8.数组和链表的特点(不要只考虑到增删查找之类)?设计一个具有数组和链表各自特点的数据结构
9.http的请求信息包含哪些内容?响应呢?
2.2 二面---40Min
这轮面试官好像是拿着一张Java的试卷问我的,上面都是一些Java的选择题或者问答题,如果平时有去刷牛客网或者其他平台的Java试题的话很多题目还是见过的。
1. 静态嵌套类(Static Nested Class)和内部类(Inner Class)的不同?
2.Java中有几种类型的流?
3.父子类的同名方法处理?
4.类的生命周期?
5.其他都是一些试题了
2.3三面---1Hour
问的题比较开放
1.你的实习做了什么?难点?学到了什么?
2.你的比赛做了什么?负责什么?
3.你懂得一些机器学习?能简单说说吗?你的专利写的算法能描述下吗?
4.你对Android未来的看法或者移动端的看法?
5. 你对Android屏幕适配的看法?
6.你对混合开发的看法?你应用过吗?
后面就是一些针对爱奇艺部门的介绍了,主要在于沟通了解就不写进去了
上篇:阿里巴巴与头条面经