2017Android面试回忆录「上」(腾讯/阿里/滴滴/美团...)

前言

面试合集 之 滴滴、美团、腾讯、阿里、头条、小米、网易... 提供答案(逐步更新中)

写这篇面试回忆录的目的:

  • 梳理一下面试过程的知识点,为了以后可以更直观地回忆
  • 希望给正在或者准备面试的朋友提供一些帮助

其它:

  • 时间周期:【2017/4 -- 2017/6】
  • 来源: 【感谢「奔腾的兔子」和「剑胆诗魂」的友情赞助】
  • 主要面向人群: 面试【高级工程师】或者【资深工程师】等相关职位
  • 没有严格按照一面、二面、三面来区分

目录

腾讯OMG

  • ☐ synchronize用法
  • ☐ volatile用法
  • ☐ 动态权限适配方案,权限组的概念
  • ☐ 网络请求缓存处理,okhttp如何处理网络缓存的
  • ☐ 图片加载库相关,bitmap如何处理大图,如一张30M的大图,如何预防OOM
  • ☐ 进程保活
  • ☐ listview图片加载错乱的原理和解决方案
  • ☐ https相关,如何验证证书的合法性,https中哪里用了对称加密,哪里用了非对称加密,对加密算法(如RSA)等是否有了解

阿里巴巴

  • ☐ LRUCache原理
  • ☐ 图片加载原理
  • ☐ 模块化实现(好处,原因)
  • ☐ JVM
  • ☐ 视频加密传输
  • ☐ 统计启动时长,标准
  • ☐ 如何保持应用的稳定性
  • ☐ ThreadLocal 原理
  • ☐ 谈谈classloader
  • ☐ 动态布局
  • ☐ 热修复,插件化
  • ☐ HashMap源码,SpareArray原理
  • ☐ 性能优化,怎么保证应用启动不卡顿
  • ☐ 怎么去除重复代码
  • ☐ SP是进程同步的吗?有什么方法做到同步
  • ☐ 介绍下SurfView
  • ☐ HashMap实现原理,ConcurrentHashMap 的实现原理
  • ☐ BroadcastReceiver,LocalBroadcastReceiver 区别
  • ☐ Bundle 机制
  • ☐ Handler 机制
  • ☐ android 事件传递机制
  • ☐ 线程间 操作 List
  • ☐ App启动流程,从点击桌面开始
  • ☐ 动态加载
  • ☐ 类加载器
  • ☐ OSGI
  • ☐ Https请求慢的解决办法,DNS,携带数据,直接访问IP
  • ☐ GC回收策略
  • ☐ 画出 Android 的大体架构图
  • ☐ 描述清点击 Android Studio 的 build 按钮后发生了什么
  • ☐ 大体说清一个应用程序安装到手机上时发生了什么;
  • ☐ 对 Dalvik、ART 虚拟机有基本的了解;
  • ☐ Android 上的 Inter-Process-Communication 跨进程通信时如何工作的;
  • ☐ App 是如何沙箱化,为什么要这么做;
  • ☐ 权限管理系统(底层的权限是如何进行 grant 的);
  • ☐ 进程和 Application 的生命周期;
  • ☐ 系统启动流程 Zygote进程 –> SystemServer进程 –> 各种系统服务 –> 应用进程
  • ☐ recycleview listview 的区别,性能

滴滴

  • ☐ MVP
  • ☐ 广播(动态注册和静态注册区别,有序广播和标准广播)
  • ☐ service生命周期
  • ☐ handler实现机制(很多细节需要关注:如线程如何建立和退出消息循环等等)
  • ☐ 多线程(关于AsyncTask缺陷引发的思考)
  • ☐ 数据库数据迁移问题
  • ☐ 设计模式相关(例如Android中哪里使用了观察者模式,单例模式相关)
  • ☐ 微信的聊天数据在本地都是加密处理的(防止root了被破解),设计一个类似的本地数据存储系统
  • ☐ x个苹果,一天只能吃一个、两个、或者三个,问多少天可以吃完
  • ☐ Android相关你最擅长哪一块
  • ☐ TCP与UDP区别与应用(三次握手和四次挥手)涉及到部分细节(如client如何确定自己发送的消息被server收到) HTTP相关 提到过Websocket 问了WebSocket相关以及与socket的区别
  • ☐ 是否熟悉Android jni开发,jni如何调用java层代码
  • ☐ 进程间通信的方式
  • ☐ java注解
  • ☐ 计算一个view的嵌套层级
  • ☐ 项目组件化的理解
  • ☐ 基于自身工作经验和计算机相关知识,给出 移动端地图局部加载 瓦片大小的像素大小估值
  • ☐ 多线程断点续传原理
  • ☐ Android系统为什么会设计ContentProvider,进程共享和线程安全问题
  • ☐ jvm相关
  • ☐ Android相关优化(如内存优化、网络优化、布局优化、电量优化、业务优化)
  • ☐ EventBus实现原理

美团

  • ☐ 线程挂起,休眠,释放资源相关,唤醒,线程同步,数据传递,问了很多线程的问题,问了20分钟大概
  • ☐ static synchronized 方法的多线程访问和作用,同一个类里面两个synchronized方法,两个线程同时访问的问题
  • ☐ 内部类和静态内部类和匿名内部类,以及项目中的应用
  • ☐ 泛型是什么以及在项目中的应用
  • ☐ handler发消息给子线程,looper怎么启动
  • ☐ down、move、up事件的传递
  • ☐ activity栈
  • ☐ 封装view的时候怎么知道view的大小
  • ☐ intent-filter
  • ☐ arraylist和linkedlist的区别,以及应用场景
  • ☐ 怎么启动service,service和activity怎么进行数据交互
  • ☐ 下拉状态栏是不是影响activity的生命周期,如果在onStop的时候做了网络请求,onResume的时候怎么恢复
  • ☐ view渲染

总结

共同点:

  • 对基础性、原理性的东西比较重视
  • 具体问题的解决能力、项目的架构能力

不同点:

  • 公司不同、产品业务线不同,所以涉及的技术重点和方向不同

思考:

  • 有些东西你不仅要懂,而且要能够很好地表达出来,能够让面试官认可你的理解,例如Handler机制,这个是面试必问之题
  • 有些晦涩的点,或许它只活在面试当中,实际工作当中你压根不会用到它,但是你要知道它是什么东西

下篇请传送到:
2017Android面试回忆录「下」(今日头条/小米/网易/知乎...)

内推:
【社招】【滴滴-北京】Android开发工程师

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,425评论 4 361
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,058评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,186评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,848评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,249评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,554评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,830评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,536评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,239评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,505评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,004评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,346评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,999评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,060评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,821评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,574评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,480评论 2 267

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 170,565评论 25 707
  • Java中的String类可以被继承么? 答:不能,因为它是一个final类,同样的还有Integer,Float...
    gyymz1993阅读 3,873评论 2 104
  • 昆明是我在云南的最后一站,本来是没有抱太多期望,只想好好休息第二天回北京,中转一下罢了。 唯一一次住青旅,在火车站...
    不能为空阅读 250评论 0 2
  • 有些时候闲下来,一个人想想事,总是想着想着就想落泪了。这才意识到,突然间我大起来了,突然间要面对的事很多很多了...
    洛简紫阅读 721评论 0 1
  • 在这个假期里,我感觉有点放松,用手机次数有点多我觉得,在我们生活中,没有书,就好像人们没有了阳光! ...
    悦香_f599阅读 372评论 0 0