统一构建错误。 [无法安装以下 Android 个 SDK 包,因为某些许可证尚未被接受。 ]

Unity build error. [Failed to install the following Android SDK packages as some licences have not been accepted. ]

在终端上执行下面的一些命令以使用 android 模拟器测试我的统一应用程序之后。由于下图中的相同错误,我的 Unity 项目开始一遍又一遍地构建失败。如果有熟悉这个问题的朋友,可以给我一些解决的建议吗?

我在终端执行的命令

1、导出路径=$路径:/Users/userName/Library/Android/sdk/platform-tools

2、echo PATH=$PATH:/Users/userName/Library/Android/sdk

3, cd /Users/userName/Desktop/AppName.apk

4、adb安装AppName.apk

错误详情

enter image description here

enter image description here

对于将来可能会遇到同样错误的人,

问题是 /Users/username/Desktop/2019.2.9f1/PlaybackEngines/AndroidPlayer/SDK.

中没有许可证文件

所以我把/Users/username/Library/Android/sdk的文件复制过来,粘贴到上面的unity目录下。

错误已成功解决。

我希望没有人再因为这个错误而浪费他们的时间。

如果其他人碰巧 运行 遇到这个问题,并且您使用的是 Unity Hub,运行 从终端执行以下命令。

$ find /Applications/Unity/Hub/Editor -name "sdkmanager" -exec {} --licenses \;

这将找到所有已安装的 SDK 并检查是否已接受所有许可证。如果不是,系统会提示您接受。

您可以再次 运行 命令再次检查一切是否为 100%。

admin 和 运行

打开命令提示符

{path_to_sdk_folder}/tools/bin/sdkmanager.bat --licenses

并全部接受。

现在 Unity 管理平台,继续碰到这个问题,Android 如果您将 Android Studio 指向 Unity 正在使用的平台位置,Studio 就会抱怨它。

在 Windows 上,快速而肮脏的修复是 运行 Android Studio 作为管理员,然后它会执行所需的操作,然后您可以返回 运行 ning Android 工作室正常.

不确定长期效果如何,但它似乎对我有用。特别是因为我没有使用 Android Studio 抱怨的平台。

但是,很明显,这不是一个很好的解决方案,因为 Android Studio 中的 SDK 管理器看不到 Unity 声称已安装的平台。

转到src -> flutter -> flutter -> flutter_console 并输入 flutter doctor --android-licenses。单击 y

在 Windows 机器上,您需要找到适用于当前 Unity 版本的 sdkmanager.bat。对于您来说,这个位置可能类似于

C:\Program Files\Unity\<version>\Editor\Data\PlaybackEngines\AndroidPlayer\SDK\tools\bin\sdkmanager.bat

C:\Program Files\Unity\Hub\Editor\<version>\Editor\Data\PlaybackEngines\AndroidPlayer\SDK\tools\bin\sdkmanager.bat

找到它后,您可以使用 Powershell 中的 --licenses 标志或您选择的 shell 来执行它,如下所示。 确保您 运行 您的 shell 作为管理员。

.\sdkmanager.bat --licenses

然后系统会提示您查看所有尚未接受的许可。回答 y 将解决问题。