模块化开发步骤 + ARouter的使用 + 结合mvp结构分模块(一)
模块化开发步骤 + ARouter的使用 + 结合mvp结构分模块(二)
模块化开发步骤 + ARouter的使用 + 结合mvp结构分模块(三)
下面我们来讲解支持模块间的路由、通信、解耦的第三方框架——阿里巴巴ARouter框架:
Arouter官方github地址:https://github.com/alibaba/ARouter
只是Arouter的使用的话就很简单,四步:
1、依赖:
android {
defaultConfig {
...
javaCompileOptions {
annotationProcessorOptions {
arguments = [AROUTER_MODULE_NAME: project.getName()]
}
}
}
}
dependencies {
//阿里路由框架,可替换成最新版本。注意api和compiler版本需要相对应
implementation'com.alibaba:arouter-api:1.5.0'
annotationProcessor 'com.alibaba:arouter-compiler:1.2.2'
...
}
2、application里初始化:
// 这两行必须写在init之前,否则这些配置在init过程中将无效
if (是否debug模式) {
ARouter.openLog(); // 打印日志
ARouter.openDebug(); // 开启调试模式(如果在InstantRun模式下运行,必须开启调试模式!线上版本需要关闭,否则有安全风险)
}
// 尽可能早,推荐在Application中初始化
ARouter.init(this);
3、声明Activity或者Fragment的注解:
// 在支持路由的页面上添加注解(必选)
// 这里的路径需要注意的是至少需要有两级,/xx/xx
@Route(path = "/test/activity")
public class YourActivity extend Activity {
...
}
4、跳转
//activity跳转
ARouter.getInstance().build("/test/activity").navigation();
//fragment添加
fragmentList.add((Fragment) ARouter.getInstance().build("/test/fragment").navigation());