Flutter打包

1. 前言

Flutter在调试下程序会特别的卡,但打包之后会变流畅,所以将项目打包测试卡顿情况。

当前只打包Android,开发环境是Android Studio,日后还会尝试IOS。

2. 步骤

  1. 生成key
  2. 配置key
  3. 配置build.gradle
  4. 生成apk

3. 详细步骤

1. 生成key

生成方式两种:

  1. 通过命令
  2. Android Studio的功能。
1.1. 命令(生成到D盘):
keytool -genkey -v -keystore D:/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

在Android Studio的Terminal(工具底部)输入命令,填写一系列信息,最后确定填 " y "即可


terminal.png
1.2. 自带功能生成

不详细说明,在Android项目存在此功能


生成签名.png

2. 配置key

在android目录下新建文件 “ key.properties

key.properties.png

文件内填写内容:

storePassword=密匙库口令
keyPassword=key密匙口令
keyAlias=key别名
storeFile=路径

1.密匙库口令:输入命令后就需要输入的口令,如下

keytool -genkey -v -keystore D:/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
输入密钥库口令:
再次输入新口令:

2.key密匙口令:当输入命令并填写信息确定后输入的口令

CN=fan, OU=yuan, O=yuan, L=gz, ST=gd, C=cn是否正确?
  [否]:  y

正在为以下对象生成 2,048 位RSA密钥对和自签名证书 (SHA256withRSA) (有效期为 10,000 天):
         CN=fan, OU=yuan, O=yuan, L=gz, ST=gd, C=cn
输入  的密钥口令
        (如果和密钥库口令相同, 按回车):

3.key别名,命令 -alias后的是别名,这里是key

3. 配置build.gradle

这里配置的是app目录里面的build.gradle

  1. 在android{ 前
def keystorePropertiesFile = rootProject.file("key.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))

android {
...
  1. 在android里的加入signingConfigs和替换buildTypes
    signingConfigs {
        release {
            keyAlias keystoreProperties['keyAlias']
            keyPassword keystoreProperties['keyPassword']
            storeFile file(keystoreProperties['storeFile'])
            storePassword keystoreProperties['storePassword']
        }
    }

    buildTypes {
        release {
            // 替换成 release
            signingConfig signingConfigs.release
        }
    }

4. 生成apk

在Terminal中输入命令 “ flutter build apk ”

C:\Users\Admin\Desktop\mdc_100_series>flutter build apk
Initializing gradle...                                       1.4s
Resolving dependencies...                                    3.2s
Gradle task 'assembleRelease'...
Gradle task 'assembleRelease'... Done                       14.3s
Built build\app\outputs\apk\release\app-release.apk (10.1MB).

最后生成的apk在项目目录的 build\app\outputs\apk里

你可能感兴趣的:(Flutter打包)