我正在使用Android Studio处理编译/构建我的EvolveSMS主题。但是,我最近开始对主题进行微小的更改,我想要一种方法将它保存在同一个项目中,但仍然可以构建标准主题。
如果不清楚,请举个例子。
我有主题A.我改变了主题A中某些东西的颜色。这是一个小改动,但我想保留A和新创建的B的版本,这样我就可以构建它们。但是,我不想为B创建一个全新的项目,因为它是一个微小的变化。
有没有这样做?
答案 0 :(得分:1)
您需要名为" Graors"的Gradle功能。它们允许您在" base"。
上叠加代码和属性android {
...
defaultConfig {
minSdkVersion 8
versionCode 10
}
productFlavors {
flavor1 {
packageName "com.example.flavor1"
versionCode 20
}
flavor2 {
packageName "com.example.flavor2"
minSdkVersion 14
}
}
}
上面的代码示例(build.gradle
)会产生两种风格。
<强> flavor1 强>
minSdkVersion 8
packageName "com.example.flavor1"
versionCode 20
和
android.sourceSets.flavor1
android.sourceSets.flavor1Release
android.sourceSets.flavor1Debug
android.sourceSets.androidTestFlavor1
和
flavor1Compile
flavor1Test
<强> flavor2 强>
versionCode 10
packageName "com.example.flavor2"
minSdkVersion 14
等...
android.sourceSets
定义了源集(他们是谁?)
android.sourceSets.main → src/main android.sourceSets.flavor1 → src/flavor1
让我们说一个主题依赖于图书馆......
dependencies {
flavor1Compile "..."
}
请在此处查看官方Android Studio指南:
http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Product-flavors
请参阅此处官方Gradle指南: http://www.gradle.org/docs/current/userguide/nativeBinaries.html#flavors