【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.mzph.cn/news/682325.shtml

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

相关文章

AMD FPGA设计优化宝典笔记(4)复位桥

高亚军老师的这本书《AMD FPGA设计优化宝典》,他主要讲了两个东西: 第一个东西是代码的良好风格; 第二个是设计收敛等的本质。 这个书的结构是一个总论,加上另外的9个优化,包含的有:时钟网络、组合逻辑、触…

机器视觉范例及深入

1.做一个魔法棒吧 获得了物体的坐标后,可以用它来完成一些有趣的事情,例如把物体当作“笔”在图像 上绘制出图样。我们可以选择一种颜色的黏土,将其固定在任意棒状物(例如铅笔)的一端 并揉成球形,做一个 …

函数求导法则【高数笔记】

【分类】 1. 四则运算求导 2. 复合运算求导 3. 整体思想求导 #整体思想求导本质是运用复合运算求导,只不过是对复合运算求导的一种精炼 #无论是具体函数还是抽象函数求导,方法是一致的 【四则运算求导】 加,减,乘,除&a…

Java基于微信小程序的电子竞技信息交流平台

博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇…

Promise与async await的作用及应用场景

在Web前端开发中,处理异步操作是非常常见的需求。为了解决这个问题,ES6引入了Promise和后续的async await。本文将介绍Promise和async await的作用,以及在实际开发中的应用场景。 一、Promise的作用及应用场景 Promise是一个表示异步操作最…

【程序设计竞赛】C++与Java的细节优化

必须强调下,以下的任意一种优化,都应该是在本身采用的算法没有任何问题情况下的“锦上添花”,而不是“雪中送炭”。 如果下面的说法存在误导,请专业大佬评论指正 读写优化 C读写优化——解除流绑定 在ACM里,经常出现…

Hive调优——合并小文件

目录 一、小文件产生的原因 二、小文件的危害 三、小文件的解决方案 3.1 小文件的预防 3.1.1 减少Map数量 3.1.2 减少Reduce的数量 3.2 已存在的小文件合并 3.2.1 方式一:insert overwrite (推荐) 3.2.2 方式二:concatenate 3.2.3 方式三&#xff…

支付交易——重试服务

摘要 为了能在最大限度满足顾客要求的前提下尽可能降低成本,老王在开店的过程中想了很多方法。这充分体现出老王作为一个商人的特质:不放过一个订单,不浪费一分钱。 老王就这样在自己的生意上兢兢业业多年,想着应该不会有什么纰漏。但现实很…

常见单例模式详解

单例模式是23种设计模式中应用最广的模式之一,其定义:确保某一个类只有一个实例,而且自行实实例化并向整个系统通过这个实例。其类图如下: 通俗来说,单例模式就是用于创建那些在软件系统中独一无二的对象。在一个软件系…

来不及哀悼了,接下来上场的是C语言内存函数memcpy,memmove,memset,memcmp

今天又来写一篇C的文章,这里要讲的是C语言中的几个内存函数,主要是讲解功能和用法,望能耐心观看哦。望官方也多多曝光。 目录 memcpy memmove memset memcmp memcpy memcpy 是 C 语言标准库中的一个函数,用于复制内存块的内容…

基于Transformer的机器学习模型的主动学习

主动学习和基于Transformer的机器学习模型的结合为有效地训练深度学习模型提供了强有力的工具。通过利用主动学习,数据科学家能够减少训练模型所需的标记数据的数量,同时仍然达到高精度。本文将探讨基于Transformer的机器学习模型如何在主动学习环境中使…

MySQL数据库⑩_视图+MySQL用户管理(增删查改)

目录 1. 视图的概念和规则限制 2. 视图的基本使用 2.1 创建视图 2.2 修改视图影响基表 2.3 修改基表影响视图 2.4 删除视图 3. MySQL用户管理 3.1 用户信息 3.2 创建用户 3.3 修改用户密码 3.4 删除用户 4. 用户权限 4.1 MySQL权限 4.2 给用户授权 4.3 回收权限…

Windows Server 2019 DHCP服务器搭建

系列文章目录 目录 系列文章目录 文章目录 前言 一、DHCP服务器是什么? 二、配置服务器 1.实验环境搭建 1)实验服务器配置和客户端 2)实验环境 2.服务器配置 ​编辑 文章目录 Windows Server 2003 Web服务器搭建Windows Server 2003 FTP服务器搭建Windows S…

Leetcode 236.二叉树的最近公共祖先

题目描述 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的…

在微信视频号上发表视频

我们手机打开微信 然后 最下面选择 发现 然后点击 上面的视频号 进入后 点击 右上角头像图标 然后 进入个人管理界面 左下角选择 发表视频 然后 进入一个录制界面 我们左下角 点击这个 从相册选择 打开相册后 选择自己需要的视频 然后 点击右下角下一步 觉得内容没问题 就…

VUE基础知识(JAVA后端入门篇)

VUE基础知识(JAVA后端入门篇) Vue是一套前端框架,免除原生JavaScriptr中的DOM操作,简化书写基于MVVM(Model–View-ViewModel)思想,实现数据的双向绑定,将编程的关注点放在数据上Vue.js - 渐进式 JavaScrip…

【python量化交易】qteasy使用教程02 - 获取和管理金融数据

qteasy教程2 - 获取并管理金融数据 qteasy教程2 - 获取并管理金融数据开始前的准备工作获取基础数据以及价格数据下载交易日历和基础数据查看股票和指数的基础数据下载沪市股票数据从本地获取股价数据生成K线图 数据类型的查找定期下载数据到本地回顾总结 qteasy教程2 - 获取并…

基于BitVM的乐观 BTC bridge

1. 引言 前序博客: 区块链互操作协议Bitcoin Bridge:治愈还是诅咒?BitVM:Bitcoin的链下合约 基于BitVM的乐观 BTC bridge: Trust-minimized two-way peg 机制 BitVM BTC bridge背后的主要思想是: 为比…

51单片机编程基础(C语言):电子时钟(LED1602作为显示)

题目要求: 审题时这个题是用数码管来显示的,数码管显示时钟我完成了一个,只是要求跟他不一样,所以这次想用LCD1602来显示,所以我先用LCD1602完成,再用数码管完成(其实也只要在我之前的项目基础…

[计算机网络]---网络编程套接字

前言 作者:小蜗牛向前冲 名言:我可以接受失败,但我不能接受放弃 如果觉的博主的文章还不错的话,还请点赞,收藏,关注👀支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 目录 一、基础知识…