知识体系引导
了解Android系统架构
如何玩Android系统源码
Android性能优化盘点系列:
Android性能优化盘点 - 系统基础
Android性能优化盘点 - 启动优化
Android性能优化盘点 - 卡顿优化
Framework:
一、系统启动
Android系统启动(一)-开篇
Android系统启动(二)-Init篇
Android系统启动(三)-Zygote篇
Android系统启动(四)-SystemServer篇
Android系统启动(五)-ActivityManagerService篇
Android系统启动(六)-Launcher篇
二、进程管理
Android进程管理篇(一)-应用进程启动过程
Android进程管理篇(二)-进程查杀方式总结
Android进程管理篇(三)-进程adj算法
Android 进程管理篇(四)-cpu限制
Android 进程管理篇(五)-调度策略与优先级
lowmemorykiller总结
打通Framework与Kernel-谈谈我对进程管理的理解
三、通信
- 进程内通信:
Android通信方式篇(一)-消息机制(Java层)
Android通信方式篇(二)-消息机制(ThreadLocal详解)
Android通信方式篇(三)-消息机制(Native层) - 进程间通信:
Android通信方式篇(四)-Binder机制(开篇)
Android通信方式篇(五)-Binder机制(Kernel层)
Android通信方式篇(六)-Binder机制(Native层(上))
Android通信方式篇(七)-Binder机制(Native层(下))
Android通信方式篇(八)-Binder机制(Framework层)
Binder梳理
四、图形系统
粗略梳理:
Android图形系统(一)-Window加载视图过程
Android图形系统(二)-DecorView布局加载流程
Android图形系统(三)-View绘制流程
Android图形系统(四)-Activity、Window、View关系总结
Android图形系统(五)-Surface图形系统概览
Android图形系统(六)-app与SurfaceFlinger服务连接过程
Android图形系统(七)-app请求SurfaceFlinger创建Surface过程
Android图形系统(八)-app与SurfaceFlinger共享UI元数据过程
Android图形系统(九)-View、Canvas与Surface的关系
Android图形系统(十)-SurfaceFlinger启动及图层合成送显过程
Android图形系统(十一)-Choreographer
Android图形系统(十二)-流畅度概念
Android图形系统(十三)-Vsync信号处理HWUI:
Android9.0 硬件加速(一)-开篇
Android9.0 硬件加速(二)-RenderThread线程的启动
Android9.0 硬件加速(三)-绑定Surface到RenderThread
Android9.0 硬件加速(四)-UI Thread绘制过程
Android9.0 硬件加速(五) -RenderThread渲染过程Input:
Android Input(一)-相关模块初始化
Android Input(二)-输入子系统
Android Input(三)-InputReader获取事件
Android Input(四) -InputDispatcher分发事件
Android Input(五)-InputChannel通信
Android Input(六)-ViewRootImpl接收事件
Android Input(七)-ViewRootImpl处理事件
Android Input(八)- ANR原理分析
Android Input(九)-Input问题分析指北
Android Input(十)-整体流程图
五、核心服务
-
AMS
- Activity
四大组件之Activity(一)-启动过程概览
四大组件之Activity(二)-StartingWindow流程分析
四大组件之Activity(三)- 任务栈 - Service
四大组件之Service(一)-Service启动过程
- Activity
PMS
Android PMS(一)-启动流程
Android PMS(二)-Apk安装流程
Android PMS(三)-Installd执行dexopt流程
Android PMS(四)-安装微信WMS
Android WMS(一)-窗口管理
Android WMS(二)-Surface管理
Android WMS(三)- Input管理
六、性能优化专题
工具:
性能优化工具(一)-StrictMode
性能优化工具(二)-Systrace
性能优化工具(三)-TraceView
性能优化工具(四)-Allocation Tracker
性能优化工具(五)-Heap Viewer
性能优化工具(六)-Layout Inspector
性能优化工具(七)-调试GPU过度绘制 & GPU呈现模式分析
性能优化工具(八)-MAT
性能优化工具(九)-LeakCanary
性能优化工具(十)- Android内存分析命令
性能优化工具(十一)-Android Profiler
性能优化工具(十二)-使用 CPU Profiler 检查 CPU Activity 和函数跟踪
性能优化工具(十三)-使用 Memory Profiler 查看 Java 堆和内存分配
性能优化工具(十四)-利用 Network Profiler 检查网络流量
附:
Simpleperf
Battery Historain
Matrix-
实战:
ANR问题处理
Android ANR(一)-基本分析方法
Android ANR(二)-触发原理优化实践&思考:
性能优化实践(一)-安装包瘦身
性能优化实践(二)-布局优化
性能优化实践(三)-卡顿优化思考
性能优化实践(四)-内存优化思考systrace看冷启过程:
从systrace看app冷启动过程(一)-应用程序启动
从systrace看app冷启动过程(二)-首帧的绘制与渲染
从systrace看app冷启动过程(三)-首帧的合成与送显启动耗时分析:
启动耗时分析(一)-测量应用启动时间
启动耗时分析(二)-CPU问题分析
启动耗时分析(三)-ART编译分析
启动耗时分析(四)-具体方法耗时分析内存问题分析:
内存问题分析(一)-内存管理基础(上)
内存问题分析(二)-内存管理基础(下)编译问题分析:
Android 9.0 ART编译分析(一)-编译通路梳理
Android 9.0 ART编译分析(二)-Installd触发dex2oat编译流程
Android 9.0 ART编译分析(三)-虚拟机触发dex2oat编译流程应用启动流程梳理
应用启动流程梳理(一)-应用安装流程
应用启动流程梳理(二)-Input事件传递流程
应用启动流程梳理(三)-Activity启动流程
应用启动流程梳理(四)-视图处理流程
七、其他
手机状态栏信号显示流程浅析
Service的自动重启问题
任务列表流程浅析
Android phone 拨号、来电流程
内存耗用:VSS/RSS/PSS/USS 的介绍
App
一、Java基础
Java基础(一)-泛型
Java基础(二)-注解
Java基础(三)-反射
Java基础(四)-IO / NIO
Java基础(五)-集合之HashMap
Java基础(六)-CurrentHashMap线程安全实现
Java基础(七)-LinkedHashMap原理分析
Java基础(八)-设计模式
二、网络
Android网络编程(一)-协议分层
Android网络编程(二)-session、cookie、token
Android网络编程(三)-HTTP协议
Android网络编程(四)-TCP / UDP协议
Android网络编程(五)-由Okhttp看网络库
三、线程
多线程(一)-线程基础
多线程(二)-线程安全
多线程(三)-为主线程减负的多线程方案
四、虚拟机
虚拟机(一)-JVM执行java代码流程浅析
虚拟机(二)-Dalvik执行java代码流程浅析
虚拟机(三)-JVM 、DVM 、ART简单对比
虚拟机(四)-JVM垃圾回收
class & dex
JVM虚拟机
五、其他
Android序列化浅析
Android项目构建过程分析
android imageview scaletype属性
Android中shape中的属性大全
Android数据存储路径分析
viewpage+fragment浅谈几点问题
Linux:
一、内存管理:
Linux学习-内存管理篇(一) - 概览
Linux学习-内存管理篇(二)-MMU介绍
Linux学习-内存管理篇(三)-节点、分区、页、页框、页表关系分析
Linux学习-内存管理篇(四)-内存分配算法
Linux学习-内存管理篇(五)-内存分配函数
Linux学习-内存管理篇(六)-内存回收(lru链表)
二、进程管理与进程调度
Linux学习-进程管理与调度(一)-进程描述及其生命周期
Linux学习-进程管理与调度(二)-进程的创建与销毁
Linux学习-进程管理与调度(三)-调度基础
Linux学习-进程管理与调度(四)-负载均衡与实时性
三、文件&权限:
Linux学习 - 文件基本属性
Linux学习 - SELinux/SEAndroid
脚本入门:
一、Python
Python入门(一)-语法基础
Python入门(二)-函数
Python入门(三)-面向对象
Python入门(四)-字符串常规操作
Python入门(五)-文件读写
二、makeFile
Makefile入门(一)-概述
Makefile入门(二)-MakeFile介绍
Makefile入门(三)-书写规则
Makefile入门(四)-书写命令
Makefile入门(五)-使用变量
Makefile入门(六)-使用条件判断
Makefile入门(七)-使用函数
Makefile入门(八)-make运行
Makefile入门(九)-隐含规则
Makefile入门(十)-使用make更新函数库文件
Makefile学习总结
数据结构&算法
数据结构&算法(一)-算法思想
数据结构&算法(二)-单链表
数据结构&算法(三)-二叉树
数据结构与算法(四)-排序
数据结构&算法(五)-字符串
数据结构&算法(六)-数组
更多相关文章
- android杀进程方法
- 利用oom_adj提高Application所在进程的优先级
- Android 7.1.2(Android N) Activity启动流程分析
- 基于Android P 背光流程
- android中线程进程模型
- Android ContentProvider 多进程multiprocess 详解
- Android之MediaScanner流程
- android 网络拨号流程