
注意⚠️
首先,这篇文章主要针对打包,前部分主要针对不是Android开发的同学,没有Androidstudio打包Android基础,在学习flutter需要打出签名包,所以比较详细。是android同学可以直接跳至看方法三,对flutter打包扩充了解。
话不多,直接上重点?
方法一:注意,这个是debug Apk哪
flutter build apk
上图:apk打包的位置下方

方法二:Android studio直接打包签名apk
1.切换Android频道,进入Android版本

2.选择签名apk

3.选择apk

4.第一次选择【create new…】创建签名文件,之后迭代选择【choose existing…】使用之前创建的签名文件,或者创建新的。

5.create new … 填充资料,选择ok

6.进入next

7.选择release包,

8.右下角看到这个,就是成功啦~点击locate就能快速找到你的打包文件啦~

方法三:不切换Android频道,打包
官网链接?:https://flutter.dev/docs/deployment/android详细
1.先创建keystore
keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
⚠️直接用上面链接创建key, 如果遇到该错误1

原因:是没有找到这个keytool.exe…怎么办呢?
flutter doctor -v
楼主现在是mac,上不了图,大致意思

查看java binary at:后面部分…截止到java前
例如:D:\Program Files(x86)\Androidstudio\jre\bin\java这种
拷贝:D:\Program Files(x86)\Androidstudio\jre\bin
修改: D:\‘Program Files(x86)’\Androidstudio\jre\bin\
D:\‘Program Files(x86)’\Androidstudio\jre\bin\keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
如果遇到这个错误❌:fileNotFoundException:~\key.jks

修改上面命令:

改一个你本地有的盘:例如C盘
D:\‘Program Files(x86)’\Androidstudio\jre\bin\keytool -genkey -v -keystore C:\key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

?啦,C盘就能找到
mac上面编就很省事了~

?ok,现在到自己盘就能看到这个文件了。这个文件自己保存本地,上线到不要分享出去。
⚠️楼主遇到该错误:因为忘密钥了,删了,重新来
keytool 错误: java.io.IOException: keystore password was incorrect
java.io.IOException: keystore password was incorrect

2.创建文件对应密钥
<app dir>/android/key.properties

storePassword=<password from previous step>
keyPassword=<password from previous step>
keyAlias=key
storeFile=<location of the key store file, e.g. /Users/<user name>/key.jks>
3.key有了之后,app下面gradle需要配置一下

添加内容:
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}
修改内容:
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
好啦,终于完成了,最后!!!!!
又是最上面看到的
flutter build apk


本文详细介绍了如何为Flutter应用打包Android签名APK,包括debug APK的生成、Android Studio签名打包以及不切换频道的打包方法。针对非Android开发者,提供了创建keystore、配置gradle等关键步骤的指导。

被折叠的 条评论
为什么被折叠?



