2019大厂Android高级面试题

阿里巴巴面试整理

  1. 线程原理
  2. 垃圾回收机制的实现
  3. Https原理
  4. Handler实现线程通信
  5. Glide对Bitmap的缓存与源码复用如何做到
  6. 给你一个Demo如何快速定位ANR
  7. 对Dalvik虚拟机的认识
  8. Android虚拟机Dalvik与ART区别
  9. 进程保活如何做到,保活率有多高
  10. Binder通信原理与机制
  11. Handler中有loop死循环,为什么没有阻塞主线程,原理是什么
  12. AMS在Android的作用是什么,Activity启动跟AMS有什么关系
  13. PMS了解过吗?怎么看?聊聊PMS详细实现流程

腾讯面试整理

  1. 热修复
  2. 增量升级
  3. 设计一个多用户、多角色的APP架构
  4. Volatile关键字与synchronized关键字在内存的区别
  5. synchronized关键字在虚拟机执行原理,什么是内存可见性,锁升级
  6. ButterKnife为什么执行效率别其他诸多框架高,原理是什么
  7. Linux自带多种进程通信方式,为什么Android都没采用而偏偏使用Binder通信
  8. Binder原理和实现一次拷贝的流程
  9. 类比于微信,如何对APK进行极限压缩,谈下Android压缩几大步骤
  10. 如何彻底防止反编译,.dex加密怎么做
  11. AOP与OOP的区别,原理
  12. 序列化与反序列化的原理,Android的Parcelable与Serializable的区别
  13. 手机QQ换肤实现和原理

字节跳动面试整理

  1. 如何实现直播效果
  2. 抖音直播中网速比较差的情况下,如何使画面保证流畅
  3. 音视频同步原理,音视频能绝对同步吗
  4. 硬编码和软编码区别,录屏时如何选取硬编和软编
  5. 有做过直播特效吗,说说原理和难点
  6. include、merge、ViewStub的作用和原理
  7. OpenCV中定位人脸的五个点怎么做到
  8. 为什么RecyclerView加载首屏会慢一些
  9. View绘制机制,onMeasure、onLayout、onDraw方法的调用机制
  10. 为什么Android会出现卡顿
  11. ThreadLocal底层原理和Handler的关系
  12. Flutter为什么会做到处处运行,与RN的区别
  13. Flutter的图形引擎和Android的渲染引擎原理
  14. sync关键字和lock的区别,他们对线程的控制原理

架构方面整理

EventBus、AOP面向切面编程原理、饿了么Hermes跨进程架构原理、Message、QQ换肤、阿里ARouter、RxJava

NDK方面整理

指针、MakeFile编译so库、阿里andfix热修复原理、编译FFmpeg集成到AS中

算法方面整理

Hash值、HashMap、最小生成树算法、KMP算法、查找算法、排序算法

UI方面整理

BAT屏幕适配、刘海屏开发和适配、UI绘制流程和原理、事件传递机制

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容