【强推荐】如何生成正式签名的APK文件

2024-01-10

在本篇文章您将了解到两种生成正式签名的APK文件,当然还会了解到 gradle build gradle assemble 的区别。

  • 通过 Android Studio 生成
  • 使用 Gradle 生成

前言

首先需要了解的是并不是所有的APK文件都能成功安装在手机上 ,能够安装在Android手机上的应用都是带有签名的。可能有小伙伴有疑惑了:为什么通过Android Studio运行生成的应用程序好像没有进行过签名啊?那是因为,Android Studio 使用了一个默认的 keystore 文件帮我们自动进行了签名,可以在 Android Studio 中看到:
Gradle 面板——Tasks——android——signingReport,双击 signingReport,在控制台可以看到keystore 信息。
在这里插入图片描述
这就说明我们通过 Android Studio 运行的程序使用的都是这个 debug.keystore 文件来进行签名。
如果要想上架到应用商店,需要生成正式签名的 APK,那么问题来了,如何生成正式签名的APK 呢?本文将分享两种方法:

使用Android Studio生成正式签名的APK文件

点击 Android Studio 导航栏上的 Build——Generate signed APK ——选择APK——填写如下内容。如果没有 jks 文件的话,点击 Create new 即可生成新的。
在这里插入图片描述
其中 Validity(years)代表的是有效时长。具体信息可以添加如下内容
在这里插入图片描述
配置好信息之后,点击下一步选择release即可。
在这里插入图片描述
当点击Create后,右下角会有一个提示框:APK(s) generated successfully。当我们运行demo生成release版本时,该demo就是一个带有正式签名的APK文件。

使用Gradle生成正式签名的APK文件

在 testapp2 项目下的 build.gradle 文件中添加 signingconfigs闭包 ,并在release闭包中使用。signingconfigs闭包中添加了一个 config闭包 ,其中配置了 keystore 文件的各种信息,其中, storeFile 用于指定keystore文件的位置(文件必须已存在); storePassword 用于指定密码, keyAlias 用于指定别名, keyPassword 用于指定别名密码。

android {
    namespace 'com.example.testapp2'
    compileSdk 34
    defaultConfig {
       # 此处省略
    }
    signingConfigs {
        config {
            storeFile file('/Users/zeng/zeng.jks')
            storePassword '123456'
            keyAlias 'Zeng'
            keyPassword '123456'
        }
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.config
        }
    }

因为我们在 buildTypes下面的 release 闭包中应用了添加的签名配置,这样当生成正式版APK文件的时候就会自动使用配置的签名信息来进行签名。赶紧生成一个带有签名的 APK 试试吧。运行下面的命令生成 apk。

gradlew :testapp2:assembleRelease
#或者
gradlew :testapp2:build
#或者
gradlew :testapp2:assemble

可能小伙伴又有疑问了? gradlew build gradlew assemble 有什么区别。
相同点:
两者在执行命令后,都会生成debug和release包。
不同点:

  • gradlew build :是一个通用的构建命令,将执行项目的整体构建过程。会编译源代码,运行单元测试,处理器资源文件,最终生成可运行的应用程序包。
  • gradlew assemble : 用于执行构建过程的部分步骤,主要是打包生成可执行文件(如APK)。与 gradlew build 不同,gradlew assemble只执行构建过程的部分流程,跳过了编译源代码和运行单元测试等步骤。它可以指定特定的构建变体,例如 gradlew assembleDebug 或 gradlew assembleRelease ,来单独构建指定的变体而非构建所有变体。

别忘记一键三连哦

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【强推荐】如何生成正式签名的APK文件 的相关文章

随机推荐

  • TranslateTransform 用于 Silverlight 中的拖放

    我们正在尝试在 Silverlight 3 中实现拖放 我们希望用户能够将元素从树视图拖动到 UI 的另一部分 父元素是 Grid 我们一直在尝试将 TranslateTransform 与 MouseLeftButtonDown Mous
  • 闵氏距离在文本检索中的应用

    1 背景介绍 文本检索是现代信息处理系统中不可或缺的一部分 它的主要目标是根据用户的查询需求 从海量的文本数据中找出与查询最相关的文档 随着互联网的普及 文本数据的规模不断膨胀 这导致了传统的文本检索方法面临着巨大的挑战 为了解决这些问题
  • STM32F4XX的12位ADC采集数值超过4096&右对齐模式设置失败

    文章目录 一 前言 二 问题1 数值超过4096 三 问题1的排错过程 四 问题2 右对齐模式设置失败 五 问题2的解决方法 5 1 将ADC ExternalTrigConv设置为0 5 2 使用ADC StructInit 函数 一 前
  • Counter-strike 2游戏网站网页制作设计 基于html+css 使用HTML+CSS+JavaScript完成以下任务: 1.使用WebStorm建立和管理个人网站; 2.熟练使用CSS结

    Counter strike 2游戏网站网页制作设计 基于html css Counter strike 2游戏网站网页制作设计 基于html css网页项目的设计与实现 https www bilibili com video BV1Kw
  • 2024 首发 全自动网页生成系统源码 重构版

    使用光年后台管理框架重构了这个系统 源码优点 所有模板经过精心审核与修改 完美兼容小屏手机大屏手机 以及各种平板端 电脑端和360浏览器 谷歌浏览器 火狐浏览器等等各大浏览器显示 免费制作 为用户使用方便考虑 全自动网页制作系统无需繁琐的注
  • arduino安装DHT11库

    步骤操作如下 打开Arduino IDE 在菜单栏中选择 项目 gt 加载库 gt 管理库 在库管理器的搜索框中 输入 DHT sensor library 找到 DHT sensor library by Adafruit 点击 安装 安
  • 机器智能与人类智能的合作:认知能力的提升

    1 背景介绍 在过去的几十年里 人工智能 AI 技术的发展取得了显著的进展 从早期的规则引擎和专家系统到现代的深度学习和神经网络 AI已经成功地解决了许多复杂的问题 然而 尽管如此 人工智能仍然远远低于人类智能 人类智能的强大之处在于其认知
  • AI大模型应用入门实战与进阶:深入理解Transformer架构

    1 背景介绍 自从2017年的 Attention is All You Need 一文发表以来 Transformer架构已经成为自然语言处理 NLP 领域的主流模型 这篇文章将深入探讨Transformer架构的核心概念 算法原理以及实
  • 抖音矩阵云混剪系统源码 短视频矩阵营销系统V2.2.1(免授权版)

    抖音矩阵云混剪系统源码 短视频矩阵营销系统V2 2 1 免授权版 中网智达矩阵营销系统多平台多账号一站式管理 一键发布作品 智能标题 关键词优化 排名查询 混剪生成原创视频 账号分组 意向客户 自动采集 智能回复 多账号评论聚合回复 免切换
  • 【软件测试】学习笔记-高效提交Bug

    本篇文章介绍如何才能写出一份高效的软件缺陷报告 测试工程师需要利用对需求的理解 高效的执行力以及严密的逻辑推理能力 迅速找出软件中的潜在缺陷 并以缺陷报告的形式递交给开发团队 缺陷报告是测试工程师与开发工程师交流沟通的重要桥梁 也是测试工程
  • 2024 影视APP下载页面自适应源码

    2024 影视APP下载页面自适应源码 2024 影视APP下载页面自适应源码2024 影视APP下载页面自适应源码2024 影视APP下载页面自适应源码
  • 机器学习与人类智能的融合:未来趋势与挑战

    1 背景介绍 人工智能 Artificial Intelligence AI 是指一种以计算机程序为代表的智能方法 可以理解 学习和应用人类智能的某些方面 机器学习 Machine Learning ML 是人工智能的一个子领域 它涉及到计
  • 太阳诱电树立超高端产品概念,与电子产业同步发展

    无论是传统的手机 家电 安防 汽车 医疗 交通 建筑的智能化转型 还是从物联网 工业4 0 智能硬件 互联网 一场基于大数据 互联网 应用软件等技术的硬件复兴热潮正在席卷全球 没有新东西出来 每家都一样 这一长期以来的争议一直困扰着CEAT
  • 2024 个人官网主页php源码

    带后台KongYi Team系统 官网网站与个人官网主页php源码 该项目适用于团队 工作室等类型 全站由Layui强力驱动 及光年后台模板的使用 团队介绍 项目展示 成员列表等 多管理员 项目管理 模板切换等等功能 有着防窥Js的使用 安
  • 太阳诱电 | 电容器为什么会发热?什么是纹波电流

    电容器中存在寄生于电极和电介质的电阻成分 当纹波电流等交流电流通过电容器时 电阻的成分会产生热量 为了抑制发热 选择ESR较低的电容器非常重要 陶瓷电容器在电容器中ESR较低 非常适合抑制发热 电容器中的纹波电流主要是指电源电路中由于IC的
  • 深度强化学习的核心算法:从QLearning到Deep QNetwork

    1 背景介绍 深度强化学习 Deep Reinforcement Learning DRL 是一种通过智能体与环境的互动学习的方法 它可以帮助智能体在没有明确指导的情况下学习如何执行最佳的动作 从而最大化收益 深度强化学习结合了强化学习 R
  • 基于机器学习的贷中风险预测模型-江苏银行“随e融”杯-二等奖

    文章目录 源码下载地址 项目介绍 界面预览 项目备注 毕设定制 咨询 源码下载地址 源码下载地址 点击这里下载源码 项目介绍 基于机器学习的贷中风险预测模型 江苏银行
  • JDK21 和 ActiveMQ 6.0.1

    ActiveMQ 安装和测试 一 ActiveMQ 下载 二 ActiveMQ 安装 三 代码测试 1 Pom 依赖 2 YML配置 3 启动类 4 MQ 配置类 5 MQ 消费者
  • 心灵与计算机:解密情感处理

    1 背景介绍 情感处理是人工智能领域中一个重要的研究方向 它旨在使计算机能理解 识别和处理人类的情感 情感处理的主要应用包括情感分析 情感识别 情感挖掘等 随着大数据 深度学习和自然语言处理等技术的发展 情感处理技术已经取得了显著的进展 然
  • 【强推荐】如何生成正式签名的APK文件

    在本篇文章您将了解到两种生成正式签名的APK文件 当然还会了解到 gradle build 与 gradle assemble 的区别 通过 Android Studio 生成 使用 Gradle 生成 文章目录 前言 使用Android