我一直在尝试根据其类/包职责将我的项目拆分为模块。不过,我似乎找不到任何传统的架构来指导我。
基本上,我的类(class)分割如下
app (module)
- Application
- Activities
- Fragments
- Views
- Data
Activity 和 fragment 充当 View 的 Controller 。我想做的是将所有内容拆分为:
app (module)
- Application
- Activities
- Fragments
dependencies {
- ui
- data
}
ui (module)
- Views
data (module)
- Data
问题在于,app 模块和 data 模块虽然有很大不同,但后端服务器端也依赖于相同的第三方库。此外, Activity 和 fragment 依赖于数据模块。
将项目拆分为单独的模块有哪些好的做法?在 Android/Android Studio/Gradle 中,是否可以有具有相同依赖项的不同模块?是否可以让两个模块相互依赖?
最佳答案
我以前从未在 Android 中做过,但对于 Java 项目,我使用 gradle 将其拆分为多个模块。我认为它在Android中会类似。
对于常见的依赖关系,在您的顶级 build.gradle
:
allprojects {
repositories {
jcenter()
}
dependencies {
// put common dependencies here
}
}
要让模块相互依赖,在模块
build.gradle
中:dependencies {
compile project(':data')
}
在您的
settings.gradle
,包括所有不同的模块:include 'app'
include 'data'
关于android - 将项目拆分为模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31191371/