专栏名称: 开发者全社区
分享和推送Java/Android方向的技术和文章,让你成为这方面的大牛,让你每天都成长一点。同时,我们也会邀请BAT的大牛分享原创!
目录
相关文章推荐
开发者全社区  ·  金融男彻底玩完,女友也劈腿IT男了 ·  昨天  
开发者全社区  ·  交易媛载歌载舞 ·  昨天  
鸿洋  ·  揭秘Activity“重生”的面纱---Ac ... ·  昨天  
开发者全社区  ·  月薪八万的中金员工被祭旗了 ·  2 天前  
鸿洋  ·  彻底掌握 Android14 Vsync 原理 ·  2 天前  
51好读  ›  专栏  ›  开发者全社区

【干货】2017年阿里、腾讯、今日头条、携程Android面经汇总!

开发者全社区  · 公众号  · android  · 2017-04-11 09:57

正文

相关阅读:

吊炸天!74款APP完整源码!

[超级干货第二波]Android各种花式酷炫自定义控件开源库集合

一种最新Android客户端架构设计分享,Android架构师必看

本文由读者群中的同学提供,该同学于17年初面试了几家公司的Android工程师职位,并顺利拿到了携程的offer,面经新鲜出炉,马上要面试的小伙伴不要错过哦。


今天刚拿到携程的offer,也是春招的第一个offer。遂想把最近面的公司面经发出来,希望对大家有帮助。头条和腾讯是二月份散招的时候面的,没怎么准备所以都是一面挂。


1.头条一面

项目相关:

  • retrofit底层,为什么用retrofit。

  • RxJava内存泄露问题,怎样解决。

  • 常用图片库picasso,fresco,glide比较。

  • px,dp,sp区别。

  • 跨进程RxBus怎么实现(其实就是在问ipc)。

  • 项目的MVVM架构怎么设计的。

  • socket相关。


基础:


2.腾讯一面MIG

  • 自我介绍,擅长的技术有哪些。

  • c++熟不熟。

  • python写过些什么,怎么写爬虫的,用过xx框架没(当时没听清,不记得叫啥框架了)。

  • linux常用命令,列举当前进程的命令是(ps)。

  • 数据结构了解哪些,函数局部变量存在哪里。string两种创建方法有什么区别,哪种会从常量池取对象。

  • Picasso加载和缓存机制,怎么优化其加载速度。这里分别对LRUCache和磁盘缓存进行提问了。

  • http和tcpip了解多少,get参数的最大长度多少?http请求头可以定义哪些内容,怎么实现文件下载的断点续传。

  • 下拉刷新为什么不用性能更好可扩展性更强的recyclerview。

  • jvm了解过吗?常用垃圾回收算法有哪些?说说标记清除算法。GC发生在什么时候。

  • 用过哪些数据库?sp安装新版本的时候会清理吗?


总结:问得很全很基础很深,面试官说我linux了解不够,http也只知道大概。知识点要深入。


3. 阿里

二面通过后等了一星期莫名被拒,也是凄惨。


一面:

实习的项目。

干货营项目:图片列表怎么避免oom,用过哪些图片加载框架,LRUCache用什么数据结构实现(LinkedHashMap)。

handler怎么用,内在原理,还用过哪些线程间通信的东西。

热修复和插件化,AIDL。

占用内存比较多频繁GC的情况下用什么回收算法。

社团工作,讲课讲得怎样,成绩怎样。


二面:

下拉刷新和加载更多怎么实现,要支持margin的话怎么改。

RxJava优缺点,和函数式编程的不同。

Picasso缓存策略。

LRUCache。

讲讲JVM垃圾回收机制(分代收集,新生代,老年代,元空间),分配一个大对象会出现什么情况(在老年代分配,内存不够会执行full gc,执行之后内存还不够会oom)

100*100像素的图片在内存中占多大,编码方式。







请到「今天看啥」查看全文