有一段时间没有搞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
- }
- }
- }
学无止境,跟不上时代了。