前言
Hello,各位Android学习爱好者,现在我以文档的方式为大家全面总结了Android所涉及的知识点,全文总共30万+字,涉及各种原理,以及源码分析,视频分析。图片是一张张绘制而出,欢迎大家进行解读!
全文总计30万+字、200个知识点、330张原理、流程图。
包含(视频+文字):
Android
基础-性能优化-Framework
-compose
开源项目-音视频初中高-架构-车载-Flutter
-Kotlin
-Harmony OS
提纲如下:
获取本文PDF版(视频+文字原稿),请💡关注公众号 『初一十五a 』,不定期分享知识😺
💡 一、Android基础篇
1.注解(视频)
-
Android
注解入门以及自定义注解 - 注解作用
-
APT
实现原理
2.泛型
- 为什么需要泛型
- 泛型类和泛型方法、泛型接口的定义
- 泛型方法辨析
- 泛型中的约束和局限性
- 泛型类型的继承规则
- 泛型类型的继承规则
- 通配符类型
3.Retrofit
-
Retrofit
2.0原理解析 - 初始化
Retrofit
- 调用
4.ButterKnife
-
ButterKnife
原理 -
ButterKnifeProcessor
源码分析 - 生成的辅助类分析
-
ButterKnife
的bind
方法
5.架构动态编程技术原理
-
Android
动态代理 -
Android
反射原理与使用 -
Android AOP
面向切面编程实现方案 - 字节码手术刀
JavaSSIt
ASM
6.Android
虚拟机指令(视频)
-
Android
热修复Tinker
接入的示例分析 -
Android
虚拟机相关 - 面试逼问的
Android
虚拟机,你掌握多少?
💡二、Android
性能优化篇
1.启动优化(视频)
- 主线程优化
- 后台任务优化
- 全局优化
2.内存优化
-
APP
组成以及限制 - 查看系统给
APP
分配的内存限制 -
Android
低内存杀进程机制 - 内存三大问题
-
Android
内存泄漏常见场景以及解决方案
3.启动优化速度
-
APP
启动流程 - 启动状态
- 启动耗时统计
CPU Profile
4.卡顿优化(视频)
- 分析工具
CPU Profile
5.布局优化
- 减少层级
- 过度渲染
- 布局加载优化
6.崩溃优化
- 崩溃的收集
ANR
- 应用退出
- 崩溃处理分析
7.Android 应用启动全流程分析
-
Input
触控事件处理流程 - 应用进程的创建与启动
- 应用主线程消息循环机制建立
- 应用
Application
和Activity
组件创建与初始化 - 应用
UI
布局与绘制 -
RenderThread
渲染 -
SurfaceFlinger
合成显示
💡三丶Framework
篇
1.Framework
通信(视频)
Binder
Handler
-
Jetpack
之LiveData
订阅与数据分发
2.Framework
底层服务(视频)
-
Framework
源码AMS
-
Framework
源码PMS
-
Framework
源码IMS
-
Android WMS
绘制流程
3.Framework
事件机制
-
Framework
事件机制—Android
事件处理的三种方法- 背景
-
Android
基于监听 -
Android
基于回调 -
Handler
消息处理 Looper
- 分发消息
-
Framework
事件机制—onInterceptTouchEvent
拦截流程解析- 基本知识
- 事件处理流程
💡四丶Compose
(开源项目)
1. FlowLayout
- 效果
-
Compose
自定义Layout
流程 - 自定义
FlowLayout
2.Compose
版骨架屏
- 特性
- 使用
- 原理
3.对比XML
,Compose
如何
4.StateLayout
- 原理
- 使用
5.为什么 Compose
没有布局嵌套问题?
- 固有特性测量使用
-
Compose
测量过程源码分析
6.SmartRefreshLayout
- 效果
- 使用
- 原理分析
7.Compose
完全脱离 View
系统了吗?
- 现象分析
- 原理分析
8.Compose
+ MVI
+ Navigation
快速实现客户端
9.@Compose
注解到底做了什么?
- 前置内容
-
@Compose
注解作用
10.Compose
渲染性能
11.Google I/O
: Jetpack Compose
中常见的性能问题
- 如何争取配置应用
-
Compose
的最佳实践
💡五丶Android
音视频篇(视频)
1.初级音视频
- 通过三种方式绘制图片
- 使用
AudioRecord
采集音频PCM
并保存到文件 - 使用
AudioTrack
播放PCM
音频 - 使用
Camera API
采集视频数据 - 使用
MediaExtractor
和MediaMuxer API
解析和封装mp4
文件 -
MediaCodec API
详解 - 音视频录制流程总结
2.中级音视频
-
OpenGL ES
介绍 -
OpenGL ES
环境搭建 -
OpenGL ES
定义形状 -
OpenGL ES
使用投影和相机视图 -
OpenGL ES
添加运动效果 -
OpenGL ES
响应触摸事件 -
OpenGL ES
着色器语言GLSL
-
通过
GLES20
与着色器交互 -
OpenSL ES
-
OpenSL
介绍和开发流程说明 -
OpenSL ES
使用示例 - 使用
OpenSL
播放PCM
数据 -
OpenSL
录制PCM
音频数据
-
-
OpenSL ES
利用SoundTouch
实现PCM
音频的变速和变调
3.高级音视频
-
MPEG-4/H.264 AVC
编解码标准 -
AAC
音频编码技术 -
HLS
和RTMP
协议 -
MP4.FLV.M3U8.TS.PCM/WAV
格式 -
FFmpeg
命令行工具(一):查看媒体文件头信息工具ffprobe
-
FFmpeg
命令行工具(二):播放媒体文件的工具ffplay
-
FFmpeg
命令行工具(三):媒体文件转换工具ffmpeg
-
FFmpeg
命令行工具(四):FFmpeg
调整音视频播放速度 - 将
FFmpeg
移植到Android
平台 -
FFmpeg API
介绍与通用API
分析 -
FFmpeg
核心模块libavformat
与libavcodec
分析 -
FFmpeg
结构体:-
AVFormatContext
分析 -
AVStream
分析 -
AVPacket
分析 -
AVFrame
分析 -
AVCodec
分析 -
AVCodecContext
分析 -
AVIOContext
分析 -
FFmpeg
中重要结构体之间的关系
-
-
FFmpeg
开发之AVFilter
使用流程总结 -
FFmpeg
和NDK
在Centos7
上交叉编译 -
x264
和NDK
在Centos7
上交叉编译 -
faac
和NDK
在Centos7
上交叉编译 -
Webrtc
音视频通话
💡六丶Android
架构篇(视频)
1.数据结构和算法
2.二十三种设计模式
3.网络访问
-
OKhttp
网络架构 Retrofit
Glide
Dagger2
MVP.MVC.MVVM
Jetpack Room
💡七丶Android
车载篇
1.Android Auto
2.开发汽车媒体应用
3.构建Android Auto
即时通信应用
4.构建车载导航和地图注点应用
5.构建Android Automotive OS
视频应用
6.测试Android
车载应用
7.分发Android
汽车应用
8.适用于汽车的Google Play
服务
9.Android Automotive OS
的通知
💡八丶Flutter
篇(视频)
1.Dart
语法
2.环境搭载
3.Dart
的集合和控制流程
4.Dart
的类,类继承,异步操作
5.基本布局,基本容器,基本组件
6.Flutter
之列表,弹框,网络请求,数据持久化
7.JSON
解析
8.Flutter
之动画
9.Flutter
之Row
使用
10.Flutter
主工程引入包,模块化
11.Flutter
项目实战
💡九丶Kotlin
涉及: 对象丶类丶继承丶变量丶常量丶拓展函数等内容
💡十丶鸿蒙资料
涉及: Ability
组件、分布式任务、事件总线、鸿蒙线程、UI
自定义控件等内容)
以上就是Android
的全部内容,内容一章一章收集,图片一张一张整理,觉得不错的点个赞
获取本文PDF版(视频+文字原稿),请💡关注公众号 『初一十五a 』,不定期分享知识😺
网友评论