当您使用命令行下载最新的Android SDK工具版本以安装SDK时,只要尝试构建gradle,就会显示此错误:
Failed to install the following Android SDK packages as some licenses have not been accepted.
platforms;android-27 Android SDK Platform 27
build-tools;27.0.3 Android SDK Build-Tools 27.0.3
To build this project, accept the SDK license agreements and install the missing components using the Android Studio SDK Manager.
Alternatively, to transfer the license agreements from one workstation to another, see http://d.android.com/r/studio-ui/export-licenses.html
即使输入y作为问题的答案,您也可能会遇到此错误:是否接受许可证’android-sdk-license-c81a61d9′[y / n]:y。因此,我们需要查看为什么会弹出此错误?由于这个错误,我们无法编译我们的项目。因此,在本文中,我们将讨论如何使用五种不同的方法来解决此错误。但是在直接跳到解决方案之前,让我们先了解一下Android SDK。
什么是Android SDK套件?
SDK代表软件开发工具包或devkit的简称。 Android SDK包含模拟器,开发工具,带有源代码的示例项目以及构建Android应用程序所需的库。 Android SDK Manager管理着各种Android SDK版本,工具以及您可以选择和下载的各种其他有用的软件包,以使您的开发环境保持最新。
如何解决无法安装以下Android SDK软件包?
方法1
您需要在构建之前接受许可。根据Android SDK文档,您可以根据SDK管理器的位置使用以下命令:–似乎缺少–licenses选项上的文档。是的sdkmanager –许可证
视窗:
第1步:导航到%ANDROID_HOME%/ tools / bin。
%ANDROID_HOME%是SDK的路径。默认情况下,它位于:C:\ Users \ UserName \ AppData \ Local \ android \ Sdk。如果您已将SDK移到另一个目录位置,则可以按照以下步骤操作:
- 搜索编辑系统环境变量。
- 然后在环境变量中,您将看到ANDROID_HOME。
- 导航到cmd中的路径
第2步:
成功导航后,只需键入以下命令即可。
sdkmanager –licenses
GNU / Linux发行版:
yes | ~/Android/Sdk/tools/bin/sdkmanager –licenses
苹果系统:
export JAVA_HOME=/Applications/Android\ Studio.app/Contents/jre/jdk/Contents/Home
yes | ~/Library/Android/sdk/tools/bin/sdkmanager –licenses
Flutter用户:
只需在终端中输入flutter doctor –android-licenses,然后等待几秒钟即可。您将在屏幕上看到“接受所有SDK软件包许可证”。
方法2
步骤1:在Android Studio中,转到工具> SDK管理器。
步骤2 :如下图所示,转到“ SDK工具”选项卡。
步骤3 :选择Android SDK命令行工具(最新),然后按“应用”下载。
方法3
在Windows OS中,转到您的sdkmanager路径,然后执行
./sdkmanager.bat –licenses
您可以在以下位置找到您的sdkmanager:\ Android \ tools \ bin
如果您不知道SDK在哪里,请按照以下步骤操作:
- 开启Android Studio
- 导航到您的项目>文件>设置>外观和行为> Android SDK
方法4
第1步:转到$ ANDROID_HOME / tools / bin并启动cmd并键入以下命令:
./sdkmanager –licenses
接受此处列出的所有许可证。
第2步:
之后,只需转到SDK中的licenses文件夹。
检查它是否具有以下五个文件:
- android-sdk-license
- android-googletv-license
- android-sdk-preview-license
- google-gdk-license
- mips-android-sysimage-license
第三步:
进行重试并再次构建,但是, Jenkins给出“不接受许可证”,然后您必须对您的“ SDK”目录及其所有父目录授予完全许可。这是命令:
sudo chmod -R 777 /opt/
如果您在/ opt /目录中有sdk。
方法5
对于Windows用户:
步骤1 :转到sdkmanager.bat文件的位置。默认情况下,它位于%LOCALAPPDATA%文件夹内的Android \ sdk \ tools \ bin中。
步骤2 :在标题栏中输入cmd,打开一个终端窗口。然后转到上面的路径(下图中白线突出显示的Android \ sdk \ tools \ bin)并输入:
sdkmanager.bat –licenses
接受所有带有“ y”的许可证。