AC了网易终于有时间整理一波面经了。记得的不多,以后再补充吧
内推开始一个多月到现在也就面试了阿里、拼多多跟网易、面经有限。
记性不好,想起来的也就这么多,大概只有二分之一左右吧,都相对偏基础,发散性的问题不多。
所以,个人目前这么点经验来看,必须要知道的是android基础+计算机网络(计算机网络必问!!!!!!),然后项目涉及方向多点也有好处,比如混合开发,JNI/NDK,二维三维,至少看起来比较全面。然后自己简历上写的东西一定要熟,会用也不行,得知道原理(捂脸,不然被问炸)
阿里菜鸟 一面: ①自我介绍(处女面,跑上楼时候已经气喘吁吁,甚至都不知道如何自我介绍,介绍了一分钟我尬场了) ②RxJava、EventBus底层原理(一定程度是自己挖坑用过这些,然后让我跳的) ③如何自我实现一个网络请求框架 ④用过React Native没。(自己用过Ionic,但是面试官没听过,Ionic在2015年相对较火) ⑤平时如何自我学习,2017 Google I/O大会讨论内容有哪些 ⑥MVP框架,如何用,怎么用。怎么解耦。跟MVC的差别 二面(莫名其妙的交叉面,交叉面有这么早的吗?): ①直接省略了自我介绍,问专业方向(GIS),问如何处理地理围栏 ②如何省电又能实时跟服务器端交互(我说的是AlarmManager+Service),一直传输位置信息给服务器。用了什么协议 ③由上面的扯到OkHttp底层原理 ④Http2.0与1.1有啥区别(由这里开始就炸了,完全没复习计算机网络,尤其还是偏背诵的知识的) ⑤有哪些二进制传输协议
那时候刚开始找工作,完全不知道复习知识点,好多都是迷迷糊糊知道,说就说不出来了。
拼多多(现场面。笔试4过3。但是!!!但是!!!我android你让搞IOS的来面试是什么逻辑???)
一面(面试官都不太了解JAVA,我没看懂拼多多套路):
①把笔试的题拿出来,问代码思路逻辑,比如为什么用TreeMap不用HashMap
②如何对APP进行内存优化
③项目的并发度多大,如何处理crash后的信息回传
④计算机网络相关
二面
①聊了下涉及到OpenGL的项目。以及OpenGL3.0与2.0的差别。
②手撕代码:多叉树的后续遍历
其实感觉越是像拼多多这种有点无厘头的面试,虽然面试过程轻松,但是结果往往也都别在意。不是学霸批,HR说现在说最早校招时候出结果,估计就是没结果
网易(刚回家5天,一条短信就从西安飞了回来,关键单程路费还不能报销,8.21号面试的,然后后面还有7天假期就瘫痪在了寝室 ,暑假算毁了还好有个offer安慰下) 一面(明显大佬级别): ①你搞android应该也很了解Java的多线程吧,讲讲通过Handler为什么能够更新UI。(一开始我以为是谈谈Handler的原理,讲了一通,面试官 对我说你讲的我都知道,然后一步步诱导,终于我说到了ThreadLocal,然后他说对。之后就稍微扯了下ThreadLocal) ②根据简历,问自己要实现一个地图容器的话怎么实现。然后一步一步延伸下去聊到了View与SurfaceView ③JNI/NDK开发如何使用,如何定义java文件与cpp文件中的方法(主要看是不是真的用过吧) ④四种启动模式,用过哪些,出过什么问题。(包括聊到了onSaveInstanceState跟onRestoreInstanceState的场景与时机,然后在一个点跟面试官 看法不同,我说我调试时候遇到过相关问题,面试官让我回去再确认下) ⑤如何处理内存泄漏。也提到了简历中20000*20000大小的图片如何加载的 ⑥socket与Http区别,socket长连接断开了怎么办 ⑦在socket传输文件中链接断开了,怎么继续传输文件。引申到了如何断点续传 ⑧涉及到自己项目中用到的优化方案与策略,尤其针对图片的 ⑨看到用过GreenDao,问有没有在一个事务中提交两种不同的操作。(觉得应该是说一个事务中,比如更新一张表中的一个Person记录, 新增一条Dog记录) ⑩MVP框架,混合开发相关 面试官对我的总体评价:用过的开源库不少,为什么不自己写呢(哎,尴尬)。问了能不能实习,然后留了简历做了个记录就下面一轮面试了 二面(是个帅小伙,我当时以为自己一面跟二面顺序反了): ①自我介绍 ②Handler机制 ③如何自己实现线程池。线程池内的队列如何管理。线程池大小N的话,连续push进来M个的任务(M>>N),如何处理,比如20大小的线程池扔进来10000个任务 ④个人方向偏移动GIS,跟地图打交道比较多,谈到了遥感影像(也就是稍微大点的图片啦)缓存置换、回收策略。面试官让详细讲了一遍,涉及到 的点是LRU跟Java的几种引用,一些数据结构。问内存缓存怎么做的,K-V对设定,提到了类似Picasso中,需要本地处理旋转,但是URL一样的 时候,K值的设定方式 ⑤OkHttp底层原理,TCP的三次握手四次挥手全流程(画了每次握手挥手时候的报文内容与控制位设定) ⑥还看过哪些源码(我说看过EventBus,貌似面试官也不想问了,笑眯眯的说你去等HR面吧)
对了居然忘了华为!两面加起来20分钟,投的系统开发工程师,上来就让画了个android系统架构图,后面就没啥了就一直扯,果然传说中写不出面经的面试,如今已经躺在了化粪池10来天了。。。。。。
#网易##安卓工程师#