无法接受Android SDK Platform 24的许可协议

baut 发布于 2019-09-16 android 最后更新 2019-09-16 13:39 99 浏览

尝试在Cordova项目上安装Android平台时出现以下错误。我一直在遵循这个指南:https://cordova.apache.org/docs/en/latest/guide/cli/ 执行以下命令时发生错误:$ cordova platform add android --save

A problem occurred configuring root project 'android'. You have not accepted the license agreements of the following SDK components: [Android SDK Platform 24].
我搜索了各种方式来接受Android SDK平台24的许可协议,但没有真正的运气。 提前谢谢你。
已邀请:

womnis

赞同来自:

这将更新您的Android SDK并同时接受许可证(例如Android 25): android update sdk --no-ui --filter build-tools-25.0.0,android-25,extra-android-m2repository

dipsam

赞同来自:

在我的情况下(用于构建Android CI容器的Dockerfile脚本 - https://github.com/menny/docker_android),我必须执行以下步骤:

mkdir ~/.android && touch ~/.android/repositories.cfg
yes | sdkmanager --licenses
sdkmanager "build-tools;26.0.0"
sdkmanager "platform-tools" "tools"
sdkmanager "platforms;android-26" "platforms;android-25" "platforms;android-24"
.....
sdkmanager --update
yes | sdkmanager --licenses
两个说明:
  1. 必须创建一个空的repositories.cfg文件,否则sdkmanager将会死亡。
  2. 由于没有进度指示,因此必须在不同的呼叫中执行包的提取/安装。

siure

赞同来自:

对我来说问题是我的ANDROID_HOME变量被设置为我忘记存在的另一个安装。如果这是您的问题,请删除旧安装。

lquia

赞同来自:

我有问题,你不需要复制或创建任何文件夹,只需要小心你的SDK路径,它必须与环境变量(ANDROID_HOME)相同,对我来说不一样,不知道为什么。 sdk location

xporro

赞同来自:

我通过SDK管理器安装了android sdk build-tools 24(它的当前版本为24.0.3)。 打开SDK管理器的路径显示在附加的img文件中。 这解决了我的问题 SDK Manager

lquia

赞同来自:

这是因为在撰写本文时,默认情况下,Ionic CLI工具默认为

<preference name="android-targetSdkVersion" value="LATEST_SDK_VERSION"/> 
这就是为什么它抱怨你不接受许可协议的原因,但实际上你并没有为该API Level安装SDK包,而是单独接受许可。 所以你需要做的是
  1. 更改目标SDK版本
  2. 从SDK Manager安装最新的SDK API级别
更改SDK版本 您可以手动执行此操作,甚至可以通过运行进行验证
ionic cordova platform add android 
该文件可在your-awesome-app/config.xml找到 打开它并添加此行,因为它隐藏如上所述
<preference name="android-targetSdkVersion" value="24"/>
如果您不确定要定位哪个API级别号打开SDK Manager并查看计算机上可用的API级别(数字) 安装最新的SDK包 您可以添加CLI显示的当前SDK包,在您的情况下,它是24 以管理员身份运行SDK MANAGER Run SDK Manager as Admin 安装您要定位的SDK API包 Thats where the SDK API level are written 我怎么知道这个? 我今天早上做到了,这就是我解决它的方法,现在正在播放Sticky Bubble on Android以放松一下。 快乐部署!

oalias

赞同来自:

如果系统没有从正确的路径中获取ANDROID_HOME环境变量,则会出现此错误。确保已安装Android SDK并将ANDROID_HOME变量正确设置到适当的路径,如下图所示: ANDROID_HOME_PATH 如果未定义ANDROID_HOME变量,系统将尝试从默认路径中选择路径(这可能不是定义Android SDK的路径,从而导致此问题)。

mest

赞同来自:

我通过安装Android Studio获得了Android SDK,但也遇到了这个错误。 the user guide有一个简单的解决方案。

  1. 在安装了Android Studio的计算机上,单击Tools > Android > SDK Manager。在窗口顶部,请注意Android SDK位置。
  2. 导航到该目录并找到其中的licenses/目录。 (如果您没有看到licenses/目录,请返回Android Studio并更新您的SDK工具,确保接受许可协议。当您返回Android SDK主目录时,您现在应该看到该目录。)
  3. 复制整个licenses/目录并将其粘贴到您希望构建项目的计算机上的Android SDK home directory中。

uqui

赞同来自:

它与您安装的版本的平均未命中匹配Android SDK版本的cordova。有关示例cordova支持Android SDK 24,但您没有Android sdk 24.它可能是相反的。

lqui

赞同来自:

在我的情况下,我不使用Android工作室(我使用的是eclipse)。我做了以下步骤: 只需运行命令即可解决

android-sdks/tools/bin$ ./sdkmanager --update
其中创建了一个licenses目录,并在其中添加了一个名为android-sdk-license的文件。 然后你可以运行(除非你做了上面的步骤,否则licenses选项不可用)
android-sdks/tools/bin$ ./sdkmanager --licenses
并接受许可(但在我的情况下,我不需要这样做)

eomnis

赞同来自:

在Android sdk管理器中安装Android 7 - Platform 24 Full 只是它

fdolor

赞同来自:

对我来说,我使用“ionic build android”命令构建离子,我遇到了同样的问题! 解决方案很简单

  • 安装所需的sdk
  • 必须在CMD中运行相同的命令 作为管理员

dodit

赞同来自:

解决此问题的最简单方法是使用以下命令接受许可证: Windows操作系统: C:\Users{your-username}\AppData\Local\Android\sdk\tools\bin\sdkmanager --licenses 您将收到免责声明。为了继续您的开发工作,您需要对所有免责声明回答'y'。

zfugit

赞同来自:

我在使用Cordova 6.4.0和Android Studio 2.2.3的Mac OS X 10.12.1上遇到了这个问题。 当我安装Android Studio时,它安装了Platform 25,但没有安装24个。要安装24:

  • 打开Android Studio。
  • 打开Android Studio Menu > Preferences
  • Appearance & Behavior > System Settings > Android SDK
  • 勾选Android 7.0 (Nougat) | 24
  • 的复选框
  • 点击确定并按照说明操作。

caut

赞同来自:

转到Android \ sdk \ tools \ bin 然后运行 sdkmanager --licenses 它会要求您接受协议,您只需输入"y"并输入即可。

bquos

赞同来自:

我不确定cordova是如何工作的,但是一旦许可被接受就会创建一个文件。您可以手动创建该文件。它在this question中描述,但这是创建所需许可证文件的命令。 Linux的:

mkdir "$ANDROID_HOME/licenses"
echo -e "\n8933bad161af4178b1185d1a37fbf41ea5269c55" > "$ANDROID_HOME/licenses/android-sdk-license"
视窗:
mkdir "%ANDROID_HOME%\licenses"
echo |set /p="8933bad161af4178b1185d1a37fbf41ea5269c55" > "%ANDROID_HOME%\licenses\android-sdk-license"

punde

赞同来自:

更改目标构建可能与引用的here相同 如果要指定SDK版本,可以通过将以下行添加到ionic / cordova项目根目录中的config.xml中来实现

<preference name="android-targetSdkVersion" value="23"/>

adolor

赞同来自:

我刚刚遇到这个问题,在Windows上为我解决了什么,你使用的是命令行,而你最近安装了android sdk,你必须在安装android sdk后重启命令提示符或Power Shell。

uanimi

赞同来自:

我有完全相同的问题。然后我安装了“Android 7.0(API 24)> SDK平台”,它工作正常。 enter image description here

xporro

赞同来自:

Mike的答案有效。但需要将生成的许可证放在C:\ Users \ user \ AppData \ Local \ Android \ sdk \ licenses下。

hiure

赞同来自:

It needs a latest stable sdk-platform installed. I installed SDK-Platform from API 25. It fixed my problem.See Screenshot below

hid

赞同来自:

安装以下组件: enter image description here

qut

赞同来自:

你也可以执行

$ANDROID_HOME/tools/bin/sdkmanager --licenses

hrerum

赞同来自:

我不得不更新android sdk

android update sdk --no-ui
在某些时候,它会要求您签署许可协议,请按y。之后,您需要移除角度平台。

tvel

赞同来自:

去 C:\用户{用户} \应用程序数据\本地\ Android的\ SDK \工具\ BIN 然后运行 sdkmanager - 许可 它会要求你接受任何剩余的协议。你只需输入“y”然后输入即可。 将解决问题

eos_et

赞同来自:

你需要手动重新安装sdk 这有助于我:https://forum.ionicframework.com/t/you-have-not-accepted-the-license-agreements-of-the-following-sdk-component/69570/6 “android update sdk --no-ui --filter build-tools-24.0.0,android-24,extra-android-m2repository”

uqui

赞同来自:

希望这对那里的人有用 我面临同样的问题!我有2个sdks,名为sdk和sdk1。它默认链接到sdk但工作的是sdk1。 所以我去了环境变性并添加了 ANDROID_HOME和sdk1的路径,即在我的情况下是C:\ Users \ tripa_000 \ AppData \ Local \ Android \ sdk1,它解决了我的问题!