Android打包为aab教程
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android打包为aab教程相关的知识,希望对你有一定的参考价值。
参考技术A 如题,如何把安卓项目打包成aab并且安装到手机上。首先,把问题拆分为两步:
(1)把项目导出aab
(2)aab安装到手机
实操前需要准备的环境:
AndroidStudio
BuildTool
妙速绿色上网软件开通
发车:
选择androidstudio工具栏build,然后选择generate singed bundle apk
然后选择第一项
点击next
填写好信息后,再点击next
点击finish即可开始打包。
最后打包完成,会生成一个xxx.aab的文件,如下图:
这里演示的是win10系统配置adb环境,配置结果如下图,蓝色背景文字为adb的目录
至此,adb配置完成。
操作指令如下:
cmd窗口命令图片:
目录图片:
Android AAB打包报错(持续更新中~)
前言
今天在打包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 的问题
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
-
2.打开后输入 「-Dfile.encoding=UTF-8」(前面不要有空格,否则AS打不开),重启Android Studio(FIle选择 Invalidate cache/restart)即可。
方法二
在方案一 -Dfile.encoding=UTF-8 的基础上增加 -Dconsole.encoding=UTF-8
方法三
找到Android Studio安装目录的bin文件夹下的studio64.exe.vmoptions
添加 -Dfile.encoding=UTF-8 (前面不要有空格,否则AS打不开)
方法四
在app/build.gradle中的android节点下添加如下代码:
android {
android {
//解决build output输出乱码的问题
compileOptions.encoding = "UTF-8"
}
}
方法五
上面的方案解决了大部分人的问题,但是我的就是不行,任性,有厉害的大佬麻烦指点一下。谢啦。
相关推荐
Android aab打包
App Bundle介绍
打包AAB+PAD(java篇)
以上是关于Android打包为aab教程的主要内容,如果未能解决你的问题,请参考以下文章