【Android】使用Android Studio打包APK文件

文章目录

  • 1. 新建项目
  • 2. 打包生成APK
  • 3. 安装APK

1. 新建项目

打包APK之前,首先需要新建项目,有基础的可以跳过。

无基础的可以参考:使用Android Studio运行Hello World项目

2. 打包生成APK

1.找到Build -> Generate Signed Bundle or APK -> 勾选APK

在这里插入图片描述

在这里插入图片描述

2.首次需要创建证书,后续可以使用已创建好的证书

在这里插入图片描述

3.填写证书信息

  • 选择密钥库存放路径,并填写密码
  • 填写密钥名称、密码和有效期
  • 填写证书信息(选填,不用全部填写)

为了方便,此处我的密码都填写为123456

在这里插入图片描述

4.填写刚刚的密钥库密码和密钥密码,并勾选记住密码

在这里插入图片描述

5.选择release版本,点击create创建APK文件

debug版本和release版本的区别:debug版本主要用于开发过程中的调试和测试,而release版本则用于最终用户的使用。

debug版本(调试版本):

  • 主要用于开发过程中的调试和测试。
  • 包含完整的调试信息,允许开发者在程序上设置断点、单步执行以及使用TRACE/ASSERT等调试输出语句。
  • 不进行代码优化,以便为开发者提供强大的调试能力。
  • 相对于Release版本,Debug版本通常更大,并且运行速度较慢。
  • 开发者在Debug模式下可以更容易地发现和修复程序中的错误和问题。

release版本(发布版本):

  • 主要用于最终用户的使用。
  • 不包含任何调试信息,以减小程序的大小并提高运行效率。
  • 进行了各种优化,包括代码最小化和速度优化,以提供最佳的用户体验。
  • Release版本不包含Debug版本中的调试功能,如设置断点或单步执行。
  • 相对于Debug版本,Release版本通常更小、更快,并且更稳定。

在这里插入图片描述

在这里插入图片描述

6.APK存放路径:

  • 切换左上角的 AndroidProject,此时可以发现app项目下多了个release文件夹,文件夹下有apk文件
  • 点击该apk文件,右键 Open In -> Explorer,就能打开到该apk所在的文件夹

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3. 安装APK

1.下载夜神模拟器:https://www.yeshen.com/

在这里插入图片描述

2.下载完成后得到文件 nox_setup_v7.0.3.5_full.exe,双击安装

在这里插入图片描述

在这里插入图片描述

3.夜神模拟器默认是平板机型,点击右上角设置图标,可以修改设置,调整机型和分辨率

在这里插入图片描述

在这里插入图片描述

4.将刚刚打包好的apk拖到夜神模拟器中:E:\workspace\MyApplication\app\release\app-release.apk

在这里插入图片描述
5.此时相当于将apk装到了手机里,点击该应用,打开即可

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++-带你深度理解string类的常见接口

1. 为什么学习string类? C语言中,字符串是以\0结尾的一些字符的集合,为了操作方便,C标准库中提供了一些str系列的库函数,但是这些库函数与字符串是分离开的,不太符合OOP的思想,而且底层空间需…

基于SSM的教材管理系统

文章目录 教材管理系统一、项目演示二、项目介绍三、系统部分功能截图四、部分代码展示五、底部获取项目源码(9.9¥) 教材管理系统 一、项目演示 基于SSM的教材管理系统 二、项目介绍 有三个角色 1、管理员 功能模块:用户管理、教…

Atcoder ABC339 A - TLD

TLD 时间限制:2s 内存限制:1024MB 【原题地址】 所有图片源自Atcoder,题目译文源自脚本Atcoder Better! 点击此处跳转至原题 【问题描述】 【输入格式】 【输出格式】 【样例1】 【样例输入1】 atcoder.jp【样例输出1】 jp【样例说明…

猫头虎分享已解决Bug ‍ || Python Error: KeyError: ‘key_name‘

博主猫头虎的技术世界 🌟 欢迎来到猫头虎的博客 — 探索技术的无限可能! 专栏链接: 🔗 精选专栏: 《面试题大全》 — 面试准备的宝典!《IDEA开发秘籍》 — 提升你的IDEA技能!《100天精通鸿蒙》 …

linux信号机制[二]

阻塞信号 信号相关概念 实际执行信号的处理动作称为信号递达(Delivery)信号从产生到递达之间的状态,称为信号未决(Pending)。[收到信号但是没有处理]进程可以选择阻塞 (Block )某个信号。被阻塞的信号产生时将保持在未决状态,直到进程解除对此信号的阻塞,才执行递达的动作.注…

如何有效的向 AI 提问 ?

目录 〇、导言 一、Base LLM 与 Instruction Tuned LLM 二、如何提出有效的问题 ? 1. 明确问题: 2. 简明扼要: 3. 避免二义性: 4. 避免绝对化的问题: 5. 利用引导词: 6. 检查语法和拼写&#xff1…

统计图饼图绘制方法(C语言)

统计图饼图绘制方法(C语言) 常用的统计图有条形图、柱形图、折线图、曲线图、饼图、环形图、扇形图。 前几类图比较容易绘制,饼图绘制较难。今值此介绍饼图的绘制方法。 本方法采用C语言的最基本功能: ( 1.&#xff09…

51单片机编程基础(C语言):LED点阵屏

点阵屏介绍 类似于数码管,要用到肉眼视觉效应。扫描,才能把每一个LED都能选中,从而显示我们想要的图形,否则, 只能一次点亮一个LED, LED使用 51单片机点阵屏电路图: 实际连接顺序如下图&#…

寒假作业:2024/2/14

作业1&#xff1a;编程实现二维数组的杨辉三角 代码&#xff1a; #include <stdio.h> #include <string.h> #include <stdlib.h> int main(int argc, const char *argv[]) {int n;printf("please enter n:");scanf("%d",&n);int a…

17 ABCD数码管显示与动态扫描原理

1. 驱动八位数码管循环点亮 1.1 数码管结构图 数码管有两种结构&#xff0c;共阴极和共阳极&#xff0c;ACX720板上的是共阳极数码管&#xff0c;低电平点亮。 1.2 三位数码管等效电路图 为了节约I/O接口&#xff0c;各个数码管的各段发光管被连在一起&#xff0c;通过sel端…

使用 Chainlit, Langchain 及 Elasticsearch 轻松实现对 PDF 文件的查询

在我之前的文章 “Elasticsearch&#xff1a;与多个 PDF 聊天 | LangChain Python 应用教程&#xff08;免费 LLMs 和嵌入&#xff09;” 里&#xff0c;我详述如何使用 Streamlit&#xff0c;Langchain, Elasticsearch 及 OpenAI 来针对 PDF 进行聊天。在今天的文章中&#xf…

CVE-2023-41892 漏洞复现

CVE-2023-41892 开题&#xff0c;是一个RCE Thanks for installing Craft CMS! You’re looking at the index.twig template file located in your templates/ folder. Once you’re ready to start building out your site’s front end, you can replace this with someth…