android studio多渠道号,多包名打包
第一步: 在清单文件中添加AndroidManifest.xml文件
第二步:app的build.gradle中添加如下代码
import org.apache.tools.ant.taskdefs.condition.Os
apply plugin: ‘com.android.application’
android {
compileSdkVersion PROP_COMPILE_SDK_VERSION.toInteger()
buildToolsVersion PROP_BUILD_TOOLS_VERSION
defaultConfig { applicationId "com.ftaro.kingwar.abtv" minSdkVersion 16 targetSdkVersion 18 versionCode 3804 versionName "3.8.04"}sourceSets.main { java.srcDir "src" res.srcDir "res" jniLibs.srcDir "libs" manifest.srcFile "AndroidManifest.xml"}signingConfigs { release { storeFile file('../../sinyuee.keystore') storePassword "skyboy" keyAlias "sinyuee" keyPassword "skyboy" } debug { storeFile file('../../sinyuee.keystore') storePassword "skyboy" keyAlias "sinyuee" keyPassword "skyboy" }}buildTypes { release { minifyEnabled false zipAlignEnabled true signingConfig signingConfigs.release proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } debug { debuggable true minifyEnabled false zipAlignEnabled true signingConfig signingConfigs.debug proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' }}//添加代码 一定要加productFlavors.all { flavor -> flavor.manifestPlaceholders = [FT_SOURCEID: name]}flavorDimensions "color" //不加这个报错//多渠道id appid productFlavors { Ab_7pro {//7po 265 manifestPlaceholders = [FT_SOURCEID:"265"] //渠道号1 applicationId "com.ftaro.kingwar.abtv" //包名1 dimension "color" } Ab_nfas {//nfas 268 manifestPlaceholders = [FT_SOURCEID:"268"] //渠道号2 applicationId "com.ftaro.kingwar.nfas" //包名2 dimension "color" } Ab_pptv {//pptv 264 manifestPlaceholders = [ FT_SOURCEID:"264"] //渠道号3 applicationId "com.ftaro.kingwar.pptv" //包名3 dimension "color" } Ab_wj { //微鲸263 manifestPlaceholders = [FT_SOURCEID:"263"] //渠道号4 applicationId "com.ftaro.kingwar.wj"////包名4 dimension "color" }}
}
android.applicationVariants.all { variant ->
// delete previous files first
delete “ b u i l d D i r / i n t e r m e d i a t e s / a s s e t s / {buildDir}/intermediates/assets/ buildDir/intermediates/assets/{variant.dirName}”
variant.mergeAssets.doLast { copy { from "${buildDir}/../../../../../res" into "${buildDir}/intermediates/assets/${variant.dirName}/res" } copy { from "${buildDir}/../../../../../src" into "${buildDir}/intermediates/assets/${variant.dirName}/src" } copy { from "${buildDir}/../../../../../jsb-adapter" into "${buildDir}/intermediates/assets/${variant.dirName}/jsb-adapter" }
// copy {
// from “ b u i l d D i r / . . / . . / . . / . . / . . / m a i n . j s " / / f r o m " {buildDir}/../../../../../main.js" // from " buildDir/../../../../../main.js"//from"{buildDir}/…/…/…/…/…/project.json”
// into “ b u i l d D i r / i n t e r m e d i a t e s / a s s e t s / {buildDir}/intermediates/assets/ buildDir/intermediates/assets/{variant.dirName}”
// }
copy {
from “ b u i l d D i r / . . / a s s e t s " i n t o " {buildDir}/../assets" into " buildDir/../assets"into"{buildDir}/intermediates/assets/${variant.dirName}”
}
}
//自动输出apk包+版本号
android.applicationVariants.all { variant ->
variant.outputs.all {
outputFileName = “Kingwar_TV_AB_ v a r i a n t . n a m e − {variant.name}- variant.name−{variant.versionName}.apk”
}
}
dependencies {
implementation fileTree(include: [’.jar’, '.aar’], dir: ‘libs’)
implementation fileTree(include: [’*.jar’], dir: ‘…/…/eclipse_lib/android/java/libs’)
implementation project(’:libcocos2dx’)
implementation project(’:lib_ftaro’)
implementation project(’:lib_umengcount’)
implementation files(‘libs/iapppay_plugin.jar’)
}
更多相关文章
- 第一行代码笔记之——Activity启动模式
- Android:简单联网获取网页代码
- Android 开发笔记 - Android Studio 代码模板
- android源代码下载及编译
- android 用代码画圆
- android用代码实现圆角背景
- 小编程(三):用户登录注册界面开发及用户信息管理案例代码详解
- Android沉浸式状态栏下,如何代码实现android:fitsSystemWindows="