Android aab打包报错(持续更新中~)

简介: 言jarsigner.exefailed with exit code 1开发环境解决方案Execution failed for task ':app:transformClassesWithDexBuilderForRelease'.开发环境解决方案Cause: failed to decrypt safe contents entry: java.io.IOException: getSecretKey failed: Password is not ASCII

前言



今天在打包aab的时候遇到一些神奇的问题,话不多说,看问题


jarsigner.exefailed with exit code 1


开发环境


  • Android Studio:4.2.0


  • Gradle插件版本:3.2.1


  • Gradle所需版本:4.8.1


直接跑debug包没问题,打APK包也正常,问题来了打aab包就报错:


Cause: jarsigner.exefailed with exit code 1 :
����: �Ҳ������޷��������� sun.security.tools.jarsigner.Main


「Build output乱码问题后面讲到」,咱一个个解决,先看打包问题


解决方案


  • 升级Gradle插件版本:4.2.0


  • 升级Gradle所需版本:6.7.1


aab打包正常,问题解决。


查阅官方文档仅要求:「Android Studio 3.2 或更高版本」。还没搞懂,「有知道的大佬辛苦帮忙解答一下。」


Execution failed for task ':app:transformClassesWithDexBuilderForRelease'.


这个问题很直观,可能是gradle问题,咱们尝试解决一下。


开发环境


  • Android Studio:4.2.0


  • Gradle插件版本:3.2.1


  • Gradle所需版本:4.8.1


这次跑debug包都不行


解决方案


  • 1、对照Gradle插件版本和Gradle所需版本是否一致


  • 2、升级Gradle插件版本和Gradle所需版本


因为这个问题解决所以借鉴解决方案2,解决了Cause: jarsigner.exefailed with exit code 1 的问题


可参考:Gradle插件对应的Gradle所需版本


Cause: failed to decrypt safe contents entry: java.io.IOException: getSecretKey failed: Password is not ASCII


jks密码错误,打包时重新输入一下即可。


本文用于记录「aab打包错误」。持续更新中~

This project uses AndroidX dependencies, but the 'android.useAndroidX' property is not enabled. Set this property to true in the gradle.properties file and retry.


在gradle.properties新增:


android.useAndroidX=true
android.enableJetifier=true


Build output乱码


运行环境:Android Studio版本4.2.0


方法一


  • 1.点击help,选择Edit Custom VM Options,点击Create


微信图片_20220521144504.png


  • 2.打开后输入 「-Dfile.encoding=UTF-8」(前面不要有空格,否则AS打不开),重启Android Studio(FIle选择 Invalidate cache/restart)即可。

微信图片_20220521144549.png



方法二


在方案一 -Dfile.encoding=UTF-8 的基础上增加 -Dconsole.encoding=UTF-8

微信图片_20220521144613.png



方法三


找到Android Studio安装目录的bin文件夹下的studio64.exe.vmoptions

添加 -Dfile.encoding=UTF-8 (前面不要有空格,否则AS打不开)


方法四


在app/build.gradle中的android节点下添加如下代码:


android {
    android {
        //解决build output输出乱码的问题
        compileOptions.encoding = "UTF-8"
    }
}


方法五


微信图片_20220521144740.png


上面的方案解决了大部分人的问题,但是我的就是不行,任性,有厉害的大佬麻烦指点一下。谢啦。


相关推荐


Android aab打包


App Bundle介绍


打包AAB+PAD(java篇)



相关文章
|
6月前
|
安全 Java Android开发
05. 【Android教程】Android 程序签名打包
05. 【Android教程】Android 程序签名打包
72 1
|
4月前
|
安全 Java Android开发
【Android P】OTA升级包定制,移除不需要更新的分区,重新打包签名
如何解压OTA升级包、编辑升级包内容(例如移除不需要更新的分区)、重新打包、签名以及验证OTA文件的过程。
367 2
【Android P】OTA升级包定制,移除不需要更新的分区,重新打包签名
|
4月前
|
网络安全 图形学 Android开发
Unity与安卓丨AS报错:SSL peer shut down incorrectly
Unity与安卓丨AS报错:SSL peer shut down incorrectly
Unity与安卓丨AS报错:SSL peer shut down incorrectly
|
4月前
|
开发工具 图形学 Android开发
Unity与安卓丨unity报错:SDK Tools version 0.0 < 26.1.1
Unity与安卓丨unity报错:SDK Tools version 0.0 < 26.1.1
|
4月前
|
API Android开发 图形学
UNITY与安卓⭐三、安卓报错答疑合集
UNITY与安卓⭐三、安卓报错答疑合集
|
4月前
|
Java Android开发
解决Android编译报错:Unable to make field private final java.lang.String java.io.File.path accessible
解决Android编译报错:Unable to make field private final java.lang.String java.io.File.path accessible
648 1
|
4月前
|
Android开发
解決Android报错:Could not initialize class org.codehaus.groovy.reflection.ReflectionCache
解決Android报错:Could not initialize class org.codehaus.groovy.reflection.ReflectionCache
126 1
|
4月前
|
Android开发
解决Android、Flutter编译时Gradle报错:javax.net.ssl.SSLException: Connection reset
解决Android、Flutter编译时Gradle报错:javax.net.ssl.SSLException: Connection reset
482 0
|
5月前
|
Android开发
【亲测,安卓版】快速将网页网址打包成安卓app,一键将网页打包成app,免安装纯绿色版本,快速将网页网址打包成安卓apk
【亲测,安卓版】快速将网页网址打包成安卓app,一键将网页打包成app,免安装纯绿色版本,快速将网页网址打包成安卓apk
154 0
|
6月前
|
Java 开发工具 Android开发
详细解读Android开发DNK开发将.c文件打包成os
详细解读Android开发DNK开发将.c文件打包成os
35 0