项目模块拆分为组件的目的就是解耦,因此模块间是不能互相依赖的。这里使用 Alibaba 开源的 ARouter 来实现不同模块间的通信功能。在 app 模块添加 ARouter 依赖和所有的业务模块依赖:
build.gradle(:app)1 2 3 4 5 6 7 8 9 10 11 12
| dependencies { implementation(Libs.arouter_api) implementation(Libs.arouter_compiler) implementation project(":appbase") implementation project(":module_city") implementation project(":module_risk_level") implementation project(":module_test_agency") implementation project(":module_travel_policy")
... }
|
接着在每个业务模块下的 build.gradle 文件中添加代码:
1 2 3 4 5 6 7 8 9 10 11 12 13
| apply plugin: 'kotlin-kapt' android { ... defaultConfig { ... kapt { arguments { arg("AROUTER_MODULE_NAME", project.getName()) } } } ... }
|
根目录下的 gradle.properties 添加:
1
| android.enableJetifier=true
|
完成上述配置后,就可以在项目中使用 ARouter 进行路由管理了。
备注
欢迎关注微信公众号:非也缘也