建議先看一下這篇文章:
https://linxinfa.blog.csdn.net/article/details/118553713?spm=1001.2101.3001.6650.10&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EOPENSEARCH%7Edefault-10.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EOPENSEARCH%7Edefault-10.no_search_link
環境:unity2019.4.28
unity2019及以上版本,都是使用gradle來打包的
一.總結
1.Gradle是一個打包工具,各版本的下載地址:https://services.gradle.org/distributions/
在unity中的位置:點擊Edit/Preferences/External Tools
如果要升級Gradle,可以從上面的下載地址下載gradle-x.x.x-all.zip,然后將解壓文件夾下的lib替換unity安裝路徑的Editor\Data\PlaybackEngines\AndroidPlayer\Tools\gradle下的lib
具體參考:https://blog.csdn.net/lalate/article/details/119451761
2.Android Gradle Plugins是一個Gradle的插件,專門用來打包apk
它和Gradle有對應的版本關系,如果版本不對應,可能會報錯,對應關系:https://developer.android.google.cn/studio/releases/gradle-plugin.html#updating-plugin
下面這圖只截取了一部分,具體見上面的對應關系鏈接
在unity中配置Android Gradle Plugins的方式是,點擊Edit/Project Settings/Player/Publishing Settings,勾選這幾個即可看到Assets\Plugins\Android目錄下生成了幾個配置文件
打開baseProjectTemplate.gradle,可以看到用到的Android Gradle Plugins版本為3.4.0,因此unity的Gradle版本要5.1.1
實際上這幾個文件是unity從unity安裝目錄\Editor\Data\PlaybackEngines\AndroidPlayer\Tools\GradleTemplates拷貝過來的,勾選了這幾個選項表示為項目進行自定義修改,否則就使用模板默認的
二.實踐
1.新建一個unity工程,切換到Android平台,直接Build一個apk
2.Build過程中,出現了Plugin with id 'com.android.application' not found的報錯,試了網上很多方案都不行,這里可以將C:\Users\用戶名\caches下的所有文件刪掉,后面Build的時候會重新下載的,猜測是之前caches下的文件有問題
3.工程使用的Gradle版本,可以在工程目錄\Temp\gradleOut\.gradle下看到