- 面试题
- 数据结构与算法
- JAVA
- Flutter
- Linux
- 设计模式
- View 体系
- Handler
- 事件分发
- Binder
- Framework 解析
- Android 输入系统
- JNI 系列
- Gradle 系列
- 源码解析
- 组件化
- 插件化
- 性能优化
- 网络编程
- 安全防护
- 代码审查
- PDF 书籍分享
- 工具推荐
- 一些黑科技
- Android 校招面试指南
- Java 学习+面试指南
- 一线互联网公司内部题库
- Java / Android 笔试、面试 知识整理
- Awesome-Android-Interview
- Android 相关的面试题及常见套路
- 一个五年 Android 开发者百度、阿里、聚美、映客的面试心经
- Android 面试题
- java 对象结构
- Java 虚拟机
- JAVA 多线程
- 全面理解 Java 内存模型
- java 中的锁 -- 偏向锁、轻量级锁、自旋锁、重量级锁
- JAVA 多线程之 Synchronized 关键字--对象锁的特点
- Java 并发编程:volatile 关键字解析
- java 并发编程:线程安全管理类--原子操作类--AtomicBoolean
- Java 多线程学习(吐血超详细总结)
- synchronized、锁、多线程同步的原理是咋样的
- Android 高级面试-1:Handler 相关
- Handler-系列问题
- Android 消息机制 1-Handler(Java 层)
- Android 消息机制 2-Handler(Native 层)
关于 Framework 部分,非常建议在学习完毕之后去研究 DroidPlugin 的实现原理,因为他 hook 了非常多 Framework 层的代码,对于掌握整个 Android FrameWork 层大有裨益,同时也推荐博文 Android 插件化原理解析,在后面的插件化也会提到这篇文章
- init 进程启动过程
- zygote 启动流程 , Android 系统启动-zygote 篇
- SystemServer 启动流程 , Android 系统启动-SystemServer 上篇 , Android 系统启动-SystemServer 下篇
- 理解 Android 进程创建流程 , Android 应用进程启动流程
- AMS 启动流程
- Android 系统启动概述
- Launcher 启动流程
- Launcher 启动-AMS 过程
- Android 应用进程启动流程
- 子 Activity 组件的 startActivity 逻辑
- Activity 的暂停过程
- Android 深入四大组件(六)Android8.0 根 Activity 启动过程(前篇)
- Android 深入四大组件(二)Service 的启动过程
- ActivityThread.main 循环过程
- AMS 相关重要概念
- Launcher 启动-AMS 过程
- WindowManagerService 全面解析
- 创建窗口的过程
- Android 解析 WindowManagerService(一)WMS 的诞生
- Android 包管理机制
- 应用程序安装流程
- 先了解关于 APK 的方方面面
- 手动编译一个 APK,了解打包出 apk 的一个编译过程
- 了解 gradle 的使用,以及 gradle 的基本原理,agp 的基本原理,agp 的重要 task
- 笔者总结的 ASM 系列学习笔记
学习插件化预备工作:
学习阶段:
网络编程部分主要是根据学习 IM 路线进行一个总结
首先推荐一个网站,即时通讯网,网络相关知识大部分都能够找到
下面是作者在学习过程中,觉得受益较大的一些博文,当然博文大部分都是在 即时通讯网 上的
- Android 内核剖析.pdf
- Android 系统源代码情景分析.pdf
- Thinking In Java 第四版.pdf
- Java 数据结构和算法.pdf
- Java 编程思想第三版.pdf
- 代码整洁之道.pdf
- 图解 HTTP 完整版.pdf
- 重构-改善既有代码的设计.pdf
- 算法第四版.pdf
- 程序是怎样跑起来的.pdf
- C Primer Plus 第六版 [带书签].pdf