Unity2019及Unity2020打包android的环境配置

本文为作者原创,转载请注明出处:https://www.cnblogs.com/zhaoqingqing/p/14761582.html



2019安卓打包只有gradle模式了,因为谷歌把adt删了

unity2019可以自定义gradle模板,国内请把repo地址改成阿里云的源

unity2019打apk配置#

引擎版本:unity2019.3.7f1

android sdk,我仅保留28,29三个平台,system-images 仅保留23,29压缩后是2.5G,Android SDK Tools Version>26.1.1

  • platforms
  • system-images
  • build-tools

注意:jdk需要安装JDK1.8 64位 ,请不要安装其它版本

家里电脑上安装的是:openjdk/16,打包会弹出提示版本不匹配,所以请安装JDK而不是OpenJDK。

华为JDK国内镜像:https://mirrors.huaweicloud.com/openjdk/

提示需要JDK1.8

因为JDK8u211和8u212之后的版本商用收费,所以请下载旧版本的JD,可以在这里下载》华为国内JDK镜像:https://repo.huaweicloud.com/java/jdk/8u202-b08/

关于新版本JDK商用收费的文章《Java JDK 1.8 下载及其版本说明 8u202(最后一个免费版) - 梦相随1006 - 博客园 (cnblogs.com)

此环境配置打包出来的APK可在mumu模拟器安卓6.0上正常跑

image-20210328234504952

拷贝.gradle到离线环境#

在断网的情况下,使用unity2018.4.15在打包apk时会报无法连接到远程的google.xxx,无法打包出apk,尝试过从其它电脑拷贝.gradle到打包机上,还是出现一样的提示,所以放弃离线的方法。

修改Unity的gradle为阿里云#

以unity2019.3.7f1为例,在Unity的安装目录下,找到:PlaybackEngines/AndroidPlayer/Tools/GradleTemplates/baseProjectTemplate.gradle

替换这个文件的内容为如下,重启Unity进行build,下载一次之后后面build就会很快了。

Copy
// GENERATED BY UNITY. REMOVE THIS COMMENT TO PREVENT OVERWRITING WHEN EXPORTING AGAIN allprojects { buildscript { repositories {**ARTIFACTORYREPOSITORY** maven{ url 'https://maven.aliyun.com/repository/google'} //google() maven{ url 'https://maven.aliyun.com/repository/jcenter'} //jcenter() } dependencies { // If you are changing the Android Gradle Plugin version, make sure it is compatible with the Gradle version preinstalled with Unity // See which Gradle version is preinstalled with Unity here https://docs.unity3d.com/Manual/android-gradle-overview.html // See official Gradle and Android Gradle Plugin compatibility table here https://developer.android.com/studio/releases/gradle-plugin#updating-gradle // To specify a custom Gradle version in Unity, go do "Preferences > External Tools", uncheck "Gradle Installed with Unity (recommended)" and specify a path to a custom Gradle version classpath 'com.android.tools.build:gradle:3.4.0' **BUILD_SCRIPT_DEPS** } } repositories {**ARTIFACTORYREPOSITORY** maven{ url 'https://maven.aliyun.com/repository/google'} //google() maven{ url 'https://maven.aliyun.com/repository/jcenter'} //jcenter() flatDir { dirs "${project(':unityLibrary').projectDir}/libs" } } } task clean(type: Delete) { delete rootProject.buildDir }
作者:赵青青   一名在【网易游戏】做游戏开发的程序员,擅长Unity3D,游戏开发,.NET等领域。
本文版权归作者和博客园共有,欢迎转载,转载之后请务必在文章明显位置标出原文链接和作者,谢谢。
如果本文对您有帮助,请点击【推荐】您的赞赏将鼓励我继续创作!想跟我一起进步么?那就【关注】我吧。
posted @   赵青青  阅读(8940)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
阅读排行:
· 10亿数据,如何做迁移?
· 推荐几款开源且免费的 .NET MAUI 组件库
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 易语言 —— 开山篇
· Trae初体验
CONTENTS
点击右上角即可分享
微信分享提示