为什么使用路由?
- 跳转:路由有强大的页面跳转优势,具体有哪些优点,可以参见下面相应文档,不做过多的描述。
- 拦截:它的另外一个非常强大的功能。在某些场景需要我们队跳转做一定的判断,这时候就需要拦截功能。
ARouter
阿里巴巴开源路由框架
github:ARouter
开源最佳实践:Android平台页面路由框架ARouter
Android 路由框架ARouter最佳实践
Gradle 配置
implementation 'com.alibaba:arouter-api:1.4.0'
annotationProcessor 'com.alibaba:arouter-compiler:1.2.1'
implementation 引用 arouter-api 库,annotationProcessor 是apt注解框架声明。
在base module 或者各个module 的gradle的 defaultConfig 属性中加入以下代码:
javaCompileOptions {
annotationProcessorOptions {
arguments = [AROUTER_MODULE_NAME: project.getName()]
}
}
annotationProcessor 使用 javaCompileOptions 的配置,来获取当前Module的名字。
每个模块的 dependencies 需要ARouter apt 的引用:
annotationProcessor 'com.alibaba:arouter-compiler:1.2.1'
否则无法在 apt 中生成索引文件,无法完成跳转。
网友评论