Android-Notes icon indicating copy to clipboard operation
Android-Notes copied to clipboard

✍🏻 关注基础知识,打造优质Android博客

✍🏻 这里是写博客的地方,努力打造一系列适合初中高级工程师能够看得懂的优质文章,如果想第一时间获取文章,欢迎关注我的公众号:xfhy,Android的路很长,我们一起走下去!:v:

本项目会长期更新,不断完善 :triangular_flag_on_post: 如果大家觉得它对你有帮助的话,可以点个star收藏一下~ 你的鼓励是我写作的最大动力:beers:

计算机基础 :computer: 数据结构与算法 :pencil2: 设计模式 :trophy: Java :coffee: Kotlin :fire: Android :zap:

0. Android知识体系

下面是我总结的一份Android知识体系,知识体系可以用来帮助我们进行查漏补缺,进阶必备:point_left:

图片看不清楚朋友的可以访问源文件,或者查看幕布笔记链接: Android知识体系最新

1. 计算机基础

1.1 操作系统

1.2 计算机网络

  • HTTP基础
  • 编码、加密、Hash、序列化和字符集
  • 登录和第三方授权
  • TCP/IP协议族
  • HTTPS基础

2. 数据结构与算法

  • 打遍天下二叉树

3. 设计模式

4. Java

集合

  • ArrayList源码解析
  • LinkedList源码解析
  • CopyOnWriteArrayList源码解析
  • HashMap源码解析
  • ConcurrentHashMap源码解析
  • TreeMap 和 LinkedHashMap
  • HashSet 和 TreeSet
  • Android中的Bundle,SparseArray和ArrayMap

基础

  • 从源码角度彻底搞懂String,StringBuffer,StringBuilder_20180420
  • String
  • 泛型
  • 异常
  • 反射
  • 注解
  • 反射性能开销原理及优化

JVM

  • JVM内存数据区域
  • HotSpot虚拟机对象
  • 垃圾收集器与内存分配策略
  • Java字节码(class文件)解读
  • 字节码指令简介
  • 虚拟机类加载机制
  • 虚拟机字节码执行引擎
  • 前端编译与优化
  • 后端编译与优化
  • Java内存模型与线程
  • 线程安全与锁优化

5. Kotlin

  • Kotlin协程与架构组件一起使用
  • 协程的取消和异常Part1-核心概念
  • 协程的取消和异常Part2-取消
  • 协程的取消和异常Part3-异常
  • 协程的取消和异常Part4-不应取消的协程

  • 0.Kotlin源码地图
  • 1.Kotlin挂起函数原理
  • 2.Kotlin协程之Continuation和suspendCoroutine
  • 3.Kotlin协程之createCoroutine和startCoroutine
  • 4.Kotlin协程之launch原理
  • 5.Kotlin协程之Dispatchers原理

6. Android

Android打包流程

系统源码解析

  • 死磕Android_View工作原理你需要知道的一切
  • 死磕Android_App_启动过程(含_Activity_启动过程)
  • 死磕Android_Service启动流程分析(一)
  • 死磕Android_Service绑定流程分析(二)
  • 死磕Android_BroadcastReceiver_工作过程
  • Lifecycle_原理解析
  • ViewModel_使用及原理解析
  • Handler机制你需要知道的一切
  • 死磕Android_ContentProvider_启动
  • LiveData_使用及原理解析
  • Window,Activity,View三者关系
  • Handler同步屏障
  • Choreographer原理及应用
  • PMS安装App的过程
  • Handler相关知识点大全

三方库原理

  • LeakCanary 原理探究
  • OkHttp3 原理探究
  • Retrofit 原理解析
  • Glide主流程源码解析
  • RxJava3原理解析
  • Android-skin-support 换肤原理详解

实战常见问题

  • APK包体积优化
  • 屏幕适配
  • 插件化
  • 热更新

Gradle

  • Gradle系列(一) Groovy 基础
  • Gradle系列(二) Gradle执行顺序和task
  • Gradle系列(三) Gradle配置构建和渠道包
  • Gradle系列(四) Gradle插件
  • Gradle系列 插件练习-动态移除权限
  • 手把手教大家用Transform API和ASM实现一个防快速点击案例

View

  • ConstraintLayout使用

数据库

  • SQLite基础

多进程

  • Android进程间通信: 深入浅出AIDL
  • Android进程间通信: Messenger详解
  • Android进程间通信: Binder详解
    • Binder是什么
    • 为什么采用Binder作为IPC机制
    • Binder通信设计
    • Binder内存映射和接收缓存区管理
    • Binder模型原理步骤说明
    • 谈谈你对Binder的理解
    • Android Framework IPC方式
    • 一次完整的 IPC 通信流程是怎样的?
    • Binder 对象跨进程传递的原理是怎么样的?
    • Binder OneWay 机制
    • Binder传输大小限制
    • Binder可以同时处理的并发请求量是多少
    • Binder需要传输大数据该怎么办?
    • Binder通信过程中抛出异常、Error怎么办?系统是怎么处理的
    • Binder在同进程中使用时会影响效率么?
    • Intent使用过程中的限制

反编译

  • Android_反编译基础知识
  • Android_反编译实战

NDK

  • 1_NDK和JNI基本概念
  • 2_Android_JNI初识_HelloWorld
  • 3_JNI开发系列之Java与C相互调用
  • 4_JNI_NDK入门详解

About me

我的公众号 xfhy ,不局限于分享技术,欢迎扫描关注~

License

Copyright 2021 xfhy

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.