라이선스 계약에 동의 할 수 없습니다. Android SDK Platform 24


119

Cordova 프로젝트에 Android 플랫폼을 설치하려고 할 때 다음 오류가 발생합니다. 이 가이드를 따르고 있습니다. https://cordova.apache.org/docs/en/latest/guide/cli/

다음을 실행할 때 오류가 발생합니다. $ cordova platform add android --save

루트 프로젝트 'android'를 구성하는 중에 문제가 발생했습니다. 다음 SDK 구성 요소의 라이선스 계약에 동의하지 않았습니다. [Android SDK Platform 24].

Android SDK Platform 24의 라이센스 계약에 동의하는 방법을 모두 검색 했지만 실제 운이 없습니다.

미리 감사드립니다.


1
Windows의 경우 관리자 권한으로 SDK 관리자를 엽니 다. 모두 선택 취소, SDK 플랫폼 24 찾기, 확인, 설치. 여기에서 라이센스를 수락 할 수 있습니다.
닉 찬 압둘라

1
나에게 문제는 android-sdk여러 위치 ( brew, brew caskandroid-studio) 에서 설치 되었고 적절한 sdkmanager --licenses명령을 호출하지 않았습니다.
Pierre-Alexis de Solminihac

답변:


167

당신은 또한 실행할 수 있습니다

$ ANDROID_HOME / tools / bin / sdkmanager-라이센스

또는 Windows의 경우 실행

% ANDROID_HOME % / tools / bin / sdkmanager-라이센스

(@ puneet-kumar에 대한 Windows 명령 크레딧)


맥에서 SDK는 / 라이브러리 / 안드로이드 /에
타일러 종

Android 26 및 27에서도 잘 작동했습니다. 같은 문제가 있었지만 내 cordova가 gradle을 4.0에서 4.1로 업데이트했을 때 발생했습니다
Trevor

@PuneetKumar이 명령은 나를 위해 작동하지 않습니다. 나는 도구 / bin 폴더에 sdkmanager.bat 파일이
Heemanshu Bhalla

리눅스에서 - bash는 : / 도구 / 빈 / sdkmanager : 해당 파일이나 디렉토리
Niladri 얀 배너 지 - Uttarpara

비대화 형으로 실행하는 방법이 있습니까?
Peter Mounce

163

cordova가 어떻게 작동하는지 정확히 모르겠지만 라이센스가 수락되면 파일이 생성됩니다. 해당 파일을 수동으로 만들 수 있습니다. 이 질문 에 설명되어 있지만 필요한 라이센스 파일을 만드는 명령 은 다음과 같습니다 .

리눅스 :

mkdir "$ANDROID_HOME/licenses"
echo -e "\n8933bad161af4178b1185d1a37fbf41ea5269c55" > "$ANDROID_HOME/licenses/android-sdk-license"

Windows :

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

Mike, 어떤 디렉토리에서 명령을 실행합니까? 감사!
Daneye

$ ANDROID_SDK 환경 변수가 정의되어있는 한 작업 디렉토리는 중요하지 않습니다. $ ANDROID_HOME 일 수도 있습니다. 그 중 하나를 정의해야합니다. Android SDK의 위치입니다. 'printenv'를 입력하고 정의 된 변수를 검색하여 찾을 수 있습니다. 또는 'echo $ ANDROID_HOME'이 설정되었는지 확인합니다. 이것은 linux ... windows를 가정하고 $ ANDROID_SDK 대신 % ANDROID_SDK %로 환경 변수를 참조합니다.
Mike

5
오류와 함께 Cordova는 ANDROID_HOME의 경로를 표시합니다 (찾을 수없는 경우)! ANDROID_HOME이 설정되지 않은 경우 이와 같이 수동으로 설정 set ANDROID_HOME="C:\Users\*YOUR_USER_NAME*\AppData\Local\Android\sdk"하고 위의 명령을 실행할 수 있습니다.
Arno van Oordt

Android Studio를 사용하고 Android 버전 24를 설치하면이 문제가 해결되었습니다.
David Douglas

3
sdk 빌드 도구 24가 설치 되었음에도 불구하고. Mac 컴퓨터에서 내 문제가 해결되지 않았습니다. 위에서 설명한대로 라이선스 폴더와 파일 android-sdk-license를 수동으로 생성하여이 문제를 해결했습니다.
kushalvm

52

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
  • 확인을 클릭하고 지침을 따릅니다.

참고 : Android 버전을 SDK 플랫폼 누락으로 조정하는 것을 잊지 마십시오
Hugo H

2
이 작업을 수행했지만 "패키지 세부 정보 표시"를 클릭하고 Google API 및 소스도 설치하는 대신 SDK 만 선택하여 시간을 절약 할 수있었습니다.
Aaron

마지막 빌드 이후 몇 주가 지났습니다. 내 앱을 다시 빌드하면 위와 동일한 문제가 발생했지만이 솔루션을 수행 한 후에 해결됩니다.
Jur P

27

나는 똑같은 문제가 있었다. 그런 다음 "Android 7.0 (API 24)> SDK 플랫폼"을 설치했고 작동했습니다.

여기에 이미지 설명 입력


26

이 문제를 해결하는 가장 간단한 방법은 다음 명령을 사용하여 라이센스에 동의하는 것입니다.

Windows OS :

C:\Users\{your-username}\AppData\Local\Android\sdk\tools\bin\sdkmanager --licenses

면책 조항이 표시됩니다. 개발 노력을 계속하려면 모든 면책 조항에 'y'로 대답해야합니다.


25

이동 Android\sdk\tools\bin

위의 솔루션 중 어느 것도 나를 위해 일하지 않았고 마침내이 한 줄이 모든 Android 라이선스를 수락했습니다.

yes | sdkmanager --licenses && sdkmanager --update

1
경우 windows사용자가 오류를 얻고있다. sdkmanager --licenses && sdkmanager --update라이센스를 수동으로 시도 하고 수락하십시오.
Rahmat Ali

macOs 사용자의 경우 / Users / USERNAME / Library / Android / sdk / tools / binyes | ./sdkmanager --licenses. 및 ./sdkmanager-자세히 알아보기.
Pushpak Sharma

13

문제가 발생했습니다. 폴더를 복사하거나 생성 할 필요가 없습니다. SDK 경로에주의하세요. 환경 변수 (ANDROID_HOME)와 동일해야합니다.이 변수는 저에게 동일하지 않습니다. 이유는 모르겠습니다.

sdk 위치


13

제 경우에는 Android 스튜디오를 사용하지 않습니다 (이클립스를 사용하고 있습니다). 다음 단계를 수행했습니다. 명령을 실행하여 해결되었습니다.

android-sdks/tools/bin$ ./sdkmanager --update

licenses디렉토리를 만들고 그 android-sdk-license안에 라는 파일을 추가 했습니다.

그런 다음 실행할 수 있습니다 ( licenses위 단계를 수행하지 않으면 옵션을 사용할 수 없습니다)

android-sdks/tools/bin$ ./sdkmanager --licenses

라이센스를 수락합니다 (그러나 제 경우에는 그렇게 할 필요가 없었습니다)


9

SDK 관리자를 통해 android sdk build-tools 24 (현재 버전 24.0.3)를 설치했습니다. SDK 관리자를 여는 경로는 첨부 된 img 파일에 표시됩니다. 이것은 내 문제를 해결했습니다 SDK 관리자


1
첨부 된 이미지가 보이지 않지만 이것도 저에게 효과적이었습니다. Android Studio에 SDK Manager 용 버튼이 있습니다. 그러면 모든 Android 24 항목을 매우 쉽게 다운로드 할 수있는 독립 실행 형 SDK 관리자를 열 수 있습니다
Yonatan Kogan

Windows 7 os가 설치된 다른 PC에서 cordova 빌드를 사용하여 설치할 때 다시 동일한 문제에 직면했습니다. 이번에는 빌드 도구 24가 이미 설치되어 있습니다. 그래서 아래 Feyyaz가 언급 한 단계를 따랐습니다. 그것은 Android 7.0 (API 24)을 설치하고 작동했습니다. 그래서 6 버전 이상의 최신 Cordova에는 빌드 도구 24 이상 버전이있는 API 24가 필요하다고 생각합니다. 그러나 웹 사이트에서 이에 대한 문서를 찾지 못했습니다.
BruS

MacOS 및 Linux에서 SDK 관리자는 $ ANDROID_HOME / tools / android에 있습니다.
Tony Laidig

7

Android Studio를 설치하여 Android SDK가 있었고이 오류도 발생했습니다. 사용자 가이드 의 간단한 솔루션이 있습니다 .

  1. Android Studio가 설치된 컴퓨터에서을 클릭 Tools > Android > SDK Manager합니다. 창 상단에서 Android SDK 위치를 확인 합니다.

  2. 해당 디렉토리로 이동하여 그 licenses/안에 있는 디렉토리를 찾으 십시오.

    ( licenses/디렉토리 가 표시되지 않으면 Android Studio로 돌아가서 SDK 도구를 업데이트 하고 라이센스 계약에 동의했는지 확인하십시오. Android SDK 홈 디렉토리로 돌아 가면 이제 디렉토리가 표시됩니다.)

  3. 전체 licenses/디렉토리를 복사 Android SDK home directory하여 프로젝트를 빌드하려는 머신에 붙여 넣으십시오 .


7

이 오류는 시스템이 적절한 경로에서 ANDROID_HOME 환경 변수를 선택하지 않는 경우 발생할 수 있습니다. Android SDK를 설치하고 ANDROID_HOME 변수를 아래 이미지와 같이 적절한 경로로 올바르게 설정했는지 확인하십시오.

ANDROID_HOME_PATH

ANDROID_HOME 변수가 정의되지 않은 경우 시스템은 기본 경로에서 경로를 선택하려고합니다 (Android SDK가 정의 된 경로가 아니므로이 문제가 발생할 수 있음).



4

이 글을 쓰는 시점에서 기본적으로 Ionic CLI 도구는 다음으로 기본 설정되어 있기 때문입니다.

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

그렇기 때문에 라이센스 계약에 동의하지 않았다고 불평하지만 실제로 는 해당 APISDK 패키지 를 설치하지 않았습니다. 레벨에 않았지만 혼자 라이선스에 동의했습니다.

그래서 당신이해야 할 일은

  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 LEVEL 번호는 당신은 개방 대상으로하는 SDK 관리자 상기와 모양을 API 수준의 컴퓨터에서 사용할 수 (숫자)

최신 SDK 패키지 설치

CLI 가 표시 하는 현재 SDK 패키지 를 추가 할 수 있습니다. 귀하의 경우에는 24 개입니다.

실행 SDK MANAGER으로 관리

관리자로 SDK 관리자 실행

설치 SDK의 API 패키지 는 대상으로하는

SDK API 레벨이 작성되는 곳입니다.

내가 어떻게 알았지? 오늘 아침에 해냈고 그렇게 해결했고 이제 Android 에서 Sticky Bubble을 재생 하고 있습니다. 은 약간의 긴장을 풀기 위해 .

행복한 배포!


추가 targetSdkVersionconfig.xml파일 내 문제를 해결했습니다. 감사합니다 :)
B Faley

4

(안드로이드 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. 진행률 표시가 없기 때문에 다른 호출에서 패키지 가져 오기 / 설치를 수행해야했습니다.

4

C : \ Users {user} \ AppData \ Local \ Android \ sdk \ tools \ bin으로 이동합니다.

그런 다음 sdkmanager --licenses 를 실행 하십시오.

수락하기 위해 남은 계약을 수락하라는 메시지가 표시됩니다. "y"를 입력하고 입력하면됩니다.

문제를 해결할 것입니다


sdk를 자동 다운로드해야하는 빌드 서버가있는 경우에도 좋습니다.
Roel 2017 년

나는 그것을 시도하고 나는 얻는다 Couldn't load neither find main class com.android.sdklib.tool.SdkManagerCli. 아이디어?
PlayHardGoPro

이것은 도움이 될 수 있습니다 . stackoverflow.com/questions/40718487/… . / sdklib / tools 폴더 내에서 './SdkManagerCli'를 실행할 수 있습니다.
Lakshitha Ruwan

4

Mac을 사용하고 있으며 다음 명령을 사용하여 해결했습니다.

$ which sdkmanager
/usr/local/bin/sdkmanager
$ /usr/local/bin/sdkmanager --licenses
Warning: File /Users/user/.android/repositories.cfg could not be loaded.
6 of 6 SDK package licenses not accepted.
Review licenses that have not been accepted (y/N)? y

그런 다음 수락 할 6 개의 라이선스 목록이 있었고 그 후 해결되었습니다.


4

"공식적인"방법을 따를 수도 있습니다. Android SDK 설치의 tools / bin 폴더 내에서 " sdkmanager --licenses "를 실행 하고 모든 라이선스에 동의합니다. 끝난!

c:\android-sdk\tools\bin>sdkmanager --licenses

macOS 또는 Linux의 경우 동일한 명령입니다.


3

Android SDK를 업데이트해야했습니다.

android update sdk --no-ui

어떤 시점에서 라이센스 계약을 요청하면를 누릅니다 y. 그 후에 각진 플랫폼을 제거해야합니다.


3
  1. Android SDK 위치로 이동

C : \ Users \ 사용자 이름 \ AppData \ Local \ Android \ sdk \ tools \ bin

  1. 실행 명령 sdkmanager --licenses

  2. SDK 라이선스 동의


4
동일한 정보가 이미 여러 번 게시되었습니다. 기존 답변을 어떻게 개선합니까?
Stephen Kennedy

2

그것은 필요 최신 안정의 SDK 플랫폼 설치. API 25에서 SDK-Platform을 설치했습니다. 문제가 해결되었습니다.아래 스크린 샷 참조


2

이 문제는 "android studio"가 필요한 Android 빌드의 접근 방식이 변경된 시스템에 이미 이전 버전의 SDK Manager가있을 때 발생합니다. Visual Studio에서 "버전 25에 대한 라이선스를 수락하지 않았습니다."라는 오류 메시지와 함께 반복적으로 중단되는 문제에 직면했습니다. 이에 대한 해결책은 "Android Studio를 설치"한 다음 "환경 변수로 이동"하고 ANDROID_HOME을 "C : \ Users \\ AppData \ Local \ Android \ Sdk"로 설정하는 것입니다 (이 경로는 Android Studio, 메뉴에서 선택할 수 있습니다. >> 도구 >> SDK 관리자. 환경 변수의 "경로"에서도 동일하게 사용합니다. 이렇게하면 새 SDK 관리자가 Cordova 애플리케이션 용 Visual Studio 빌드에서 픽업을 위해 매핑됩니다.

두 번째로 2 일의 노력이 걸렸습니다.

다른 사람들이이 혼란 속에서 시간을 낭비하지 않기를 바랍니다.


1

참조 된대로 대상 빌드 변경이 작동 할 수 있음 여기에 있습니다.

SDK 버전을 지정하려면 ionic / cordova 프로젝트의 루트에있는 config.xml에 다음 행을 추가하면됩니다.

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


1

이것이
내가 같은 문제에 직면 한 누군가에게 효과가 있기를 바랍니다 ! sdk와 sdk1이라는 2 개의 sdk가 있습니다. 기본적으로 sdk에 연결되었지만 작동하는 것은 sdk1입니다. 그래서 나는 Environment Varaible로 가서 ANDROID_HOME 과 sdk1의 경로를 추가 했습니다. 즉, 제 경우에는 C : \ Users \ tripa_000 \ AppData \ Local \ Android \ sdk1이었고 내 문제가 해결되었습니다!


0

저에게는 "ionic build android"명령을 사용하여 Ionic을 구축하고 있었는데 동일한 문제가 발생했습니다! 해결책은 간단했습니다.

  • 필요한 SDK를 설치하려면
  • CMD에서 동일한 명령을 실행하려면 관리자 권한이 있어야합니다.

0

방금이 문제가 발생했으며 Windows에서 해결 방법은 명령 줄을 사용하고 있으며 최근에 android sdk를 설치 한 경우 android sdk를 설치 한 후 명령 프롬프트 또는 Power Shell을 다시 시작해야합니다.


0

Mike의 대답은 작동하지만 생성 된 라이선스를 C : \ Users \ user \ AppData \ Local \ Android \ sdk \ licenses에 넣어야합니다.


0

설치 한 버전과 일치하지 않는 Android SDK 버전의 Cordova. 예를 들어 cordova는 Android SDK 24를 지원하지만 Android SDK 24는 없습니다. 반대 일 수 있습니다.


0

그러면 Android SDK가 업데이트되고 동시에 라이선스에 동의합니다 (예 : Android 25).

안드로이드 업데이트 sdk --no-ui --filter build-tools-25.0.0, android-25, extra-android-m2repository


0

나에게 문제는 내 ANDROID_HOME 변수가 내가 잊은 다른 설치로 설정되고 있다는 것입니다. 이것이 문제인 경우 이전 설치를 삭제하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.