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

flutter3.29 build.gradle.kts设置安卓签名

1、在android目录下创建key.properties文件

storePassword=密码
keyPassword=密码
keyAlias=别名
storeFile=jks文件完整路径

2、修改android/app/build.gradle.kts

顶部插入import java.util.Properties
import java.io.FileInputStreamval keystoreProperties = Properties()
val keystorePropertiesFile = rootProject.file("key.properties")
if (keystorePropertiesFile.exists()) {keystoreProperties.load(FileInputStream(keystorePropertiesFile))
}android块中插入
signingConfigs {create("release") {keyAlias = keystoreProperties["keyAlias"] as StringkeyPassword = keystoreProperties["keyPassword"] as StringstoreFile = keystoreProperties["storeFile"]?.let { file(it) }storePassword = keystoreProperties["storePassword"] as String}
}修改buildTypes/release中的debug为debug

build.gradle.kts完整文件

import java.util.Properties
import java.io.FileInputStreamplugins {id("com.android.application")id("kotlin-android")// The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.id("dev.flutter.flutter-gradle-plugin")
}val keystoreProperties = Properties()
val keystorePropertiesFile = rootProject.file("key.properties")
if (keystorePropertiesFile.exists()) {keystoreProperties.load(FileInputStream(keystorePropertiesFile))
}android {namespace = 包名compileSdk = flutter.compileSdkVersionndkVersion = flutter.ndkVersioncompileOptions {sourceCompatibility = JavaVersion.VERSION_11targetCompatibility = JavaVersion.VERSION_11}kotlinOptions {jvmTarget = JavaVersion.VERSION_11.toString()}defaultConfig {// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).applicationId = 包名// You can update the following values to match your application needs.// For more information, see: https://flutter.dev/to/review-gradle-config.minSdk = flutter.minSdkVersiontargetSdk = flutter.targetSdkVersionversionCode = flutter.versionCodeversionName = flutter.versionName}signingConfigs {create("release") {keyAlias = keystoreProperties["keyAlias"] as StringkeyPassword = keystoreProperties["keyPassword"] as StringstoreFile = keystoreProperties["storeFile"]?.let { file(it) }storePassword = keystoreProperties["storePassword"] as String}}buildTypes {release {// TODO: Add your own signing config for the release build.// Signing with the debug keys for now, so `flutter run --release` works.
//            signingConfig = signingConfigs.getByName("debug")signingConfig = signingConfigs.getByName("release")}}
}flutter {source = "../.."
}

http://www.xdnf.cn/news/261037.html

相关文章:

  • 吾爱出品 [Windows] EndNote 21.5.18513 汉化补丁
  • Linux中安装mysql8,转载及注意事项
  • 机器学习_线性回归
  • QT中的JSON
  • Python 装饰器优化策略模式:电商促销折扣的优雅解法
  • 【网络原理】深入理解HTTPS协议
  • 多多铃声 7.4| 拥有丰富的铃声曲库,满足不同用户的个性化需求,支持一键设置手机铃声
  • 接口隔离原则(ISP)
  • 「Mac畅玩AIGC与多模态15」开发篇11 - 增加输入变量的工作流示例
  • 用定时器做微妙延时注意事项
  • LOJ #193 线段树历史和 Solution
  • day13 python不平衡数据集的处理(补)
  • 数字智慧方案5857丨智慧机场解决方案与应用(53页PPT)(文末有下载方式)
  • 分享国产AI工作流集成数据库完成业务处理
  • apt-mirror搭建ubuntu本地离线源
  • 文件操作--文件下载读取漏洞
  • JavaScript基础-赋值运算符
  • python数据分析(七):Pandas 数据变形与重塑
  • DeepSeek实战--AI技术架构(持续更新)
  • Performance API 性能上报
  • 2025年- H21-Lc129-160. 相交链表(链表)---java版
  • 字符和编码(python)
  • 依赖倒置原则(DIP)
  • 实战交易策略 篇二十二:情绪流龙头交易策略
  • 特殊运算符详解:身份运算符、成员运算符与三目运算符
  • 位运算符详解:从入门到精通
  • 【C++】红黑树迭代版
  • 算法技巧——打表
  • 双向链表详解
  • 如何在纯C中实现类、继承和多态(小白友好版)