Android基础入门:APP打包发布

简介: APK如果使用一个key签名,发布时另一个key签名的文件将无法安装或覆盖老的版本,这样可以防止你已安装的应用被恶意的第三方覆盖或替换掉。应用程序升级:拥有同一个签名文件的应用,在用户升级到新的版本,可以实现无缝覆盖升级。不需要用户先卸载掉老版本,再装新版本。


1.App发布到应用市场

将应用程序打包为apk文件-》进行签名-》apk申请著作权(花点钱,写文档/找中介)-》应用市场检查程序是否合法-》成功发布

2.第三方市场

在这个网站可以下载各种手机app软件

百度手机助手_有颜又有货的应用商店 (baidu.com)

3.签名文件 的作用

  1. APK如果使用一个key签名,发布时另一个key签名的文件将无法安装或覆盖老的版本,这样可以防止你已安装的应用被恶意的第三方覆盖或替换掉。
  2. 应用程序升级:拥有同一个签名文件的应用,在用户升级到新的版本,可以实现无缝覆盖升级。不需要用户先卸载掉老版本,再装新版本。

为什么要签名:如手机qq发布新的版本,覆盖安装,通过签名来作为app唯一的标识(类似人的身份证)

4.打包步骤

4.1bulid apk

通过build生成一个apk文件

网络异常,图片无法展示
|

选择APK方式发布,默认是Android App Bundle方式发布,这一般是发布到国外市场。

Android App Bundle 是一种发布格式,其中包含您应用的所有经过编译的代码和资源,它会将 APK 生成及签名交由 Google Play 来完成。

更多信息:Android App Bundle 简介

网络异常,图片无法展示
|

4.2创建密钥和密钥库

然后就是创建一个新的密钥和密钥库,自己创建一个特殊文件

我之前创建过密钥库,所以进来就是这张界面

网络异常,图片无法展示
|

如果是第一次打包没有创建过密钥和密钥库,则需要点击create new...

网络异常,图片无法展示
|

网络异常,图片无法展示
|

  • Key store path:创建密钥库的位置
    Password:为密钥库创建一个安全的密码
  • 密钥: Alias:为密钥输入一个标识名
    Password:为密钥创建一个并确认安全的密码(此密码应当与密钥库的密码不同)
  • Validity (years):以年为单位设置密钥的有效时长。密钥的有效期应至少为 25年
  • Certificate:为证书输入一些关于您自己的信息。此信息不会显示在应用中,但会作为 APK 的一部分包含在您的证书中

4.3正式导出

选择release方式导出,这一般是正式上线的版本,debug是内部测试版本,记住Destination Folder的位置,这是等会apk打包存放的位置

网络异常,图片无法展示
|

5.apk解压

查看刚刚的Destination Folder路径下可以找到刚刚打包下来的apk文件,这就已经可以直接发到手机上安装了

网络异常,图片无法展示
|

我们可以将apk文件解压,得到一个包含如下文件的文件夹

网络异常,图片无法展示
|

AndroidManifest.xml文件:其中的AndroidManifest.xml文件不完全与Android  Studio中的项目中的AndroidManifest.xml文件相同,这里的文件说经过加密处理的,反正我是没法用Edge直接打开它

res文件:项目中的资源文件;所以我们要找某一些app的图片素材可以通过这种方式获取,就不用截图了

classes.dex文件:是Android系统的可执行文件,包含应用程序的全部操作指令以及运行时数据。当java程序编译成class后,还需要使用dx工具将所有的class文件整合到一个dex文件,目的是其中各个类能够共享数据,在一定程度上降低了冗余,同时也是文件结构更加经凑

但是.dex文件不安全,容易被破解,被不法分子利用的话,就会直接看到我们app的java源码。所以我们需要对App加固

App加固

第三方平台

https://console.cloud.tencent.com/ms

注册一个腾讯云账号就可以在线帮我们实现app加固

网络异常,图片无法展示
|

上传成功后,它会自动帮我们做一系列的应用加固

网络异常,图片无法展示
|

加固完成

网络异常,图片无法展示
|


相关文章
|
15天前
|
前端开发 Java 开发工具
【03】完整flutter的APP打包流程-以apk设置图标-包名-签名-APP名-打包流程为例—-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈 章节内容【03】
【03】完整flutter的APP打包流程-以apk设置图标-包名-签名-APP名-打包流程为例—-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈 章节内容【03】
【03】完整flutter的APP打包流程-以apk设置图标-包名-签名-APP名-打包流程为例—-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈 章节内容【03】
|
4月前
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
894 1
|
15天前
|
Dart 前端开发 Android开发
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
|
8天前
|
缓存 前端开发 IDE
【06】flutter完成注册页面-密码登录-手机短信验证-找回密码相关页面-并且实现静态跳转打包demo做演示-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【06】flutter完成注册页面-密码登录-手机短信验证-找回密码相关页面-并且实现静态跳转打包demo做演示-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【06】flutter完成注册页面-密码登录-手机短信验证-找回密码相关页面-并且实现静态跳转打包demo做演示-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
|
14天前
|
小程序 IDE PHP
圈子源码如何打包生成App小程序/开发一个圈子系统软件所需要的费用体现在哪里?
将PHP源码打包成App的过程涉及多个步骤和技术选择。以圈子源码为例,首先明确需求,确定App功能和目标用户群体,并根据需求开发小程序页面,如用户注册、圈子列表等。源码准备阶段确保源码适用于小程序开发,环境配置需安装IDE(如微信开发者工具)及依赖库。最后在IDE中打包小程序并上传至管理平台,通过审核后发布。费用方面,模板开发成本较低,定制开发则更高,具体取决于需求复杂度和第三方服务费用。
47 0
|
2月前
|
存储 监控 API
app开发之安卓Android+苹果ios打包所有权限对应解释列表【长期更新】-以及默认打包自动添加权限列表和简化后的基本打包权限列表以uniapp为例-优雅草央千澈
app开发之安卓Android+苹果ios打包所有权限对应解释列表【长期更新】-以及默认打包自动添加权限列表和简化后的基本打包权限列表以uniapp为例-优雅草央千澈
|
3月前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
165 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
3月前
|
XML 数据库 Android开发
探索Android开发:从入门到精通的旅程
在这篇文章中,我们将一起踏上一段激动人心的旅程,通过深入浅出的方式,解锁Android开发的秘密。无论你是编程新手还是有经验的开发者,本文都将为你提供宝贵的知识和技能,帮助你构建出色的Android应用。我们将从基础概念开始,逐步深入到高级技巧和最佳实践,最终实现从初学者到专家的转变。让我们开始吧!
62 3
|
4月前
|
存储 前端开发 测试技术
Android kotlin MVVM 架构简单示例入门
Android kotlin MVVM 架构简单示例入门
58 1
|
4月前
|
移动开发 小程序 数据可视化
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
518 3

热门文章

最新文章