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签名文件

相关推荐
bst@微胖子3 小时前
Flutter项目之登录注册功能实现
开发语言·javascript·flutter
小墙程序员5 小时前
Flutter 教程(十一)多语言支持
flutter
无知的前端7 小时前
Flutter 一文精通Isolate,使用场景以及示例
android·flutter·性能优化
yidahis7 小时前
Flutter 运行新建项目也报错?
flutter·trae
木马不在转7 小时前
Flutter-权限permission_handler插件配置
flutter
江上清风山间明月11 小时前
一周掌握Flutter开发--9. 与原生交互(下)
flutter·交互·原生·methodchannel
GeniuswongAir11 小时前
Flutter极速接入IM聊天功能并支持鸿蒙
flutter·华为·harmonyos
sayen11 小时前
记录 flutter 文本内容展示过长优化
前端·flutter
勤劳打代码11 小时前
剑拔弩张——焦点竞争引的发输入失效
flutter·客户端·设计
张风捷特烈15 小时前
Flutter 伪 3D 绘制#02 | 地平面与透视
android·flutter