随着开发趋向于模块化,ARouter使用则也越来越多。用于模块化之间的通信问题。
如果需要在各个模块之间相互跳转,则按下方方式实现,已淌过坑。
首先,在根目录(项目)的 build.gradle 中添加如下代码
classpath 'com.alibaba:arouter-register:1.0.2'
然后在每个有跳转需求的Module中均需添加配置。
implementation 'com.alibaba:arouter-api:1.5.1'
集成完成以后,依旧在每个需要跳转的Module中添加如下配置。
注意。这里有个坑。kotlin项目和java的配置是不一样的。
先说kotlin:
首先,在头部添加插件
plugins {
id 'com.android.library'
id 'kotlin-android'
id 'kotlin-android-extensions'
id 'kotlin-kapt'//添加此插件
}
其次,在 defaultConfig 中添加如下:
defaultConfig {
...
kapt{
arguments{
arg("AROUTER_MODULE_NAME", project.getName())
}
}
...
}
最后,在dependencies中添加:
kapt 'com.alibaba:arouter-compiler:1.5.1'
到此即可
java添加方法:
java不用添加kapt插件支持,只需在 defaultConfig 中:
defaultConfig {
...
javaCompileOptions {
annotationProcessorOptions {
argument("AROUTER_MODULE_NAME", project.getName())
}
}
...
}
随后,在 dependencies 中添加:
annotationProcessor 'com.alibaba:arouter-compiler:1.5.1'
配置到这一步就完成了。只是使用ARouter的话。记得在Application中初始化:
ARouter.openDebug()
ARouter.init(this)
后续的跳转代码就不在这里细说了。配置到此结束。