提示:本文在 Vscode中,安卓打包方式。
文章目录
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
总结
日常开发中,只要第一种打包即可。不需要第二种,步骤过于繁琐,