flutter-打包

1.生成keyStore

官网给出的命令是

keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

可惜报错

keytool需要配置环境变量 不想配置环境变量,所以要找到keytool.exe

输入

flutter doctor -v

 

 

 复制路径后再次输入命令

D:\'Program Files'\Android\'Android Studio'\jre\bin\keytool -genkey -v -keystore D:\key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

输入口令后 一路回车,确认按Y 后再输入回车就生成 D:\key.jks 的文档,这个文档不要给别人。注意在 .gitignore 中添加忽略文件

 

2.引用应用程序中的 keystore

创建一个名为 android/key.properties 的文件, 其中包含对秘钥文件的引用

storePassword=xxxxxx
keyPassword=xxxxxx
keyAlias=key
storeFile=D:/key.jks

 

3.在 gradle 中配置签名

在 android/app/build.gradle 中为应用配置签名

## 1. 代码配置在android节点的上面
def keystorePropertiesFile=rootProject.file('key.properties')
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))

## 2. buildTypes节点上面配置
signingConfigs {
  release {
    keyAlias keystoreProperties['keyAlias']
    keyPassword keystoreProperties['keyPassword']
    storeFile file(keystoreProperties['storeFile'])
    storePassword keystoreProperties['storePassword']
  }
}
buildTypes {
  release {
    singleConfig signingConfigs.release
  }
}

 

4.构建一个发布版本的 APK

  • cd 进入工程目录下
  • flutter build apk
  • 打包好的 apk 位于 build/app/outputs/apk/app.apk

 

5.修改 app 名称和图标

  • 修改名称
    • 位于 android/app/src/main 的 AndroidMainfest.xml 中
    • application 节点中的数据就是应用的名称
  • 修改用用图标
    • 快速生成应用图标
    • android/app/src/main/res 目录中, 将图标文件存入使用配置限定符命名的文件夹中,将自己的图表, 按照规范的名称和大小, 覆盖 Flutter 的默认图标

posted on 2020-07-03 14:04  秃了头也不退休  阅读(290)  评论(0编辑  收藏  举报

导航