离线构建错误:您尚未接受以下SDK组件的许可协议:[Android SDK Platform 24]

时间:2016-11-03 01:18:54

标签: android cordova ionic-framework sdk

我正在尝试运行命令ionic build android --release来构建apk但我收到此错误

  

总时间:1.767秒错误:cmd:命令失败,退出代码为1   错误输出:FAILURE:构建因异常而失败。

     
      
  • 出了什么问题:配置根项目'android'时出现问题。

         
        

    您尚未接受以下SDK组件的许可协议:[Android SDK Platform 24]。在构建项目之前,     您需要接受许可协议并完成     使用Android Studio SDK安装缺少的组件     经理。或者,了解如何转移许可证     从一个工作站到另一个工作站的协议,转到     http://d.android.com/r/studio-ui/export-licenses.html

      
  •   
  • 尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获取更多日志输出。拿起_JAVA_OPTIONS:-Xmx512M

  •   

18 个答案:

答案 0 :(得分:47)

安装许可证:

  

mkdir"%ANDROID_HOME%\ licenses"

     

echo | set / p =" 8933bad161af4178b1185d1a37fbf41ea5269c55" >   "%ANDROID_HOME%\许可证\ Android的SDK许可"

答案 1 :(得分:18)

安装平台24(Android 7)解决了这个问题

答案 2 :(得分:17)

在命令提示符下,转到ANDROID_HOME \ tools \ bin

然后运行命令 sdkmanager --licenses

在提示时接受所需的许可证。

答案 3 :(得分:12)

我通过在没有Android SDK管理器的情况下安装Android SDK Platform 24解决了这个问题。

android update sdk --no-ui --filter build-tools-24.0.2,android-24,extra-android-m2repository

* Cordova CLI 6.4.0 / Windows 10

答案 4 :(得分:3)

  1. 转到C:\Users\<UserName>\AppData\Local\Android\Sdk\tools\bin
  2. 运行命令./sdkmanager.bat --licenses
  3. 接受许可
  4. 为我工作

答案 5 :(得分:2)

在设置ANDROID_HOME环境变量之后,peter wang的回答在我身上起了作用。 在我的情况下ANDROID_HOMEC:\Users\YourUserName\AppData\Local\Android\android-sdk

以下命令导致成功构建。

mkdir "%ANDROID_HOME%\licenses"
echo |set /p="8933bad161af4178b1185d1a37fbf41ea5269c55" > "%ANDROID_HOME%\licenses\android-sdk-license"

答案 6 :(得分:2)

我的软件:

Ubuntu 16.04.2 LTS
Gradle 3.5
java version "1.8.0_131"
$ANDROID_HOME = ~/AndroidSDK

工作解决方案:

yes | $ANDROID_HOME/tools/bin/sdkmanager "build-tools;25.0.2

当然你应该使用你的build-tools版本。

来源:

  

Automatically accept all SDK licences

答案 7 :(得分:1)

如果您在更新版本的Android SDK中遇到问题,请在config.xml中更改目标版本。

下一步,打开Android Studio>配置> SDK管理器

检查使用24 7.0所需的版本并进行检查。然后安装它,然后尝试再次构建。

答案 8 :(得分:1)

这在ubuntu下对我有用:

mkdir "$ANDROID_SDK/licenses" || true
echo -e "\n8933bad161af4178b1185d1a37fbf41ea5269c55" > "$ANDROID_SDK/licenses/android-sdk-license"
echo -e "\n84831b9409646a918e30573bab4c9c91346d8abd" > "$ANDROID_SDK/licenses/android-sdk-preview-license"

来源:Dori's answer to automatically-accept-all-sdk-licences

答案 9 :(得分:1)

每当Android Studio的软件包过期时,您都会遇到这样的问题,因为构建将在最新的稳定版本中进行。要解决此问题,请执行以下操作:

Android Studio&gt;偏好&gt;外观&amp;行为&gt;系统设置&gt; Android SDK 勾选最新的Android版本(或您需要的内容),单击“应用”。 此时,Android将要求您同意其许可证,并且将安装更新的版本。

现在你可以建立/运行Ionic / Cordova / PhoneGap。

答案 10 :(得分:0)

请访问https://discuss.circleci.com/t/licences-for-android-build-tools-not-accepted/17285/18

依赖性:

覆盖:

echo y | android update sdk --no-ui --all --filter build-tools-26.0.2,android-26

代替我的原始照片:

依赖性:

覆盖:

echo y | android update sdk --no-ui --all --filter build-tools-26.0.2

答案 11 :(得分:0)

我有同样的情况,所有上述建议都无效,因为我的安装和组件文件夹名称不同或文件位于不同的位置。

我在C中安装了旧的Android Studio,在E中安装了新版本。我已经卸载旧版本,但Android工作室没有清除所有文件并重置我的环境。变量。所以我只是按照

进行操作

1)搜索此文件:android-sdk-license

2)查看上面的文件是否在其他文件夹(如附加组件,构建工具,模拟器等)所包含的文件夹中。

3)然后确保ANDROID_HOME指向Licenses的这个父文件夹。

答案 12 :(得分:0)

我通过检查文件android-sdk-licenses解决了这个问题  在我的路径G:\ Android \ sdk \ licenses中的已安装的ANdroid路径中 与此目录中存在相同的文件 C:\ Users \ Ashutosh \ AppData \ Local \ Android \ Sdk \ licenses复制所有许可证,如果有多个:)

答案 13 :(得分:0)

您必须在

之后关注帮助文本
  

您尚未接受以下SDK组件的许可协议:   在这种情况下,您必须安装[Android SDK Platform 24]。事实上,括号[]中的帮助文本会以正确的方式驱动你。

答案 14 :(得分:0)

我用这个解决了我的问题。

mkdir "%ANDROID_HOME%\licenses"

echo |set /p="8933bad161af4178b1185d1a37fbf41ea5269c55" > "%ANDROID_HOME%\licenses\android-sdk-license"

答案 15 :(得分:0)

安装sdk 25并接受android studio的许可。这解决了我的问题。

答案 16 :(得分:0)

我有同样的问题,我使用@ peters.Wang回答生成许可证并将许可证文件夹放在sdk文件夹中。

感谢@ peters.Wang

enter image description here

答案 17 :(得分:-2)

安装最新的Android Studio并接受许可协议。

https://developer.android.com/studio/index.html