Android studio打包生成apk时出现的乱码问题

在新电脑上使用Android Studio打包APK时遇到两个问题:1) Gradle同步失败,提示非法字符;2) 获取密钥失败,提示密码非ASCII码。分析后发现,问题根源在于系统字符集被更改为非中文,导致打包过程中的编码问题。解决方法是将系统字符集改回中文,并确保AS和项目的编码设置也与旧电脑一致。经此调整,打包过程顺利完成。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

换了一台电脑,使用AS打包生成APK时抛出这两个问题,按顺序抛出的:

1、Android Studio Gradle sync failed: Illegal char <?> at index...

字面解析一看就是非法的字符集抛出的异常,在Gradle脚本编译时,确实有用动态生成中文APK包的命名,但是在前一台电脑里面打包是没有问题,证明不是字符集的问题,但是为了解决这个问题,于是把Gradle动态编译时的中文字符集换成英文,于是就抛出了第二个问题....

2、Get Key failed: getSecretKey failed: Password is not ASCII...

获取秘钥key时,密码不是ASCII码,AS版本4.0以后,APK生成.jks秘钥文件,是需要PCKS二次加密生成,以保证.jks文件的安全性,在前一台电脑上已经生成过了,所以可以排除生成秘钥的问题。

从两个问题分析出,都是字符集编码出了问题,于是去看AS的编码问题,右下角也是正常的编码,setting里面也是正常的UTF-8编码,

 

AS的编码也没有问题,那么再看看系统的字符集,通过win+r后cmd,输入java(前提是配置了java系统变量,不然命令不生效),确实看到了cmd里面展示出来,有关中文都变成了乱码,确认了系统字符集已经被更改,需要把系统字符集改成中国简体中文后重启。

 

这样就解决了上述两个问题,再次打包就通过了~

最终得出结果:不论是项目git/svn导出,拷贝,需要系统编码、AS编码跟之前的项目编码一样,否则在工作区域显示会乱码,或者在打包编译时,会抛出非法的字符集异常。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值