Unity 2019.3.8f1环境下,因为不能从Hub里面安装SDK NDK JDK,所以只能自己找外部的。
然后安装了Studio 和好多SDK NDK JDK版本都报错了。后来开窍了想去找同事的能打包的去拷贝。
有些东西同事有现成的弄好的要能想到去拿,会节省很多很多时间,也不能因为快捷就忘记了记录细节,因为不是每次都能有这种机会。
然后完整拷贝下JRE JDK SDK NDK。然后连环境变量都不用配直接打包成功。Gradle用Unity默认的就可以了。
这里给下网盘网址

NDK
提取码:q2ak

JDK和JRE
提取码:mjic

SDK
提取码:uhvu

选择Android平台,在Edit->Preferences下面配置好就可以了
这种方法可能适合其他2019的版本
SDK解压可能会出错导致Unity选择的时候报错找不到一些SdkManager.bat文件,重新解压多几次应该就可以了,我几位同事都试过这个文章的方案,就是都是重新解压就行了, 一开始的解压会出现问题, 后面解压的就可以,可能要解压两到三次。

环境变量配置不配置都不会影响这个Unity是否正常出包,我是没配置我同事是配置了

在这里插入图片描述
最后的选项如下所示。

在这之前,我遇到了报错

UnityEditor.BuildPlayerWindow+BuildMethodException: 2 errors
  at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (UnityEditor.BuildPlayerOptions options) [0x002bb] in <d7545a46516941d4b2f2dec578cd41ee>:0 
  at UnityEditor.BuildPlayerWindow.CallBuildMethods (System.Boolean askForBuildLocation, UnityEditor.BuildOptions defaultBuildOptions) [0x00080] in <d7545a46516941d4b2f2dec578cd41ee>:0 
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

ArgumentNullException: Value cannot be null.
Parameter name: path1
System.IO.Path.Combine (System.String path1, System.String path2) (at <fb001e01371b4adca20013e0ac763896>:0)
UnityEditor.Utils.Paths.Combine (System.String[] components) (at <d7545a46516941d4b2f2dec578cd41ee>:0)
UnityEditor.Android.AndroidGradleRoot.GetGradleLaunchJarPath (System.String directory) (at <d265dd4439034d6c9926c590736e62a5>:0)
UnityEditor.Android.GradleWrapper.GetBaseCommand (System.Int32 jvmHeapSize) (at <d265dd4439034d6c9926c590736e62a5>:0)
UnityEditor.Android.PostProcessAndroidPlayer.ExecuteWarmup (System.String stagingArea) (at <d265dd4439034d6c9926c590736e62a5>:0)
UnityEditor.Android.PostProcessAndroidPlayer.PostProcess (UnityEditor.BuildTarget target, System.String stagingAreaData, System.String stagingArea, System.String playerPackage, System.String installPath, System.String companyName, System.String productName, UnityEditor.BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.Build.Reporting.BuildReport report) (at <d265dd4439034d6c9926c590736e62a5>:0)
UnityEditor.Android.AndroidBuildPostprocessor.PostProcess (UnityEditor.Modules.BuildPostProcessArgs args, UnityEditor.BuildProperties& outProperties) (at <d265dd4439034d6c9926c590736e62a5>:0)
UnityEditor.PostprocessBuildPlayer.Postprocess (UnityEditor.BuildTargetGroup targetGroup, UnityEditor.BuildTarget target, System.String installPath, System.String companyName, System.String productName, System.Int32 width, System.Int32 height, UnityEditor.BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.Build.Reporting.BuildReport report) (at <d7545a46516941d4b2f2dec578cd41ee>:0)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

当然还有同事是这样做的,他下载2021的官方的个人版hub,从官方的hub里面安装Unity,就能 下载对应的SDK NDK JDK等。
在这里插入图片描述
然后低版本的Unity的对应路径指向高版本的就行了

在这里插入图片描述

Logo

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

更多推荐