flutter开发实战-打包应用apk签名及Android studio没有generate signed bundle/apk问题修改

flutter开发实战-打包应用apk签名及Android studio没有generate signed bundle/apk问题修改

最近使用flutter开发项目,需要将打包应用时候apk进行签名,我这边开发使用的是Android studio,发现在Android studio的build没有generate signed bundle/apk。这里记录一下问题修改,以及生产签名文件及gradle配置。

一、在Android studio的build没有generate signed bundle/apk修改

在Android studio的build没有generate signed bundle/apk的话,解决方案,需要在flutter工程的Android目录下,找到应用的flutter_myapp_android.iml文件,打开后在Android studio会在右上角提示"Open for Editing in Android Studio"。点击打开,等待下载后,时间会比较久。

如图所示

在下载后,如图所示

下载完成后,我们可以在Android studio的build找到generate signed bundle/apk了。

如图所示

二、使用generate signed bundle/apk进行生产签名文件

在找到了generate signed bundle/apk,使用generate signed bundle/apk来生成签名文件。

如图

输入相应的信息后可以点击OK生成

选择release最终生成了app_test1234

三、使用keytool来生成签名证书.keystore文件

除了操作界面外,还可以使用keytool来生成签名证书.keystore文件。

执行命令

dart 复制代码
keytool -genkey \
	-keystore ./app_test1234.keystore \
	-alias app_test \
	-storepass 123456 \
	-keypass 123456 \
	-dname 'C=CN, ST=ZJ, L=HZ, O=UV, OU=UV' \
	-validity 36500 \
	-storetype pkcs12 \
	-keyalg RSA

三、查看证书的内容

可以使用keytool -list -v来查看证书的内容。

keytool -list -v -keystore 拼接上test.keystore文件的路径就可以查看证书的内容了

如图所示

四、在Android中配置

我们创建一个key.properties文件,内容如下

dart 复制代码
storePassword=123456
keyPassword= 123456
keyAlias=app_test
storeFile=../app_test1234.keystore

将key.properties文件与app_test1234.keystore放到flutter项目的Android目录下,在app目录下的build.gradle添加

dart 复制代码
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
    keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}

在android{}添加

dart 复制代码
android {
    ...

    signingConfigs {
        release {
            keyAlias keystoreProperties['keyAlias']
            keyPassword keystoreProperties['keyPassword']
            storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
            storePassword keystoreProperties['storePassword']
        }
    }
    buildTypes {
        release {
            signingConfig signingConfigs.release
        }
    }
}

至此,在MAC下生成安卓签名及相应的Android配置成功。

五、小结

flutter开发实战-打包应用apk签名及Android studio没有generate signed bundle/apk问题修改。内容较多,描述可能不是特别准确,请见谅。

https://blog.csdn.net/gloryFlow/article/details/133915024

学习记录,每天不停进步。

相关推荐
summerkissyou19871 小时前
Android - 摄像头 - hal - 开发教程,例子,常见问题,分析方法,解决方案
android
summerkissyou19872 小时前
Android 16 架构图
android
神龙天舞20012 小时前
MySQL 备库为什么会延迟好几个小时
android·数据库·mysql
海天鹰2 小时前
Android Studio Quail3 | 2026.1.3 升级后 Gradle 报错
android studio
蜡台3 小时前
Flutter 环境搭建 Dart配置
flutter·dart
码农coding5 小时前
android12 systemUI 之锁屏
android
圆山猫6 小时前
[Virtualization](三):RISC-V H-extension 与 Guest 执行模式
android·java·risc-v
爱笑鱼6 小时前
Binder(七):getCallingUid() 读到的是谁?clearCallingIdentity() 又清掉了什么?
android
落叶飘飘s11 小时前
餐饮服务与软件创新的融合:解析海底捞 APP 的 Flutter 鸿蒙开发之路
flutter·华为·harmonyos
2501_9159090612 小时前
iOS 应用反调试技详解术 检测调试器的原理与防护实践
android·ios·小程序·https·uni-app·iphone·webview