阿里组件化框架ARouter,
一、无法跳转的可能情况:
1.每个需要用到跳转的module及主app的build.gradle中需要添加(像base、util之类的库不用加)
defaultConfig {
javaCompileOptions {
annotationProcessorOptions {
arguments = [AROUTER_MODULE_NAME : project.getName()]
}
}
}
dependencies {
// ARouter引入
implementation 'com.alibaba:arouter-api:1.5.0' // 换用最新版本
annotationProcessor 'com.alibaba:arouter-compiler:1.2.2' // 换用最新版本
}
2.主app的build.gradle中需要依赖所有使用路由的module,使用路由的module之间不用相互依赖
(如:modue_A是宿主APP,module_B和module_C之间有相互跳转的操作,则只需在宿主module_A的gradle中配置
implementation project(':module_B')
implementation project(':module_C')
3.使用到ARouter注解跳转的页面类名不要一样(就算包名不一样,类名也要不一样),还有这些页面使用的XML布局名字也要不一样
二、携带参数展示问题
跳转目标Activity,如果不携带参数,目标Activity中可以不需要 ARouter.getInstance().inject(this);
如果携带参数,目标Activity中需要加上ARouter.getInstance().inject(this); 不加获取不到传递的数据