赞
踩
问题起因在这里
解决Unity2019打包,提示 SDK Tools version 0.0.0 < 26.1.1
原本我已经觉得自己解决了问题。因为打包已经没有问题了。然后今天突然换了一个新的项目。又出现了这样的问题。
FAILURE: Build failed with an exception. * What went wrong: A problem occurred configuring root project 'gradleOut'. > Failed to notify project evaluation listener. > org.gradle.api.tasks.compile.CompileOptions.setBootClasspath(Ljava/lang/String;)V * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org BUILD FAILED in 15s
看到报错,第一反应就是gradle有问题或者库文件引用问题。
在Unity里调整一些设置未果后。只得打成安卓工程了。
安卓工程必然报错,不过没什么关系,先检查插件的版本。
检查gradle库版本
果然是库有问题,库版本不对应。
不清楚问题在哪的可以查看官方gradle对应关系。Android Gradle 插件版本说明
版本都是一一对应的,过高过低都会出问题。
我用的插件版本是3.0.1 所以我对应的应该是4.1+,于是我改成下图这样。
然后安卓工程打包无误,本来该完结撒花的。
我突然有个问题,unity2019全面支持gradle打包为啥还要导成安卓工程来解决问题呢。如果是gradle版本的问题,能否直接从unity层面来修复这个问题。
1:首先找unity2019自带的gradle文件位置。
2:边查边看找到这个文件夹后发现很多熟悉的东西。以下四个文件都能在安卓工程找到对应的文件。
按别人的教程添加阿里的库放在其他库前面。
maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
(这个库其实只是为了解决翻不了墙下载不到对应的文件,一般用在报找不到引用文件的问题上。所以结果是我添加了我仍然没有解决问题。)
3:修正gradle版本,我又尝试在下面位置指定4.1版本。也并没有用。
4:能改动的地方都试了仍然没有解决问题。所以,哪里出了问题呢?我又检查了一次对应关系,又发现了一个新问题。
我第一张截图(安卓工程)引用的版本号是3.0.1
第六张截图(unity工程的默认安卓配置)引用的版本号是3.4.0
那么3.0.1这个版本号是哪来的?本着求真务实的良好心态。我在工程里搜索了gradle,
temp的文件都不用看(黑色框内,因为是自动生成的。)
所以我打开了这个文件(红色框内)果然找到了这个3.0.1。
那么我要怎么做,因为Unity2019 默认的是3.4.0,而且空包打包无问题,那无疑说明3.4.0的库版本是Unity2019支持的。
没错,gradle库版本号和unity默认的版本号一致就好了。可以直接Unity打包apk。
完结撒花。
我找到这个gradle文件了又说明什么,它在哪里引用呢?为什么没用Unity的默认版本呢?
答案如下:
测试结果:1:勾选,必须修改gradle文件才能打包。(使用自定义配置,包含配置里面的引用库)
2:不勾选,打包无误,但功能有所阉割,apk可能无法运行。(使用默认配置,有第三方插件额外引用库的时候,无法获取导致Bug)
另外,改完第一次打包的话极慢,在AndroidStudio里也是一样的。第一次极慢,只要不报错,耐心等待就好。
以上。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。