Google Play上架aab保姆级教程(纯aab上架/已上架apk转aab上架)

news2024/10/6 9:21:29

0、上传密钥 & 应用签名密钥

在这里插入图片描述

“Google 会使用上传证书验证您的身份,并使用您的应用签名密钥为 APK 签名以进行分发”

以上为官方解释。

2021年8月起,上传google play的应用必须以aab格式,aab的签名流程要比之前apk的复杂一些。需要上传密钥和应用签名密钥两个密钥。

首先,你需要在google开发者平台上传或更新两个密钥(此处有三种情况,下面会详细介绍:1.在google play新建一个aab应用 2.为google play之前的aab应用更新密钥 3.为google play之前的apk应用更新密钥。此处,第三种情况较为复杂,因为以前apk只有一个密钥,现在要将他更新为aab的两个密钥,以前的密钥不能丢,需要用以前的密钥为新的密钥签名再上传才能更新成功)。然后用android studio打出用上传密钥签名的aab包,上传google play Console。Google play Console 会验证aab应用的上传密钥,验证不通过便上传失败。上传成功后,便可发布版本。审核通过后,用户在google play下载应用时,google play会剔除你的上传密钥,将aab组装成apk,然后用应用签名密钥进行签名,供用户下载。

0.1、生成上传密钥

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

填写信息,注意:有效期最好25年,时间太长,上传google play时可能会审核不通过。

记录下密钥的别名和密码,
在这里插入图片描述

以后都用这个密钥签名aab再上传google play。

在这里插入图片描述

0.2、生成应用签名密钥

基本流程和生成上传密钥的相同,但是有几个地方需要注意一下

生成新密钥时,最好选择.keystore格式
在这里插入图片描述

上架google play的应用要勾选”Google play App Signing”选项

在这里插入图片描述

将该签名上传至google play console
在这里插入图片描述

1、Google play上架aab流程

1.1、创建应用

点击创建应用

在这里插入图片描述
填写信息,点击创建

在这里插入图片描述

1.2、根据提示依次填写商品详情

在这里插入图片描述
在这里插入图片描述

1.3、添加国家和地区

在这里插入图片描述

1.4、创建发布版本

在这里插入图片描述

1.5、上传自己的签名

在这里插入图片描述

在这里插入图片描述

上传自己的签名文件(上传密钥 + 应用签名密钥)

在这里插入图片描述

下载pepk工具,根据命令行生成所需文件

应用签名密钥 :
java -jar pepk.jar --keystore=test_app_signing_key.keystore --alias=swiftpasssign --output=app_sigining_key_output.zip --include-cert --encryptionkey=eb10fe8f7c7c9df715022017b00c6471f8ba8170b13049a11e6c09ffe3056a104a3bbe4ac5a955f4ba4fe93fc8cef27558a3eb9d2a529a2092761fb833b656cd48b9de6a

在这里插入图片描述

在这里插入图片描述

上传密钥:
keytool -export -rfc -keystore test_upload_key.jks -alias swiftpass -file upload_key_certificate.pem

在这里插入图片描述

在这里插入图片描述

上传后点击保存

在这里插入图片描述
保存成功后会提示

在这里插入图片描述

注:若此时只上传应用签名密钥不上传上传密钥,审核通过后,在应用完整性处查看两个密钥会是一样的。

1.6、上传aab文件

在这里插入图片描述

上传成功后填写相应信息,并点击保存

在这里插入图片描述
点击检查

在这里插入图片描述

版本检查通过,点击发布正式版

在这里插入图片描述

在版本概览里,可以查看当前发布版本,处于”可以送审”状态

在这里插入图片描述

在发布概览点击”送审”

2、Google play aab应用更新签名

应用签名密钥每年只能修改一次,上传密钥需要联系google团队修改。

2.1、修改应用签名密钥app_signing_key

在这里插入图片描述

根据命令行生成所需文件
命令行中包含着用上传密钥为新的应用签名密钥签名的操作

在这里插入图片描述

java -jar pepk.jar --keystore=new_app_signing_key.keystore --alias=wftsign --output=new_app_signing_key_output.zip --signing-keystore=test_upload_key.jks --signing-key-alias=swiftpass --encryptionkey=eb10fe8f7c7c9df715022017b00c6471f8ba8170b13049a11e6c09ffe3056a104a3bbe4ac5a955f4ba4fe93fc8cef27558a3eb9d2a529a2092761fb833b656cd48b9de6a

在这里插入图片描述

在这里插入图片描述

根据需要进行选择升级版本

在这里插入图片描述
上传文件,选择原因,点击升级

在这里插入图片描述
点击确认

在这里插入图片描述

系统会提示

在这里插入图片描述

此时再查看应用签名密钥,已经更改

在这里插入图片描述

2.2、修改上传密钥upload_key

需要联系google团队

在这里插入图片描述

3、Google play已上架的apk应用更新为aab

3.1、上传上传密钥和应用签名密钥

在这里插入图片描述

生成应用签名密钥

在这里插入图片描述

有坑注意

注:先用之前上传apk所用的签名文件生成,生成之后再升级修改

旧签名文件
在这里插入图片描述

java -jar pepk.jar --keystore=spay_intl_keystore.jks --alias=spay_intl --output=old_app_signing_private_key.pepk --encryptionkey=eb10fe8f7c7c9df715022017b00c6471f8ba8170b13049a11e6c09ffe3056a104a3bbe4ac5a955f4ba4fe93fc8cef27558a3eb9d2a529a2092761fb833b656cd48b9de6a

在这里插入图片描述

在这里插入图片描述

生成上传密钥
keytool -export -rfc -keystore swiftpass_upload_key.jks -alias wft -file upload_certificate.pem

在这里插入图片描述

上传密钥

在这里插入图片描述

在这里插入图片描述

上传成功
在这里插入图片描述

在这里插入图片描述

3.2、更换应用签名密钥

在这里插入图片描述

注:因为旧的密钥加密强度不符合Google Play新标准。

在这里插入图片描述

上传新的应用签名密钥

在这里插入图片描述

该应用签名密钥生成时需要用上传密钥进行签名(命令行中已包含该操作,只需替换对应参数即可)

java -jar pepk.jar --keystore=swiftpass_app_signing_key.keystore --alias=wftsign --output=app_sigining_key_output.zip --signing-keystore=swiftpass_upload_key.jks --signing-key-alias=wft --encryptionkey=eb10fe8f7c7c9df715022017b00c6471f8ba8170b13049a11e6c09ffe3056a104a3bbe4ac5a955f4ba4fe93fc8cef27558a3eb9d2a529a2092761fb833b656cd48b9de6a

在这里插入图片描述

在这里插入图片描述

选择原因,上传密钥

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/609135.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何真正有效地应对项目中的需求变更?

需求变更在奉行唯快不破的互联网公司,可算程序员头号噩梦,“996”直接元凶。 阿里口号拥抱变化。既然需求变更无法被消灭,就要通过学习,掌握更好应对需求变更方法。 1 常见的需求变更流程 先要发起变更申请,由变更委…

从IO多路复用到redis线程模型

文章目录 Unix IO模型分类阻塞IO - Blocking IO非阻塞IO - NoneBlocking IOIO多路复用 - IO multiplexing信号驱动IO - signal driven IO异步IO - asynchronous IO同步与异步的定义阻塞与非阻塞的定义 IO多路复用有哪些实现IO多路复用的大致实现selectpollepoll redis的线程模型…

Python实战基础19-异常处理及程序调试

1、异常概述 在程序运行过程中,经常会遇到各种各样的错误,这些错误统称为“异常”。 这些异常有的是由于开发者将关键字敲错,这类错误产生的是SyntaxError:invalid syntax(无效语法),这将直接导致程序不能…

3.二进制高可用安装k8s 1.23集群(生产级)

二进制高可用安装k8s集群(生产级) 本文档适用于kubernetes1.23 节点 Etcd Cluster Etcd是一个数据库,k8s做的一些变更啥的都会存到Etcd中 如果集群比较大建议与master节点分装,单独装Etcd master节点 master分为几个重要的组件 你所有的流量都会经过Kube-APIServer Co…

排序算法——希尔排序图文详解

文章目录 希尔排序基本思想整体插入思想预排序结论 代码实现实现代码直接插入排序与希尔排序的效率比较测试代码: 时间复杂度 希尔排序 注1:本篇是基于对直接插入排序法的拓展,如果对直接插入法不了解,建议先看看直接插入排序 注…

Learning C++ No.27 【布隆过滤器实战】

引言 北京时间:2023/5/31/22:02,昨天的计算机导论考试,三个字,哈哈哈,摆烂,大致题目都是一些基础知识,但是这些基础知识都是非常非常理论的知识,理论的我一点不会,像什么…

【自制C++深度学习框架】表达式层的设计思路

表达式层的设计思路 在深度学习框架中,Expression Layer(表达式层)是指一个通用的算子,其允许深度学习网络的不同层之间结合和嵌套,从而支持一些更复杂的操作,如分支之间的加减乘除(elementAdd…

PyTorch 深度学习 || 专题二:PyTorch 实验框架的搭建

PyTorch 实验框架的搭建 1. PyTorch简介 PyTorch是由Meta AI(Facebook)人工智能研究小组开发的一种基于Lua编写的Torch库的Python实现的深度学习库,目前被广泛应用于学术界和工业界,PyTorch在API的设计上更加简洁、优雅和易懂。 1.1 PyTorch的发展 “…

Numpy---生成数组的方法、从现有数组中生成、生成固定范围的数组

1. 生成数组的方法 np.ones(shape, dtypeNone, orderC) 创建一个所有元素都为1的多维数组 参数说明: shape : 形状; dtypeNone: 元素类型; order : {‘C’,‘F’},可选,默认值:C 是否在内…

BPMN2.0自动启动模拟流程

思路:BPMN的流程模拟启动,主要是通过生成令牌,并启动令牌模拟 流程模拟的开启需要关键性工具:bpmn-js-token-simulation,需要先行下载 注:BPMN2.0的流程模拟工具版本不同,启动方式也不一样&am…

Kafka某Topic的部分partition无法消费问题

今天同事反馈有个topic出现积压。于是上kfk管理平台查看该topic对应的group。发现6个分区中有2个不消费,另外4个消费也较慢,总体lag在增长。查看服务器日志,日志中有rebalance 12 retry 。。。Exception,之后改消费线程停止。 查…

chatgpt赋能python:Python实现数据匹配的方法

Python实现数据匹配的方法 在数据分析和处理中,经常需要将两组数据进行匹配。Python作为一门强大的编程语言,在数据匹配方面也有着其独特的优势。下面我们将介绍Python实现数据匹配的方法。 数据匹配 数据匹配通常指的是将两组数据根据某些特定的规则…

理解calico容器网络通信方案原理

0. 前言 Calico是k8s中常用的容器解决方案的插件,本文主要介绍BGP模式和IPIP模式是如何解决的,并详细了解其原理,并通过实验加深理解。 1. 介绍Calico Calico是属于纯3层的网络模型,每个容器都通过IP直接通信,中间通…

试验SurfaceFlinger 中Source Crop

在 SurfaceFlinger 中,Source Crop 是用于指定源图像的裁剪区域的一个概念。Source Crop 可以理解为是一个矩形区域,它定义了源图像中要被渲染到目标区域的部分。在 Android 中,Source Crop 通常用于实现屏幕分辨率适应和缩放等功能。 在 Sur…

【Java基础篇】逻辑控制练习题与猜数字游戏

作者简介: 辭七七,目前大一,正在学习C/C,Java,Python等 作者主页: 七七的个人主页 文章收录专栏:Java.SE,本专栏主要讲解运算符,程序逻辑控制,方法的使用&…

2023_Python全栈工程师入门教程目录

2023_Python全栈工程师入门教程 该路线来自慕课课程,侵权则删,支持正版课程,课程地址为:https://class.imooc.com/sale/python2021 学习路线以三个项目推动,一步步夯实技术水平,打好Python开发基石 目录: 1.0 Python基础入门 2.0 Python语法进阶 3.0 Python数据…

windows系统典型漏洞分析

内存结构 缓冲区溢出漏洞 缓冲区溢出漏洞就是在向缓冲区写入数据时,由于没有做边界检查,导致写入缓冲区的数据超过预先分配的边界,从而使溢出数据覆盖在合法数据上而引起系统异常的一种现象。 ESP、EPB ESP:扩展栈指针&#xff08…

React.memo()、userMemo 、 userCallbank的区别及使用

本文是对以下课程的笔记输出,总结的比较简洁,若大家有不理解的地方,可以通过观看课程进行详细学习; React81_React.memo_哔哩哔哩_bilibili React76_useEffect简介_哔哩哔哩_bilibili React136_useMemo_哔哩哔哩_bilibili Rea…

直播录音时准备一副监听耳机,实现所听即所得,丁一号G800S上手

有些朋友在录视频还有开在线会议的时候,都会遇到一个奇怪的问题,就是自己用麦克风收音的时候,自己的耳机和别人的耳机听到的效果不一样,像是音色、清晰度不好,或者是缺少伴奏以及背景音嘈杂等,这时候我们就…

2023贵工程团体程序设计赛

A这是一道数学题&#xff1f; 道路有两边。 #include<bits/stdc.h> using namespace std; int main(){int n,m;cin>>n>>m;cout<<(n/m1)*2;return 0; } BCPA的团体赛 直接输出 。 #include <bits/stdc.h> using i64 long long; #define IOS…