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

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

相关推荐
潜龙95272 小时前
第3.2.3节 Android动态调用链路的获取
android·调用链路
追随远方3 小时前
Android平台FFmpeg音视频开发深度指南
android·ffmpeg·音视频
撰卢4 小时前
MySQL 1366 - Incorrect string value:错误
android·数据库·mysql
恋猫de小郭4 小时前
Flutter 合并 ‘dot-shorthands‘ 语法糖,Dart 开始支持交叉编译
android·flutter·ios
牛马程序小猿猴4 小时前
15.thinkphp的上传功能
android
林家凌宇5 小时前
Flutter 3.29.3 花屏问题记录
android·flutter·skia
时丶光5 小时前
Android 查看 Logcat (可纯手机方式 无需电脑)
android·logcat
血手人屠喵帕斯5 小时前
事务连接池
android·adb
恋猫de小郭6 小时前
React Native 前瞻式重大更新 Skia & WebGPU & ThreeJS,未来可期
android·javascript·flutter·react native·react.js·ios
一人一萧十只猫�7 小时前
MySQL 从入门到精通(三):日志管理详解 —— 从排错到恢复的核心利器
android·mysql·adb