Skip to content

noResign/FakeARouter

Repository files navigation

FakeARouter

本项目主要是学习一下ARouter,但光看也不行,所以顺便简单自己也将其实现一下吧

其主要涉及的技术有:apt(现在有ksp了,后面去学学)、自定义gradle插件技术、Transform(在gradle8.0+版本已被移除,本文基于[ArouterGradlePlugin][AndroidAOP]进行了相应实现)、ASM,以及运行这个项目需要去掌握的组件化以及android工程中模块配置等技术

1 gradle插件

ARouter引入gradle插件,主要是为使用asm等技术,自动扫描生成的帮助类并将其注入LogisticsCenter类中进行统一注册

自定义插件在这里就不叙述了,这里记录几个注意点:

  • 注1:新建META-INF目录时,需要先建META-INF目录,再建gradle-plugins目录
  • 注2:Android Stdio的gradle一般只显示test task,需要将如下配置打开,打开后gradle就有上面的所示的其他任务了
设置

发布插件到本地仓库repo

发布插件

About

ARouter相关技术学习以及kotin版实战

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages