gradle3.0多渠道打包
多渠道打包主要就是下面的代码
manifest
<meta-data
android:name="UMENG_APPKEY"
android:value="" />
<meta-data
android:name="UMENG_MESSAGE_SECRET"
android:value="" />
<meta-data
android:name="UMENG_CHANNEL"
android:value="${UMENG_CHANNEL_VALUE}" />
app:gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 25
defaultConfig {
applicationId "com.yitai.kaixinguagua"
minSdkVersion 19
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "Umeng"]//添加一个默认渠道号
javaCompileOptions { annotationProcessorOptions { includeCompileClasspath = true } }
externalNativeBuild {
cmake {
cppFlags ""
}
}
}
signingConfigs {
debug {
storeFile file("guagua.jks")
storePassword ""
keyAlias "key0"
keyPassword ""
}
release {
storeFile file("guagua.jks")
storePassword ""
keyAlias "key0"
keyPassword ""
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
/****多渠道开始 关键代码**/
flavorDimensions "default"
productFlavors {
_debug{dimension "default"}
kuan {dimension "default"}
xiaomi {dimension "default"}
qh360 {dimension "default"}
baidu {dimension "default"}
wandoujia {dimension "default"}
}
productFlavors.all {
flavor -> flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
}
/***多渠道结束****/
externalNativeBuild {
cmake {
path "CMakeLists.txt"
}
}
}
repositories {
flatDir {
dirs 'libs'
}
}
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'com.android.support') {
if (!requested.name.startsWith("multidex")) {
details.useVersion '25.4.0'
}
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:25.+'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
compile 'com.squareup.okhttp3:okhttp:3.2.0'
compile 'com.lzy.net:okgo:+'
compile 'com.lzy.net:okrx:+'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
compile 'com.liulishuo.filedownloader:library:1.6.8'
compile 'com.jakewharton:butterknife:7.0.1'
compile 'com.android.support:recyclerview-v7:25.+'
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'com.umeng.analytics:analytics:latest.integration'
compile 'com.github.yhaolpz:FloatWindow:1.0.8'
compile 'com.alibaba:fastjson:1.1.34.android'
compile 'com.yanzhenjie:andserver:1.0.2'
}
Application
/***获取渠道名****/
String channelName = AnalyticsConfig.getChannel(app);
UMConfigure.init(this, "appkey", channelName, UMConfigure.DEVICE_TYPE_PHONE, "");
这样就OK了