Flutter 在 对接 google play 时,利用 android studio 可视化生成 已签名的aab包
android studio 可视化生成 aab包
第一 : 先说注意事项
-
在Flutter项目里面,直接打开当前项目是不行的,不显示相应操作,需要在Android 目录打开,直白点就是直接打开项目里面的Android 目录

-
不然会出现的一些问题
第一张图片
第二张图片
-
注意: 有的情况下显示上面第一张图片的操作,第二张的还是不显示,这个时候,你点击第一张图片的操作,意思是 ‘同步项目与Gradle 文件’,这样第二张图片的操作就会出现。
-
一般第一张图片操作展示,第二张操作不展示的时候,Android studio 会给相应的提示,如图

第二: 下面开始进入正题
-
在菜单栏中,选择 Build > Generate Signed Bundle / APK…

-
在弹出的对话框中,选择 Android App Bundle 或 APK,然后点击 Next

-
配置签名信息
- 选择密钥库:
-
如果已有密钥库,选择 Use existing keystore,并输入密钥库文件的路径(如下图)。

-
输入密钥库信息:
- Key store path: 选择你的密钥库文件路径。
- Key store password: 输入密钥库密码。
- Key alias: 输入密钥别名。
- Key password: 输入密钥密码。
- Validity (years): 输入密钥的有效年限(通常为 25 年)。
-
- 如果没有密钥库,可以选择 Create new… 来创建一个新的密钥库(如下图)。
-
Key store path:
- 输入要保存密钥库文件的位置和文件名(例如,C:\mykeystore.jks)。
-
Key store password:
- 输入密钥库的密码。确保密码足够复杂并且安全。
-
Key alias:
- 输入密钥的别名,用于识别这个密钥。比如可以用 myapp_key。
-
Key password:
- 输入密钥的密码。可以与密钥库密码相同,也可以不同,但建议保持不同以增加安全性。
-
Validity (years):
- 输入密钥的有效年限(通常设置为 25 年)。
-
Certificate information:
- 需要填写一些证书的基本信息,包括:
- First and Last Name: 输入你的名字和姓氏(例如,John Doe)。
- Organizational Unit: 输入你的组织单位名称(例如,Development)。
- Organization: 输入你的公司名称(例如,MyCompany)。
- City or Locality: 输入城市名称(例如,Beijing)。
- State or Province: 输入省或州名称(例如,Beijing)。
- Country Code: 输入国家代码(例如,CN)。
- 需要填写一些证书的基本信息,包括:
-
从有签名的逻辑,开始打包(签名的逻辑)
-
- 选择密钥库:
-
选择构建变体,配置生成选项
- 选择你要生成的构建变体(例如 release),然后点击 Create

- 配置生成选项
- 选择要包含的签名版本和是否进行代码混淆(如果需要)
- 选择你要生成的构建变体(例如 release),然后点击 Create
-
等待构建完成
- Android Studio 会开始生成签名的 AAB 或 APK。构建完成后,你可以在底部的 Build 窗口查看进度(一般在左下角,或者隐藏在工具栏中)。

- Android Studio 会开始生成签名的 AAB 或 APK。构建完成后,你可以在底部的 Build 窗口查看进度(一般在左下角,或者隐藏在工具栏中)。
-
找到生成的文件
- 生成的文件会保存在以下路径中:
- Android App Bundle:在第2 步的时候,看你选择创建 aab还是apk)
<YourProject>/app/build/outputs/bundle/release/app-release.aab - APK: (在第2 步的时候,看你选择创建 aab还是apk)
<YourProject>/app/build/outputs/apk/release/app-release.apk
- Android App Bundle:在第2 步的时候,看你选择创建 aab还是apk)
- 注意:生成文件的位置,可以自己选择,上面一般是默认的值,在第4步有标注
- 生成的文件会保存在以下路径中:
-
将生成的签名包上传到 Google Play 或在设备上进行测试
相关文章:
Flutter 在 对接 google play 时,利用 android studio 可视化生成 已签名的aab包
android studio 可视化生成 aab包 第一 : 先说注意事项 在Flutter项目里面,直接打开当前项目是不行的,不显示相应操作,需要在Android 目录打开,直白点就是直接打开项目里面的Android 目录 不然会出现的一些问题 第一…...
使用web.dev提供的工具实现浏览器消息推送服务
文章目录 前言实现工具和效果实现原理实现过程前端接收用户订阅请求将用户订阅信息更新到后端后端实现接收并保存订阅信息的接口后端实现消息推送的逻辑前言 对于电商独立站来说,新品上架或者促销活动上线及时通知到用户是很重要的,通知的渠道有很多,其中就包括浏览器消息推…...
计算机系统结构为什么用architecture 而不是structure?
architecture本意是建筑学、建筑艺术,其含义就是建筑的样子和背后的设计思想,用于计算机科学可以表达计算机的系统结构和后面的设计原理:它长什么样?它为什么长这样? 与architecture 对应的词是structure (…...
sqoop问题汇总记录
此篇博客仅记录在使用sqoop时遇到的各种问题。持续更新,有问题评论区一起探讨,写得有不足之处见谅。 Oracle_to_hive 1. main ERROR Could not register mbeans java.security.AccessControlException: access denied ("javax.management.MBeanTr…...
Git 创建新的分支但清空提交记录
有时候需要创建新的分支,但是原有分支的提交非常多,不好区分哪些是创建分支之后的提交。 那么就把原分支的提交全部去掉 要从 分支1 创建 分支2,并确保 分支2 不包含任何提交历史,同时文件与 分支1 的最后一次提交一致࿰…...
SQL PRIMARY KEY
SQL PRIMARY KEY 概述 在关系型数据库中,主键(PRIMARY KEY)是一个非常重要的概念。它是表中每一行数据的唯一标识符,用于保证数据的完整性和准确性。本文将详细介绍SQL中的主键,包括其定义、作用、如何创建和修改主键…...
软件测试学习笔记丨Flask操作数据库-对象与数据模型
本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/23440 对象与数据模型 数据模型:是数据特征的抽象,抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表示与操作提供一个抽象的框架…...
IntelliJ IDEA使用 MybatisX-Generator 插件 自动生成Entity+Mapper+Mapper.xml等代码
一、Intellij安装MybatisX插件: 首先点击 Intellij->Preference->Plugins,然后搜索MybatisX,点击安装: 2 打开数据库 在IntelliJ IDEA 连接Mysql数据库,选择表,点击右键,选择 Mybatis…...
vue中如何为不同功能设置不同的默认打印设置(设置不同的打印机)
浏览器自带的window.print 功能较简单,这里使用LODOP露肚皮打印 以下是vue2示例: 从官网中下载Lodop和C-Lodop官网主站安装包并安装到本地电脑可以全局搜索电脑找到安装文件LodopFuncs.js,也可以直接复制我贴出来的文件 //用双端口加载主JS…...
经纬恒润INTEWORK-VBA新版本正式发布
在汽车电子研发领域,随着开发测试的深入,工程师们常常面临着一个共同的问题:如何高效地在多样化的开发测试场景中切换,并确保不同工具间的紧密协作。不同场景、不同工具的切换与使用给工程师带来高昂的学习成本和前后端信息传递的…...
金蝶云数据集成至MySQL的高效解决方案
金蝶云数据集成至MySQL的高效解决方案 金蝶云星空数据集成到MySQL的技术案例分享 在企业信息化过程中,数据的高效集成和管理是关键环节。本文将聚焦于一个具体的系统对接集成案例:金蝶云星空的数据如何通过轻易云数据集成平台无缝对接到MySQL数据库。本…...
Day02 C++ 环境设置
2024.11.1 C 环境设置 如果您想要设置 C 语言环境,需要确保电脑上有以下两款可用的软件,文本编辑器和 C 编译器。 一、文本编辑器 通过编辑器创建的文件通常称为源文件,源文件包含程序源代码。 C 程序的源文件通常使用扩展名 .cpp、.cp 或…...
AQS是什么
AQS:AbstructQueuedSynchronizer是java.util.concurrent.locks包中的一个类,是多线程同步器,J.U.C包中的多个组件的底层实现都使用到了它。如:Lock、CountDownLatch、Semaphore. 从本质上来说AQS实现了两种机制的锁,排…...
Spring IOC容器简介
Spring IoC(Inversion of Control,控制反转)容器是Spring框架的核心组件之一,负责管理应用程序中的对象及其依赖关系。IoC容器通过依赖注入(Dependency Injection,DI)实现对象的创建、配置和管理…...
【backstopjs】入门安装环境
1.首先全局安装BackstopJS npm install -g backstopjs 安装失败,常见报错&解决办法: 报错: (venv) D:\workspace\Otaku\backstop>npm install -g backstopjs npm warn deprecated inflight1.0.6: This module is not supported, and leaks mem…...
LocalDate 类常用方法详解(日期时间类)
LocalDate 类常用方法详解 LocalDate 是 Java 8 引入的日期时间API中的一个类,用于表示不含时间和时区的日期(年、月、日)。以下是一些常用的 LocalDate 方法: 创建 LocalDate 实例 now():获取当前日期 LocalDate t…...
kmp desktop实现excel预览
先将excel转paf https://blog.csdn.net/qq_42761569/article/details/121699594 package utilimport com.aspose.cells.License import com.aspose.cells.PdfSaveOptions import com.aspose.cells.Workbook import com.geolo.desktop.common.utils.LogUtils import java.io.Fi…...
OB_GINS_day3
这里写目录标题 实现当前状态初始化实现预积分的初始化由于此时preintegration_options 是3(也就是考虑odo以及earth rotation)为预积分的容器添加需要积分的IMU积分因子接下来是添加新的IMU到preintegration中 实现当前状态初始化 这个state_curr的主要…...
【Python3】【力扣题】405. 数字转换为十六进制数
【力扣题】题目描述: 题意理解:(不允许使用库函数) 数字等于0,则结果为0, 数字小于0,则补码运算,即最高位(32位)为1,其余全部取反,再加…...
记录一次企业外部通过ssh 连接数据库的事DBeaver
情况大概是这样,公司算法供应商开通了连接某个服务器A的权限,但是数据库x是在另一台服务器B上。 直接通过外部连接数据库是不行的,需要借用服务器A来进行访问x 使用软件:DBeaver, 数据库x类型:oracle 需要的信息&am…...
RK3576开发板AP6275S无线模块调试:从驱动到应用实战
1. 项目概述:从零上手RK3576的无线模块调试最近在折腾一块基于瑞芯微RK3576的国产工业评估板——眺望电子的EVM-RK3576。这块板子接口资源相当丰富,双千兆网口、CAN、RS485、USB3.0等一应俱全,对于做工业网关、边缘计算盒子或者多媒体终端的开…...
给AI模型选‘口粮’:MIT-BIH、CPSC、PTB-XL,哪个ECG数据集更适合你的项目?
给AI模型选‘口粮’:三大ECG数据集深度评测与实战指南 当心电图(ECG)分析遇上人工智能,数据质量直接决定模型性能天花板。PhysioNet作为全球最大的生物医学信号开放平台,其收录的MIT-BIH、CPSC-2018和PTB-XL三大经典EC…...
从MVC到DDD:微服务架构下应对业务复杂性的实战演进
1. 从“造到飞起”到“稳如老狗”:一个老码农的架构心路干了十几年开发,带过不少团队,也趟过无数坑。要说这些年最大的感受是什么,那就是:变化是常态,混乱是必然,而架构的价值,就是在…...
CANN/asc-devkit:int64转half精度函数
__ll2half_ru 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。 项目地址: https://gitcode.c…...
CausalImpact最佳实践:避免因果推断中的7个常见陷阱
CausalImpact最佳实践:避免因果推断中的7个常见陷阱 【免费下载链接】CausalImpact An R package for causal inference in time series 项目地址: https://gitcode.com/gh_mirrors/ca/CausalImpact 在时间序列分析领域,因果推断是揭示变量间真实…...
别再自己写CNN了!用TensorFlow 2.3和MobileNetV2,15分钟搞定水果识别模型(附完整代码)
15分钟构建高精度水果识别模型:基于TensorFlow 2.3与MobileNetV2的迁移学习实战 在计算机视觉领域,图像分类任务往往需要复杂的模型架构和大量训练数据。但对于大多数实际应用场景(如智能零售、农业分拣或家庭健康管理)࿰…...
Perplexity语言学习资源深度测评(2024Q2最新版):92%的学习者不知道的5个隐藏功能与3倍提效配置
更多请点击: https://intelliparadigm.com 第一章:Perplexity语言学习资源概览与核心价值定位 Perplexity 作为一款以“实时、可溯源、推理驱动”为设计哲学的AI问答工具,正迅速成为语言学习者构建语境化知识体系的关键基础设施。它并非传统…...
Linux守护进程--进程、进程组、会话、终端
要弄明白守护进程,就必须先讲清楚进程、进程组、会话、终端一、进程当我们运行一个应用时,根据冯诺依曼体系结构,必须把这个应用的代码、数据以及PCB(进程控制块,process control block,也就是关于进程的描述结构体)加…...
终极Android虚拟定位指南:无需Root,让你的手机“瞬间移动“到世界任何角落!
终极Android虚拟定位指南:无需Root,让你的手机"瞬间移动"到世界任何角落! 【免费下载链接】FakeLocation Xposed module to mock locations per app. 项目地址: https://gitcode.com/gh_mirrors/fak/FakeLocation 想象一下&…...
rag 进行 全局聚合的结构性失败 解析
rag 进行 全局聚合的结构性失败 解析 目录 rag 进行 全局聚合的结构性失败 解析 一句话核心结论 逐句拆解原文含义 1. 前提:什么是"全局聚合"? 2. 致命问题:采样引入不可纠正的选择偏差 农情任务实例:直观感受结构性偏差 真实数据分布(12M农情CSV,共12000条上…...
