Flutter Android打包aab包

记录一次Flutter打包安卓aab包的经历,主要是之前我是干iOS的,对安卓打包不太了解。

1.首先需要具备安装JAVA环境,因为有了JAVA环境后才能使用JAVA的keytool工具来为安卓工程生成jks文件。jks文件是包含了一些本App包的一些独一无二的信息作为验证的。所以首先安装好JAVA环境,我安装的JAVA 8,其实JAVA 11会比较好,JAVA 11的话工程在build的时候就不会报JAVA版本低的问题。

2. 我们正式生成jks文件,在控制台通过命令生成,命令如下:

js 复制代码
keytool -genkey -v -keystore C:\Users\54984\Desktop\tomapeso_app_object\android\tomapeso.jks -keyalg RSA -keysize 2048 -validity 10000 -alias tomapeso

解释一下其中的意思:

2.1 :"C:\Users\54984\Desktop\tomapeso_app_object\android\tomapeso.jks":生成的jks签名文件所在地,我这里是将jks文件放在了Android文件的根目录,其实这样最方便。我为jks文件起名为tomapeso(其实这也是我项目的名字),所以叫做tomapeso.jks,它斜杠前面是跟的android,说明我们确实将jks文件放在了安卓的根目录。

2.2 :签名有效期限:10000

2.3 :签名的文件别名:tomapeso(项目名)

3.输入命令后,会在控制台,我们填写如下信息(如下图),不过其中的keyPassword和storePassword你得记一记,别忘了。等会儿,还要填写。

4.请看在安卓根目录已经生成jks文件,该文件还是加入git管理会比较方便。不过系统默认git是忽略掉了它的,我们去安卓根目录的gitignore文件中,最后一行将jks注释掉就可以了,就加入git管理了。

值得一提的是,jks文件生成后就把它放在那里吧,不要尝试打开它,你也打不开,也没有必要打开。

5.接下来我们再进行signingConfigs的配置,配置的位置和内容如下图。

6.再接下来,我们进行buildTypes的配置,配置的文件位置和signingConfigs是一模一样的,配置的内容如下图。buildTypes其实就是引用,它和signingConfigs其实是对应的。signingConfigs里面有啥,buildTypes我就对应取啥,也不知道这个理解对不对,哈哈哈,反正呼应上了的~~

7.好了一切顺利的话,现在就可以运行命令行打包aab包,打包成功了。

但是我还是记录一下,我遇到的一些需要注意的问题。

1.上线时,设置版本问题,谷歌和苹果不太一样。Google识别的是versionCode,这和苹果识别左边versionName不太一样。所以你每次更新安卓需要升级右边的versionCode,如下图:

2.如何设置安卓的包名?

2.1我们先按照下图中的要求进行更改. 2.2我们再检查层级结构是否匹配一致。意思就是:我们的包名不是一般分为三段吗,中间被两个顿号隔开,这三段每一段代表一个文件夹路径,该路径最终可以找到我们安卓当中的关键类文件"MainActivity"即可,此路径其实是在Kotlin下面的,如下图。

2.3最后我们需要检查的是,MainActivity中,package是否与我们的包名文件路径名一致,我们才最终完成包名的配置。也是和2.2的文件路径名一一对应的嘛,如下图。

相关推荐
旧曲重听19 小时前
前端需要掌握多少Node.js?
前端·node.js
Mr.Jessy9 小时前
Web APIs 学习第四天:DOM事件进阶
开发语言·前端·javascript·学习·ecmascript
云枫晖9 小时前
前端工程化实战:手把手教你构建项目脚手架
前端·前端工程化
醉方休9 小时前
开发一个完整的Electron应用程序
前端·javascript·electron
studyForMokey10 小时前
【Kotlin内联函数】
android·开发语言·kotlin
故作春风10 小时前
手把手实现一个前端 AI 编程助手:从 MCP 思想到 VS Code 插件实战
前端·人工智能
不会算法的小灰10 小时前
Vue.js 基础教程:从入门到实践
前端·javascript·vue.js
掘金一周10 小时前
没开玩笑,全框架支持的 dialog 组件,支持响应式| 掘金一周 11.6
前端·人工智能
拉不动的猪10 小时前
浏览器&Websocket&热更新
前端·javascript·vue.js
im_AMBER11 小时前
React 12
前端·javascript·笔记·学习·react.js·前端框架