Android程序打包为APK
Andriod安装包文件(Android Package),简称APK,后缀名为.apk。
1、生成未签名的安装包
Build -> Build Bundle(s)/APK(s) -> Build APK(s) 会生成一个未签名的apk文件,默认为debug版,可以正常安装使用。
可以 Build -> Select Build Variant -> 选择生成的apk版本(debug、release),再 Build -> Build Bundle(s)/APK(s) -> Build APK(s) 生成对应版本的apk文件。
注意:
release版本的未签名的apk文件,在某些手机上无法安装,比如OPPO。
如果Build -> Select Build Variant 设置为release,之后再debug,debug config往往会报错,将Build -> Select Build Variant 设置为debug即可。
2、生成签名的安装包
Build -> Generate Signed Bundle/APK -> APK -> Create New 创建一个新的证书 (也可以选择一个已有的证书)->
ok -> 选择生成的APK文件所在目录、选择apk版本
点击finish即会在指定目录下生成一个签名的apk文件。
下次打包时,可以直接使用上面生成的签名: Choose existing 选择已存在的钥匙库文件,输入钥匙库密码、秘钥密码
debug版和release版的区别:
debug版包含调试信息,往往没有任何优化,适合程序调试。
release版是发布版,供用户使用,往往进行了各种优化。
Android程序打包为APK的更多相关文章
- android程序打包成APK
1.下载ant(从官网上下载没有bin目录,可以直接在百度上搜APACHE-ANT-1.9.4-BIN.ZIP) 2.解压到C盘根目录(也可以是其他盘) 3.修改环境变量 ANT_HOME C: ...
- Python:使用Kivy将python程序打包为apk文件
1.概述 Kivy是一套Python下的跨平台开源应用开发框架,官网,我们可以用 它来将Python程序打包为安卓的apk安装文件.以下是在windows环境中使用. 安装和配置的过程中会下载很多东西 ...
- eclipse 和 android studio 打包签名apk问题
首先,我使用eclipse打包了一个签名apk 然后,我使用同一个签名文件在android studio 打包同一个项目 接下来,首先安装eclipse 打包的apk,然后安装android stud ...
- uni-app&H5&Android混合开发二 || 使用Android Studio打包应用APK
前言: 在上一章节我们已经讲了如何uni-app离线打包Android平台教程,这一章就该来讲讲如何使用Android Studio打包应用APK提供给Android手机安装使用了. 第一步.首先打开 ...
- Android项目打包成APK文件
第一步:右键单击该项目选择Export项目 显演示样例如以下界面:选择Exprot Android Application 第二步:输入项目名称,默认的情况下是原始的项目名称 下一步: 点击 Crea ...
- 【Android Studio安装部署系列】十、Android studio打包发布apk安装包
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 使用Android studio发布apk安装包的操作步骤. 开始打包发布apk Build > Generate Signe ...
- Android Studio 打包自定义apk文件名
使用Android Studio打包的时候,我们有时候需要自定义apk的文件名,在此记录一下. 在app的build.gradle中,根节点下使用关键词def声明一个全局变量,用于获取打包的时间,格式 ...
- android开发里跳过的坑——android studio打包的APK签名无效
近期把一个项目从eclipse上移植到了android studio, 在打包发布APK的时候,应用上传到应用市场时提示取不到签名.但是,我确实使用了 做过签名了. 然后换了一种打包方式 build ...
- Android 程序打包和安装过程
APP程序打包与安装的流程: APP的安装过程:
随机推荐
- Notepad++文本编辑器 快捷键
Ctrl+C 复制Ctrl+X 剪切Ctrl+V 粘贴Ctrl+Z 撤消Ctrl+Y 恢复Ctrl+A 全选Ctrl+F 键查找对话框启动Ctrl+H 查找/替换对话框Ctrl+D 复制并粘贴当行 C ...
- codeforces 679e Bear and Bad Powers of 42
传送门:http://codeforces.com/contest/679/problem/E 题目意思很清晰,给你一个序列,要求你完成以下三个操作: 1.输出A[i] 2.将[a,b]区间的所有数字 ...
- impdp+network link 跳过expdp直接导入目标库
impdp命令特殊用途,可以将数据库的一个用户迁移到另一台机器上的数据库的用户中.如果目标用户不存在,还可以对应的创建该用户. 快速的把A库上的用户迁移到B库上. 下面就来看一下命令格式: B库下执 ...
- codeforces 691F F. Couple Cover(组合计数)
题目链接: F. Couple Cover time limit per test 3 seconds memory limit per test 512 megabytes input standa ...
- virtualbox 复制虚拟机提示uuid is exists
C:\Program Files\Oracle\VirtualBox>VBoxManage.exe internalcommands sethduuid D:毛毛草\virtual\ubuntu ...
- Vue之组件的内容分发
aaarticlea/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUF ...
- 多线程-threading模块2
从上面例子中发现线程的创建是颇为麻烦的,每创建一个线程都需要创建一个 t(t1.t2....),如果创建的线程较多时这样极其不方便.下面对通过例子进行改进: #coding:utf-8 impor ...
- 【旧文章搬运】Windows内核常见数据结构(驱动相关)
原文发表于百度空间,2008-7-24========================================================================== 这些是驱动中 ...
- UVaLive 7455 Linear Ecosystem (Gaussi 消元)
题意:对一个k元向量, 每次左乘一个k*k的矩阵得到新的向量.问经过一定次数的左乘后,能否使得该向量不再变化. (同时要求此时向量非零). 析:设初始向量为A,矩阵为P.由于每次矩阵P都是左乘A, 那 ...
- git stash和git stash pop(转载)
转自:http://www.cnblogs.com/highriver/archive/2012/01/05/2313808.html zz: http://blog.csdn.net/herbert ...