我要求Android产品风味和配置帮助维护和支持单个代码库来分发多个客户端。 我提到了几个链接,它给出了一个基本的想法。我的问题实际上是我正在朝着正确的方向发展。我对这种情况很新。
例如: 产品名称:MohanApp 客户1:卡通, 客户2:迪士尼, 客户3:Pogo,
flavorDimensions "app", "server"
productFlavors {
cartoon {
dimension "app"
applicationId 'com.cc.whitelabel.cartoon'
manifestPlaceholders = [
appIcon: "@drawable/cartoon_network"
]
}
disney {
dimension "app"
applicationId 'com.cc.whitelabel.disney'
}
pogo {
dimension "app"
applicationId 'com.cc.whitelabel.pogo'
}
dev {
dimension "server"
}
staging {
dimension "server"
}
production {
dimension "server"
}
}
先谢谢。
答案 0 :(得分:0)
我找到了Android WhiteLabeling / App Branding / ProductFalvours的解决方案,在这里我分享了我的build.gradle来创建应用商标。 gradle文件语法可能因IDE的版本而异。
工具:
Android Studio IDE:3.1
目标版本:27
AppModule build.gradle
android {
compileSdkVersion 27
defaultConfig {
applicationId "com.appmohan"
minSdkVersion 21
targetSdkVersion 27
versionCode 2
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
// APK signing configuration
android.signingConfigs {
MobileApp { }
}
flavorDimensions "app"
productFlavors {
cartoon {
dimension "app"
applicationId "com.appmohan.cartoon"
versionName '1.0.1'
versionCode 2
minSdkVersion 21
targetSdkVersion 26
}
disney {
dimension "app"
applicationId "com.appmohan.disney"
versionName "1.0.1"
versionCode 2
minSdkVersion 21
targetSdkVersion 26
}
pogo {
dimension "app"
applicationId "com.appmohan.pogo"
versionName "1.0.1"
versionCode 2
minSdkVersion 21
targetSdkVersion 26
}
}
android.buildTypes {
debug {
//do our url stuff
}
stagging {
//do our url stuff
}
release {
//do our url stuff
}
}
sourceSets.cartoon{
res.srcDirs = ['res', 'src/cartoon/res']
}
sourceSets.disney{
res.srcDirs = ['res', 'src/disney/res']
}
sourceSets.pogo{
res.srcDirs = ['res', 'src/pogo/res']
}
}
出于实验和教育目的,我创建了这个应用程序。 GitHub Link AndroidWhiteLabel/App Branding/ProductFalvour 感谢Android Studio实现的结果。感谢所有推荐作者。
快乐编码:)