HeadFirstAndroidIndex

记录一下我学习过的好的项目 以及 个人练习项目。

以前是每个专题新建一个 Github 仓库和一个对应的 AS 工程,比较清晰,但是找起来也比较麻烦,反正是练习,放一起算了。

使用步骤记录:

  1. 在当前目录先创建好需要练习的工程的目录,例如 Jetpack 、Fragment
  2. 然后在再 AS 中创建工程,包名前缀为 me.yifeiyuan.hf.xxx
  3. 记得语言选 Kotlin 练习一下

学习 APM

ADI:项目,ADI(Android Debug Intensive) 是通过 JVMTI 实现的 Android 应用开发调试的增强工具集,目前主要提供性能相关的监控能力。

学习插件化

Android插件化原理解析 : 文章,有一系列,是入门首选。

understand-plugin-framework 是文章配套代码,不过内容比较少。

AndroidComponentPlugin :项目,简单实现四大组件的插件化,比较全。

学习 AOP/ASM/GradlePlugin

ASM

ByteX :项目,是字节跳动开源的项目,使用 ASM 写了很多 Gradle 插件。

LargeImageMonitor :项目,是一个使用ASM进行字节码插桩的大图监控框架,可以对我们要加载的图片进行监控,如果出现图片超过阈值的情况会进行报警。

学习架构

android/architecture-samples :项目,是 Android 官方提供的开源项目,是 Android Architecture Blueprints V2,展示了很多架构样例,并运用了很多技术,非常值得学习。

  • dagger & hilt
  • rxjava
  • Mvvm
  • Mvp
  • Clean
  • ...

android/sunflower :项目,是 Android 官方提供的项目,指导关于 Jetpack 的最佳实践,是学习架构和 Jetpack 的不二之选。

https://github.com/android/plaid : 项目,Android 官方出的一个项目。

学习 Flutter

flutter 开发者帮助 APP,包含 flutter 常用 140+ 组件的demo 演示与中文文档

闲鱼大量使用了 Flutter,并输出了一系列高质量文章,非常值得一看: https://www.yuque.com/xytech/flutter

微店的Flutter混合开发组件化与工程化架构

Flutter实战详解--高仿好奇心日报

Flutter仿网易云音乐:播放界面

我自己的项目

Fantasy :项目,一个 UI 库。