flutter打包签名问题

总结

build.gradle只配置了release签名,没有配置debug签名的前提下

flutter build apk --debug或者flutter run 使用的都是系统下的默认签名文件

flutter build apk --release或者AS Build->Flutter->Build APK使用的是release签名

build.gradle配置了release签名和debug签名

使用命令行 fluuter build apk --debug或者使用flutter run 使用的是debug签名文件

使用as打包,Build -> Flutter -> Build APK 或者使用flutter build apk --release使用的是release签名文件

生成签名文件

方式1:android studio

方式2:命令行

Mac/Linux keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key # Windows keytool -genkey -v -keystore c:\Users\USER_NAME\key.jks -storetype JKS -keyalg RSA -keysize 2048 -validity 10000 -alias key

打包

方式1:打开android项目使用as或者命令行

方式2:打开flutter项目使用as或者命令行

主要测试一下方式2

build.gradle只配置了release签名,没有配置debug签名前提下

使用as打包,Build -> Flutter -> Build APK 或者使用flutter build apk --release

生成文件如下

验证一下apk下和flutter-apk下apk的签名

验证keystore文件

keytool -list -v -keystore path/to/your-keystore.keystore -alias your_alias_name

你会看到 keystore 中的证书信息,包括证书指纹(MD5、SHA1、SHA256 等)

jarsigner验证apk签名

jarsigner -verify -verbose -certs path/to/your-app-release.apk

可见jarsigner这个方式不可用

apksigner验证apk签名,apksigner通常位于 build-tools 目录下

apksigner verify --print-certs path/to/your-app-release.apk

可见apksigner方式有效,对比SHA256和SHA1发现一致

使用命令行 flutter build apk --debug或者使用flutter run

可见这个时候使用的是系统默认的签名文件

build.gradle配置了release签名和debug签名前提下

使用as打包,Build -> Flutter -> Build APK 或者使用flutter build apk --release

使用的是release签名文件

使用命令行 fluuter build apk --debug或者使用flutter run

使用的是debug签名文件

相关推荐
孤鸿玉10 小时前
Fluter InteractiveViewer 与ScrollView滑动冲突问题解决
flutter
叽哥17 小时前
Flutter Riverpod上手指南
android·flutter·ios
BG1 天前
Flutter 简仿Excel表格组件介绍
flutter
zhangmeng2 天前
FlutterBoost在iOS26真机运行崩溃问题
flutter·app·swift
恋猫de小郭2 天前
对于普通程序员来说 AI 是什么?AI 究竟用的是什么?
前端·flutter·ai编程
卡尔特斯2 天前
Flutter A GlobalKey was used multipletimes inside one widget'schild list.The ...
flutter
w_y_fan2 天前
Flutter 滚动组件总结
前端·flutter
醉过才知酒浓2 天前
Flutter Getx 的页面传参
flutter
火柴就是我3 天前
flutter 之真手势冲突处理
android·flutter
Speed1233 天前
`mockito` 的核心“打桩”规则
flutter·dart