目录

问题来源

手动安装配置

问题分析

解决办法


问题来源

安装Unity3D 2021.3.X时,勾选了安卓支持的相关模块,但是提示无法下载,如图1-1所示,安装完成后,想在UnityHub里面再添加依旧不行。

图1-1 安卓支持下载错误信息

尝试了网上的多种方法,包括使用科学上网工具、更改安装路径等等,依旧无济于事。

手动安装配置

找到安装目录下的模块配置文件“modules.json”,按照安卓模块下载的URL,尝试手动下载并在Unity3D编辑器中配置路径,如图2-1和图2-2所示。

图2-1 modules.json文件

图2-2 Unity3D安卓构建支持配置

 按理说,此时应该可以正常配置成功,但实际打包安卓APK时却发现,报错

CommandInvokationFailure: Gradle build failed

试图直接解决该错误的尝试也都以失败告终。

问题分析

最开始安装安卓模块出现下载失败的错误毫无疑问是出在网络上,由于安卓由国外谷歌公司开发和维护,而目前国内屏蔽几乎所有的谷歌网站,所以提示下载失败。后面尝试的手动安装配置报错的原因并不出在安卓模块本身,而是Unity3D在构建安卓APK时需要联网下载部分资源,而这部分资源同样被国内防火墙屏蔽,所以报错。

找到错误原因后再仔细看错误的提示信息,发现三条重要线索

Could not resolve com.android.tools.build:gradle:4.0.1.
Could not resolve all artifacts for configuration ':launcher:classpath'.
Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/4.0.1/gradle-4.0.1.pom'.

gradle是安卓APK的打包工具,提示信息大概是Unity3D无法获取到谷歌网站一个安卓支持相关的资源,并且该资源与配置“launcher”有关。如果能找到该URL的配置文件并把其下载来源更改国内可以访问的镜像网站,则问题应该就可以迎刃而解。

解决办法

首先,使用第二章中的办法进行手动配置。

打包APK发现报错后,找到安装路径下的文件夹...\unity2021\2021.3.26f1c1\Editor\Data\PlaybackEngines\AndroidPlayer\Tools\GradleTemplates,如图4-1所示,该文件夹下包含了多个gradle相关的配置文件,其中baseProjectTemplate.gradle文件说明了gradle相关资源的下载方式,如图4-2所示。

图4-1 gradle配置文件

图4-2 修改baseProjectTemplate.gradle文件

 修改baseProjectTemplate.gradle文件,如图4-2红色方框中的内容,将默认的下载路径google()和jcenter()注释掉,并添加谷内阿里云的镜像资源网站:

maven{ url 'https://maven.aliyun.com/repository/google' }

maven{ url 'https://maven.aliyun.com/repository/jcenter' }

保存后,问题解决。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐