Android 高级面试经常会有很多原理分析,以及性能优化监控相关,列出一些高频知识点仅供参考。
s13524801/android-interview-record 欢迎 start 以及补充
Android 相关
性能优化
Java 相关
Kotlin 相关
网络相关
插件化
图片相关
Gradle 相关
Flutter 相关
Android之SharedPreferences内部原理浅析
剖析 SharedPreference apply 引起的 ANR 问题
Android源码分析-消息队列和Looper
Android中Thread、Handler、Looper、MessageQueue的原理分析
Android IntentService完全解析 当Service遇到Handler
Android源码分析—带你认识不一样的AsyncTask
Android AsyncTask 源码解析
Android性能优化之使用线程池处理异步任务
Android 线程和线程池一篇就够了
剖析Android中进程与线程调度之nice
【线程死锁】Android多线程死锁的产生以及如何避免
WatchDog工作原理
《手Q Android线程死锁监控与自动化分析实践》
Android Context完全解析,你所不知道的Context的各种细节
LocalBroadcastManager 的实现原理,与 BroadcastReceiver 异同
Activity的启动方式和flag详解
浅析Activity横竖屏切换时的生命周期
Android源码分析-资源加载机制
Android 源码解析 之 setContentView
深入剖析 Android中的 ArrayMap
深度解读ArrayMap优势与缺陷
startActivity启动过程分析
startService启动过程分析
【凯子哥带你学Framework】Activity启动过程全解析
【凯子哥带你学Framework】Activity界面显示全解析
Android LayoutInflater原理分析,带你一步步深入了解View(一)
由App的启动说起 | jaminzzhang
Android内核开发:图解Android系统的启动过程
为什么 Android 要采用 Binder 作为 IPC 机制?
Android进程间通信(IPC)机制Binder简要介绍和学习计划
Binder VS socket
Android跨进程通信:图文详解 Binder机制 原理
彻底理解Android Binder通信架构
Binder异常解析
ELF文件格式解析
loadLibrary动态库加载过程分析
Android 的 so 文件加载机制
通过ApkTool分析resources.arsc文件以及resources.arsc文件的格式
Toast 原理剖析
Android I/O 那些事儿
10分钟了解Android项目构建流程
RecyclerView性能优化及高级使用
android mvvm architecture-samples
Lifecycle 使用及原理解析 一文搞懂
ViewPager2重大更新,支持offscreenPageLimit
Android View的绘制流程知识点总结
深入理解Android之View的绘制流程
Android JNI 中的线程操作
Android JNI 之 Bitmap 操作
Android组件化方案及组件消息总线modular-event实战
Android 组件化最佳实践
Android中JSBridge的原理和实现
Android Webview H5 秒开方案实现
WebView性能、体验分析与优化
彻底解析Android缓存机制——LruCache
视频缓存AndroidVideoCache攻略
Google Exoplayer之全面认识
设计模式在外卖营销业务中的实践
Android性能优化来龙去脉总结
Android 性能优化最佳实践
Android GC 原理探究
JVM 的工作原理,层次结构以及 GC 工作原理
Java内存问题及 LeakCanary 原理分析
Android性能优化(十一)之正确的异步姿势
Android 性能优化之布局优化
Android性能优化:那些不可忽略的绘制优化
Android中Bitmap内存优化
美团点评移动网络优化实践
大众点评App的短视频耗电量优化实战
Android 存储优化 —— MMKV 集成与原理
Matrix IOCanary – I/O 质量监控
Matrix TraceCanary – 初恋·卡顿
Matrix ResourceCanary – Activity 泄漏及Bitmap冗余检测
Android图片加载尺寸监控
美团外卖Android Crash治理之路
理解Android Crash处理流程
理解Native Crash处理流程
彻底理解安卓应用无响应机制
ANR问题分析的一般套路
ANR的监测与信息采集
Android ANR 监测方案解析
Probe:Android线上OOM问题定位组件
《Android 创建线程源码与OOM分析》
安装包立减1M–微信Android资源混淆打包工具
AabResGuard: AAB 资源混淆工具
zstd 高质量压缩算法
AndroidJniBitmapOperations
Android开发高手课
Java 四种线程池的用法分析
Java有几种文件拷贝方式?哪一种最高效?
使用FileChannel(文件通道)来实现文件快速复制
JVM类加载机制详解(一)JVM类加载过程
JVM类加载机制详解(二)类加载器与双亲委派模型
Java实现线程同步的几种方式
java笔记七:IO流之字节流与字节缓冲流
Java NIO浅析
Java内存管理:深入Java内存区域
看完这篇垃圾回收,和面试官扯皮没问题了
理解Java中的ThreadLocal
理解Java中的弱引用
理解Java的强引用、软引用、弱引用和虚引用
Java中的堆和栈的区别
HashMap 用可变对象作为 key 踩坑
聊聊并发(七)——Java中的阻塞队列
深入研究java.lang.Object类
Java ArrayList、LinkedList、Vector的区别
HashMap和Hashtable的区别
HashMap、TreeMap、HashTable区别
你想知道的HashMap
ConcurrentHashMap总结
Java 8系列之重新认识HashMap
HashMap多线程死循环问题
深入分析Volatile的实现原理
Java并发编程:Synchronized及其实现原理
Java反射在JVM的实现
Unsafe 与 CAS
Java魔法类:Unsafe应用解析
Java AtomicInteger原理分析
Java并发编程:CountDownLatch、CyclicBarrier和Semaphore
理解ReentrantLock的公平锁和非公平锁
Java面试必问-死锁终极篇
深入理解读写锁ReentrantReadWriteLock
CountDownLatch详解
深入理解final关键字的作用
Java CAS 和ABA问题
关于JAVA中的Class.cast方法
如何正确地写出单例模式
【Java】try-catch-finally语句中return的执行顺序思考
二分查找法的实现和应用汇总
二叉树遍历(先序、中序、后序)
Java最小堆解决TopK问题
from-java-to-kotlin