当前位置: 首页 > news >正文

多渠道打包gradle配置

android studio 多渠道打包配置

在build.gradle 文件中配置信息

plugins {alias(libs.plugins.android.application)
}android {namespace 'com.example.mydemo'compileSdk 36defaultConfig {applicationId "com.example.mydemo"minSdk 29targetSdk 36versionCode 1versionName "1.0"testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"}buildTypes {debug {minifyEnabled false}release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'}}android.buildFeatures.buildConfig = trueflavorDimensions "app"productFlavors {base {applicationId "com.example.mydemo"dimension "app"versionCode 1versionName "1.0.0"//配置字段,在项目可能需要判断不同品牌兼容代码buildConfigField('String','brand','"BASE"')buildConfigField('boolean','isHello','true')buildConfigField('int','baseFieldInt','50')}huawei {applicationId "com.example.mydemo"dimension "app"versionCode 2versionName "1.0.1"buildConfigField('String','brand','"HUAWEI"')buildConfigField('boolean','isHello','true')buildConfigField('int','baseFieldInt','40')}xiaomi {applicationId "com.example.mydemo"dimension "app"versionCode 3versionName "1.0.2"buildConfigField('String','brand','"XIAOMI"')buildConfigField('boolean','isHello','true')buildConfigField('int','baseFieldInt','30')}}signingConfigs {base {storeFile file('../xxx.jks')storePassword 'saic_oimt'keyPassword 'saic_oimt'keyAlias = 'saic'}huawei {storeFile file('../xxx.jks')storePassword 'saic_oimt'keyPassword 'saic_oimt'keyAlias = 'saic'}xiaomi {storeFile file('../xxx.jks')storePassword 'saic_oimt'keyPassword 'saic_oimt'keyAlias = 'saic'}}compileOptions {sourceCompatibility JavaVersion.VERSION_11targetCompatibility JavaVersion.VERSION_11}applicationVariants.all { variant ->variant.outputs.all {//指定apk输出名称outputFileName = "Android_${variant.productFlavors[0].name}_v${variant.productFlavors[0].versionName}_${variant.buildType.name}_${buildTime()}.apk"}}
}static def buildTime() {def createTime = new Date().format("YYYYMMdd", TimeZone.getTimeZone("GMT+08:00"))return "${createTime}"
}dependencies {implementation libs.appcompatimplementation libs.materialtestImplementation libs.junitandroidTestImplementation libs.ext.junitandroidTestImplementation libs.espresso.core
}
public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(@Nullable Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//获取build.gradle中配置的品牌字段信息if (BuildConfig.brand.equals("BASE")){}}
}
http://www.dtcms.com/a/422696.html

相关文章:

  • 集中式架构还是分布式架构?SCADA架构选型的新趋势
  • 第八章 财务报表 2利润表(2025版)
  • 在Trae上使用Bright Data MCP采集数据,实时获取IPhone17价格信息
  • 番禺网站推广湖南网站建设有限公司
  • 刷题 | 牛客 - 前端面试手撕题 - 中等 - 1-2/20 知识点解答
  • 建立自动化SSL证书更新机制与多层监控体系
  • 岚图汽车 x Apache Doris : 海量车联网数据实时分析实践
  • chrome-devtools-mcp windows 环境安装
  • IOT_通讯控制器(IO模块)
  • 分布式计数器系统完整解决方案
  • 音频类AI工具扩展
  • PyCharm 开发 Python 项目后,将其打包并部署到 Nginx 服务器
  • 在 Trae 国际版中添加 Chrome Dev MCP Server(Windows 实战指南)
  • 个人商城网站备案互联网域名是什么意思
  • 太原微信网站商城网站建设定制
  • VR 太阳光参数与快速渲染
  • 垃圾分类魔法互动墙-垃圾分类展厅设备-VR垃圾分类软件
  • 九、Proteus817实现51单片机DHT22温湿度读取
  • 家庭录像损坏了无法播放?视频修复让回忆重现
  • 【StarRocks】-- 深入理解 StarRocks 窗口函数 LAG()
  • [C++项目组件]Elasticsearch简单介绍
  • 网站建设公司的服务15年做哪些网站致富
  • 学做软件的网站有哪些怎么制作网站后台
  • Wyn 商业智能软件:3D 可视化大屏搭建与工具使用全指南
  • 【Linux】IPC——匿名管道的使用
  • 重庆市建设医院网站首页网站服务器租用一年多少钱啊
  • Process Explorer 第四章 · Autoruns 基础知识——通俗易懂
  • Spring Boot 3.x 开发 Starter 快速上手体验,通过实践理解自动装配原理
  • 如何通过配置扩展服务函数的返回对象
  • 手工生成DuckDB 1.4版c++插件的简单步骤