Flutter开发之安卓打包,和获取签名相关信息,公钥值相关操作

我们Flutter开发中,难免有些小朋友因需求要获取打包签名的一些相关信息,下面我们来讲一下怎么获取

一 生成签名文件
我们打包安卓APK包需要先生成签名文件,需运行以下指令,生成签名文件
keytool -genkey -v -keystore GMT_keystore.keystore -alias GMT_keystore -keyalg RSA -keysize 2048 -validity 10000


731702546863_.pic.jpg

二 创建 key.properties 文件
在根目下 androd 目录下创建一个key.properties文件,里面填入一下内容:


751702547387_.pic.jpg

三 在 gradle 中配置签名
通过根目录 android >> app 目录下的 build.gradle 文件,
(1) 在 android {......} 前面添加以下内容:
def keystorePropertiesFile = rootProject.file("key.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))


791702548068_.pic.jpg
  (2) 在 android {......} 里面添加以下内容,注意,要放在 buildTypes{……} 的前面哦,不然又会有小朋友踩坑

signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
}
}


771702547805_.pic.jpg
  (3) 在 buildTypes{……} 中修改 release 内容

buildTypes {
release {
signingConfig signingConfigs.release
}
}


image.png

四 打包APK包
在根目录下打开终端,运行 “flutter build apk” , 生成的apk文件的位置为 build/app/outputs/flutter-apk/app-release.apk

五 下面讲一下获取这个签名相关信息
(1) 打开终端,来到和之前讲的 xxx.keystore 文件的目录,这里我们是 “jswsmart.keystore” 文件,执行以下命令
keytool -list -v -keystore jswsmart.keystore


40421702545828_.pic.jpg
  (2) 我们再来生成证书文件(证书文件名:certificate.cer),运行下以命令,会在同级目录下,生成一个 certificate.cer 的证书文件

keytool -export -keystore jswsmart.keystore -alias jswsmart -file certificate.cer

  (3)  再执行提取公钥命令

openssl x509 -inform der -in certificate.cer -pubkey -noout


40431702545828_.pic.jpg
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容