Android studio 打包release版本 apk 换方式了?
Posted 夢鑰
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android studio 打包release版本 apk 换方式了?相关的知识,希望对你有一定的参考价值。
前言
有一段时间没有搞android,在基本操作打release包的时候竟然一直打包不成功,一直报
Generate Signed APK: APK(s) generated successfully for module 'CorrectionPlatform.app' with 0 build variants:
但主要还不提示打包失败;
在经历一段煎熬各种搜索各种找,终于找到了另一种可以生成release包的方法。
再看下面之前是默认你已经生成好了 jks文件,jsk是什么我这里就不提了;
一、之前打包方法
1、之前打包方式:点击顶部工具栏的Build > Generate Signed Bundle / APK ..... 如图
2、弹窗选择 APK 然后 Next
3、然后选择jsk文件输入相关信息 继续 在Next
4、然后再选择release 再点击 Finish ,然后就等着打完包 就好了
5、以上是我之前操作的方法,可以生成release包,但是不知道怎么现在通过上面那钟方式无法生成release包了。
然后前看下面方法
二、新大陆打包方法
1、点击顶部File 如下图
2、点击Moudle 如下图
3、上一步添加完release后 ,然后操作 选择jsk、输入密码、别名.....
4、配置完Models的release后,然后 再点击 Build Variants 选择 继续看下图。
5、上述步骤都完成后,点击顶部工具栏 View > Build Variants
点击后 会出现 下面这个框,将debug选择为 release
6、点击顶部工具栏Build > 如下图 然后等会就会打包成release包了
3、自定义生成apk名称
// 一定要写在android节点外 ---注意写的位置----
def releaseTime()
return new Date().format("yyyyMMddHHmmss", TimeZone.getDefault())
ext.appName = "QQ"
// 一定要写在android节点中 ---注意写的位置----
applicationVariants.all variant ->
variant.outputs.all output ->
def outputFile = output.outputFile
if (outputFile != null && outputFile.name.endsWith('.apk'))
def fileName
if (variant.buildType.name == 'release')
fileName = "$appName-$defaultConfig.versionName-$releaseTime()-release.apk"
else if (variant.buildType.name == 'debug')
fileName = "$appName-$defaultConfig.versionName-$releaseTime()-debug.apk"
else
fileName = "$appName-$defaultConfig.versionName-$releaseTime()-other.apk"
outputFileName = fileName
总结
学无止境,跟不上时代了。
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 打包release版本 apk 换方式了?的主要内容,如果未能解决你的问题,请参考以下文章
Android studio 打包release版本 apk 换方式了?
升级完Android Studio3.2后,打包release出现的错误
Android Studio的签名打包后报错提示:Lint found fatal errors while assembling a release target