说明:
尝试用下一条规则组织子模块:
1). 主应用模块与Activity、Fragment + xmlayouts
没有模块必须依赖于这个模块。该模块将依赖于资源模块、子模块 1、子模块 2。
不要在此模块中存储任何共享值,例如 colors、dimens 等。
2). 资源模块与colors、attrs、dimens等。
只需创建 android 库模块并在此处仅存储共享资源。此模块必须没有依赖项。每个需要资源的模块都依赖于这个模块。
3)。 子模块 1 带有自定义警报。
此模块将依赖于资源模块。
4). 子模块 2 带有自定义视图。
此模块将依赖于资源模块。
图表:
代码:
https://github.com/AlexanderGarmash/AndroidModulesShowcase
说明:
<module_root>/app/build.gradle 依赖部分:
compile project (':ResourceModule')
compile project (':Submodule1')
compile project (':Submodule2')
<module_root>/ResourceModule/build.gradle 依赖部分:
什么都没有
<module_root>/Submodule1/build.gradle 依赖部分:
compile project (':ResourceModule')
<module_root>/Submodule2/build.gradle 依赖部分:
compile project (':ResourceModule')
优点:
缺点:
- 如果您有很多模块,请不要忘记链接到
ResourceModule 无处不在。
更新
不要忘记导入正确的R 类。