Android Studio打包生成APK教程
一、修改版本和指定生成APK文件名【可选】
将项目切换到Project视图,打开app目录下的build.gradle文件
1.1 修定软件版本
如1.2图所示。
versionCode是app的大版本号,为数值类型,默认为1我这里改为2。
versionName是app的具体版本号,为际符串类型,默认为1.0我这里改为2.3。
1.2 指定生成的APK文件名
一样是在build.gradle文件中修改,默认生成的release版apk名为app-release.apk。
在android内部defaultConfig同层下添加以不内容(outputFileName改成自己想要的apk名)
android.applicationVariants.all {
variant ->
variant.outputs.all {
// 此处指定生成的apk文件名
outputFileName = "SecTest.apk"
}
}

二、进行安全加固【可选】
如果想提高APP的反编译能力,可以对APP进行安全加固,参看APP安全防护基本方法(混淆/签名验证/反调试)
三、导出签名发布版apk
直接点“Build APK(s)”生成的是使用默认的debug.keystore签名的Debug版apk(生成在app\build\outputs\apk\debug目录下),真正发布软件时我们需要生成自己密钥签名的release版apk。
菜单栏----Build----Generate Signed APK

在Key store path中输入自己要用来进行签名的密钥文件的存放位置,同时输入密钥文件的读写用户名密码(如果还没有密钥文件点击图中的“Create New”进行创建即可)

APK Destination Folder-----APK文件生成的目录
Build Type----生成release版还是debug版
Signature Version----对哪些部分进行签名

生成完成后在指定生成目录下即会有一个release文件夹在其下即可找到生成的apk(app-release.apk是我之前生成的版本)

Android Studio打包生成APK教程的更多相关文章
- Android Studio 打包生成apk
打开AndroidStudio,并且打开想要生成apk文件的项目 点击工具栏上面的“Builder” 点击“Builder”之后在下拉菜单里面可以看到“Genarate Singed APK”,点 ...
- Android Studio 打包生成 APK
1. 第一步 Build -> Generate Signed APK 2. 之后会要求开发者输入相关的密钥文件和密码 如果有则找到对应的 .jks 文件输入密码完成相应操作,否则则创建一个对应 ...
- uni-app&H5&Android混合开发二 || 使用Android Studio打包应用APK
前言: 在上一章节我们已经讲了如何uni-app离线打包Android平台教程,这一章就该来讲讲如何使用Android Studio打包应用APK提供给Android手机安装使用了. 第一步.首先打开 ...
- eclipse 和 android studio 打包签名apk问题
首先,我使用eclipse打包了一个签名apk 然后,我使用同一个签名文件在android studio 打包同一个项目 接下来,首先安装eclipse 打包的apk,然后安装android stud ...
- Android Studio单独生成apk
/********************************************************************* * Android Studio单独生成apk * 说明: ...
- Android Studio 打包自定义apk文件名
使用Android Studio打包的时候,我们有时候需要自定义apk的文件名,在此记录一下. 在app的build.gradle中,根节点下使用关键词def声明一个全局变量,用于获取打包的时间,格式 ...
- Android Studio 打包生成正式apk(XXX-release.apk)的两种方式
{ 方式一:使用Android Studio生成1.点击Build->Generate Signed apk,首次点击可能会提示输入操作系统密码2.弹出如下对话框,还没有生成过keystore ...
- 【Android Studio安装部署系列】十、Android studio打包发布apk安装包
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 使用Android studio发布apk安装包的操作步骤. 开始打包发布apk Build > Generate Signe ...
- 在eclipse中将android工程打包生成apk文件
1.)生成keystore 按照下面的命令行 在C:\Program Files\Java\jdk1.6.0_10\bin>目录下,输入keytool -genkey -alias androi ...
随机推荐
- 折腾了好久的地图缩放 ngui 各种偷懒实现
当时找到一篇cocos2dx 地图缩放的 很遗憾我用不了 也要记录一下 免得以后用ugui可以用 转 http://blog.csdn.net/cocosnode/article/details/ ...
- gulp常用方法
var gulp = require('gulp'); var concat = require('gulp-concat'); //使用gulp-concat合并文件,减少网络请求(静态资源数量): ...
- linux JAVA_HOME和 java -version不匹配
~/.bashrc 中更新了jdk, JAVA_HOME 起效果了,但是java -version还是老的. 原因是/usr/bin/java 和usr/bin/javac是一个链接,得改. 使用 ...
- 关于在pycharm下提示ModuleNotFoundError: No module named 'XXX' 的一种可能
在pycharm下出现“ModuleNotFoundError: No module named 'XXX' ”提示时, 在网上找大部分的解决方案是重新在pycharm里安装对应的模块,但是这不是我要 ...
- leecode第七十题(爬楼梯)
class Solution { public: int climbStairs(int n) { vector<unsigned long long> num;//斐波那契数列 num. ...
- 牛客OI周赛4-提高组 B 最后的晚餐(dinner)
最后的晚餐(dinner) 思路: 容斥 求 ∑(-1)^i * C(n, i) * 2^i * (2n-i-1)! 这道题卡常数 #pragma GCC optimize(2) #pragma GC ...
- Codeforces 934C - A Twisty Movement
934C - A Twisty Movement 思路:dp 很容易想到要预处理出1的前缀和pre[i]和2的后缀和suf[i] 然后枚举区间,对于每个区间如果能求出最长递减序列的长度,那么就能更新答 ...
- html5 history 信息api pushState
这个功能可以进行传参,还可以解决ajax无法前进和倒退的问题 首先,history新增的两个方法history.replaceState()和history.pushState()方法属于HTML5浏 ...
- UnityShader中的语义相关
语义简介:实际上就是一个表达参数含义的字符串. 应用阶段到顶点着色器时用常用的语义如下: POSITION:模型空间中的顶点坐标 NORMAL:模型空间中的法线方向 TANGENT:模型空间中的切线方 ...
- Unity中利用光线投射实现摄像机拉近追踪对象
项目中要求实现摄像机跟踪人物移动,并且可以水平360°,上下接近180°的自由旋转.这些操作网上已近有很多版本的实现,在此不再赘述.我在此想说的是,当摄像机移动到场景边界,或者触碰到场景中的障碍物的时 ...