Unity.4.0f1-Android打包报错:ArgumentNullException: Value cannot be null.

时间:2024-04-14 14:53:57

问题解决的总结

报错:
ArgumentNullException: Value cannot be null.
Parameter name: path1
System.IO.Path.Combine (System.String path1, System.String path2) (at…
(此处省略一堆红字)

首先要确保自己的 jdk 版本满足 Unity 的要求,也不必费心去找, UnityHub 给出了一个方便的方法:
打开 UnityHub -> 安装 ->点击需要的版本右上角的3个点->添加模块
如下图:
Unity2019.4.0f1-Android打包报错:ArgumentNullException: Value cannot be null.在弹出的这个窗口,点击那个下拉菜单的箭头。(如此下图所示)
(一定要点开,Unity2019很大可能是没安装下拉菜单中的那两项的。
我个人猜测目的可能是为了下载了SDK的人不用重新下载一遍,对于早已下载了jdk的同理)

这里,如果你已经又SDK了,就不必勾选这个对应的 Android SDK & NDK Tools。
(我为了试是什么原因所以勾选并下载了这个选项)
下面的那个 OpenJDK 是我们需要的,一定要选上…
Unity2019.4.0f1-Android打包报错:ArgumentNullException: Value cannot be null.接着,按下图进入preference面板,勾选图片中红色框,框出来的选项。
红色框里的东西, Unity 在安装的时候就按上了,所以直接勾选就行。

那个绿色框框内的选项也勾选上。
绿色框里的,在进行完上一张图片的步骤后,就安装在了 Unity 的默认路径下了。

那个紫色的框框,就是提示可以在那里查看 Unity 下载的 JDK 版本是多少而已
我试着不去勾选其中的任意一个选项,看看会怎么样。结果,就是接着报错,233333
Unity2019.4.0f1-Android打包报错:ArgumentNullException: Value cannot be null.
接下来,如下图,
我们正常的进行打包步骤就行了,
注意点 com.公司名字.APP名字
注意点 自己所能打包的 API Level

等等
如果使用的是自己的之前下载的 SDK 就会弹出这个窗口,无视它,点击 Use Highest Installed 就行了。
Unity2019.4.0f1-Android打包报错:ArgumentNullException: Value cannot be null.这就是我遇到的问题所使用的解决方案…
如果你的更奇葩…那祝你可以早点找到好的解决方法(捂脸)

这是B站的兄弟发的视频:(看见他能一次就打包出来,光看着都开心)
https://www.bilibili.com/video/BV1xt4y1C75a

这是参考步骤:
https://blog.****.net/wuyt2008/article/details/106426546

这是需要勾选Gradle问题:
https://blog.****.net/qq_39108767/article/details/106764268
https://forum.unity.com/threads/errors-when-building-as-android-apk.744212/#post-5226149