View 的事件分发 在 Activity 中获取某个 View 的宽高 Draw 的基本流程 自定义 View 进程 进程生命周期 多进程 进程存活 OOM_ADJ 进程被杀情况 进程保活方案 Parcelable 接口 使用示例 方法说明 Parcelable 与 Serializable 对比 IPC IPC方式 Binder AIDL 通信 Messenger Window / WindowManager Window 概念与分类 Window 的内部机制 Window 的创建过程 Activity 的 Window 创建过程 Dialog 的 Window 创建过程 Toast 的 Window 创建过程 Bitmap 配置信息与压缩方式 常用操作 裁剪、缩放、旋转、移动 Bitmap与Drawable转换 保存与释放 图片压缩 BitmapFactory Bitmap创建流程 Option类 基本使用 内存回收 屏幕适配 单位 头条适配方案 刘海屏适配 Context SharedPreferences 获取方式 getPreferences getDefaultSharedPreferences getSharedPreferences 架构 apply / commit 注意 消息机制 Handler 机制 工作原理 ThreadLocal MessageQueue Looper Handler 线程异步 AsyncTask 基本使用 工作原理 HandlerThread IntentService 线程池 RecyclerView 优化 Webview 基本使用 WebView WebSettings WebViewClient WebChromeClient Webview 加载优化 内存泄漏 Android 扩展知识点汇总 ART ART 功能 预先 (AOT) 编译 垃圾回收优化 开发和调试方面的优化 ART GC Apk 包体优化 Apk 组成结构 整体优化 资源优化 代码优化 .arsc文件优化 lib目录优化 Hook 基本流程 使用示例 Proguard 规则 公共模板 常用的自定义混淆规则 aar中增加独立的混淆配置 检查混淆和追踪异常 架构 MVC MVP MVVM Jetpack 架构 使用示例 NDK 开发 JNI 基础 数据类型 String 字符串函数操作 常用 JNI 访问 Java 对象方法 NDK 开发 基础开发流程 System.loadLibrary() CMake 构建 NDK 项目 常用的 Android NDK 原生 API 类加载器 双亲委托模式 DexPathList Android 开源库源码分析 LeakCanary 初始化注册 引用泄漏观察 Dump Heap EventBus 自定义注解 注册订阅者 发送事件 设计模式汇总 设计模式分类 面向对象六大原则 工厂模式 单例模式 建造者模式 原型模式 适配器模式 观察者模式 代理模式 责任链模式 策略模式 备忘录模式 Gradle知识点汇总 依赖项配置 计算机网络基础 网络体系的分层结构 HTTP 相关 请求报文 请求行 请求头 响应报文 常见状态码 缓存机制 Https Http 2.0 TCP/IP 三次握手 四次挥手 TCP 与 UDP 的区别 Socket 使用示例 常见面试算法题汇总 排序 比较排序 冒泡排序 归并排序 快速排序 线性排序 计数排序 桶排序 二叉树 顺序遍历 层次遍历 左右翻转 最大值 最大深度 最小深度 平衡二叉树 链表 删除节点 翻转链表 中间元素 判断是否为循环链表 合并两个已排序链表 链表排序 删除倒数第N个节点 两个链表是否相交 栈 / 队列 带最小值操作的栈 有效括号 用栈实现队列 逆波兰表达式求值 二分 二分搜索 X的平方根 哈希表 两数之和 连续数组 最长无重复字符的子串 最多点在一条直线上 堆 / 优先队列 前K大的数 前K大的数II 第K大的数 二叉搜索树 验证二叉搜索树 最后 想要了解更多关于大厂面试的同学可以点赞支持一下,除此之外,我也分享一些优质资源,包括:Android学习PDF+架构视频+源码笔记,高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料 这几块的内容。非常适合近期有面试和想在技术道路上继续精进的朋友。