文章目录
flutter打包
提示:flutter开发后,打包的两种方式:我使用的是vscode开发。
简单版本和复杂版本。
提示:一般来说在开发测试阶段使用简单版,发布阶段再使用复杂版。
一、简单版
打开VScode终端:输入命令 flutter build apk 即可
 如图:表示打包成功了。
 
二、复杂版
1.生成 keystore
打开VScode终端输入:
 keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
如果出现如下报错 ,证明你的java的jdk环境变量没有配置好(a
- 可以重新配置jdk环境变量
 - 或者在刚刚的输入命令前面加上jdk环境变量的路径,注意空格需要用反引号(详情如下)
 
如果没有如下报错,直接跳到第二步(配置口令信息),看接下来的操作。
 
解决报错
- 输入
flutter doctor -v,查看java的jdk的安装路径

 - 更改刚才的命令为 :java安装路径keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
注意:后面的java不写,只写到 bin ,详情如下 
D:\Program\Android\'Android Studio'\jre\bin\keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
 
此时不再报错,界面展示如下
2.配置口令信息
出现如下操作选项,这里可以 自由输入 ,记住此时输入的 口令,后面会用到。 我的都是: 123456 名称我都直接回车掠过了。
 
 若此时填写完信息后,还会报错,请检查 此处的 ~ 是否换成自己的盘符。
 我的换成了 D:/ ,否则会报错。
 控制台输入(刚刚的命令,修改为此: ~改为了D:):
 D:\Program\Android\'Android Studio'\jre\bin\keytool -genkey -v -keystore D:\key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
 继续填写一系列的问题。最后是否正确输入: y即可
3.成功创建出key.jks
查看你刚刚输入的盘符,目录下,我的D盘下面就会有一个Jks的文件,记住这个文件不能共享给任何人。
 
 有了这个key.jks文件后,可以到项目目录下的android文件夹下,创建一个名为key.properties的文件,并打开粘贴下面的代码。
4.创建key.properties的文件
在你的项目的根目录下 android文件下,新建一个key.properties文件
 粘贴下面的代码(这里就需要你刚刚设置的密钥,我的是123456)
storePassword=<password from previous step>    //输入上一步创建KEY时输入的 密钥库 密码
keyPassword=<password from previous step>    //输入上一步创建KEY时输入的 密钥 密码
keyAlias=key
storeFile=<E:/key.jks>    //key.jks的存放路径···
 

5.配置build.gradle文件
接下来找到 build.gradle文件 (在/android/app/build.gradle),注意不要搞错了。
 key生成好后,需要在build.gradle文件中进行配置。这个过程其实很简单,就是粘贴复制一些东西,你是不需要知道这些文件的具体用处的。
- 第一项:
 
进入项目目录的/android/app/build.gradle文件,在android{这一行前面,加入如下代码:
def keystorePropertiesFile = rootProject.file("key.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
 

- 第二项:把如下代码进行替换
 
buildTypes {
    release {
        signingConfig signingConfigs.debug
    }
}
 
替换为
signingConfigs {
    release {
        keyAlias keystoreProperties['keyAlias']
        keyPassword keystoreProperties['keyPassword']
        storeFile file(keystoreProperties['storeFile'])
        storePassword keystoreProperties['storePassword']
    }
}
buildTypes {
    release {
        signingConfig signingConfigs.release
    }
}
 

6.生成apk flutter build apk
最后一步:直接在终端中输入: flutter build apk
 如图打包成功了(可以找到该apk安装查看效果)
 
三、安装打包好的包
-  
直接把该包复制后发到手机,安装即可
 -  
控制台cd到该包的目录下,输入
```java 1.安装apk到手机上 adb install 路径/apk文件 2.卸载app从手机上 adb uninstall 包名 3.查看应用的启动时间 adb shell am start -W ``` 
1.如果你的设备只有一个
 输入命令
 adb install -r D:\study\flutterStudy\flutter02\build\app\outputs\flutter-apk\app-release.apk
 2.如果你的设备有真机,虚拟机好几个,想要在某一个安装:
 需要指定 某个设备 后进行安装
 adb devices 查看当前的设备
 
 adb -s 设备名称 install -r app的路径/XXX.apk

 输入命令:
adb -s emulator-5554 install -r D:\study\flutterStudy\flutter02\build\app\outputs\flutter-apk\app-release.apk
 
总结
日常开发中,只要第一种打包即可。不需要第二种,步骤过于繁琐,










