Flutter

第三章 Flutter中设置apk签名

2020-02-26  本文已影响0人  走码人

一、生成签名

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是否一致

上一篇 下一篇

猜你喜欢

热点阅读