一、生成签名
keytool -genkey -v -keystore /C:\文件路径\签名名称.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
按要求输入密码等信息,一定要妥善保管密码信息,不然后果自负
二、创建key.properties文件
在flutter项目的android目录下创建key.properties
C:\flutter项目路径\android\key.properties
内容如下
storePassword=你的密码
keyPassword=你的密码
keyAlias=key
storeFile=C:/你的jks路径/签名文件.jks
二、修改build.gradle文件
找到android\app\build.gradle文件进行修改
C:\flutter项目路径\android\app\build.gradle
增加内容
//自定义签名
def keystorePropertiesFile = rootProject.file("key.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
android {
........
增加内容
android {
........
//自定义签名
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
}
}
修改内容
android {
........
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.debug
signingConfig signingConfigs.release
}
}
至此完成签名的配置
四、验证签名是否正确
查看jks中的sha1签名,需要输入制作签名文件时输入的密码
keytool -list -v -keystore C:\文件路径\签名名称.jks
查看apk文件中的签名
解压apk文件,找到\META-INF目录下的 CERT.RSA,执行下面的命令
keytool -printcert -file CERT.RSA
比较两个SHA1是否一致