Как принять лицензии android sdk

Вы не приняли лицензионные соглашения следующих компонентов SDK

Я скачал последнюю версию Android SDK tools 24.4.1. Я использовал командную строку для установки SDK. Я набрал y когда спросили

Принимаете ли вы лицензию ‘android-sdk-license-c81a61d9’ [y/n]: y после успешной установки.

Но при использовании Gradle 3.1 для сборки появляется следующее

Вы не приняли лицензионные соглашения следующих компонентов SDK: [Android SDK Platform 23, Android SDK Build-Tools 23.0.1]. Перед созданием проекта необходимо принять лицензионные соглашения и завершить установку отсутствующих компонентов с помощью Android Studio SDK Manager. Кроме того, чтобы узнать, как переносить лицензионные соглашения с одной рабочей станции на другую, перейдите по адресу http://d.android.com/r/studio-ui/export-licenses.html.

/.android и /opt/android-sdk где находятся инструменты Android. Ни один из них не содержит папку с именем licenses

Способ принятия лицензионных соглашений из командной строки изменился. Вы можете использовать менеджер SDK, который находится по адресу: $ANDROID_HOME/tools/bin

например на Linux:

Запустите sdkmanager следующим образом:

например, в Windows:

Запустите sdkmanager следующим образом:

И принять лицензии, которые вы еще не приняли (но должны).

Для получения дополнительной информации см. Документацию по Android Studio, хотя в текущей документации отсутствует какое-либо описание параметра —licenses .

Предупреждение

У вас может быть два Android SDK на вашем компьютере. Обязательно проверьте оба

/Library/Android/sdk и /usr/local/share/android-sdk ! Если вы не уверены, полностью удалите Android Studio с компьютера и начните с чистого листа.

Вы можете установить и принять лицензию SDK и инструментов двумя способами:

1. Откройте графический интерфейс Android SDK Manager через командную строку

Откройте диспетчер Android SDK через командную строку, используя:

Выберите и установите необходимые инструменты. (ваше местоположение может быть другим)

2. Установите и подтвердите лицензию андроида через командную строку:

Обновите пакеты через командную строку, вам будут представлены условия, которые вам необходимо принять.

– установить или обновить до последней версии

В момент установки вы установите последний platform-tools .

– установить определенную версию ( 25.0.1 , 24.0.1 , 23.0.1 )

Вы также можете установить определенную версию следующим образом:

Перейдите к $ANDROID_HOME/tools/bin
и запустите cmd

Принять Все лицензии, перечисленные там.

После этого просто перейдите в папку лицензий в sdk и проверьте, что у нее эти пять файлов:

Повторите попытку и снова создайте, все еще jenkins, дающие “лицензии не принимаются”, тогда вы должны предоставить полное разрешение на ваш каталог “sdk” и все его родительские каталоги. Вот команда:

Если у вас есть sdk в каталоге/opt/.

Для пользователей Windows без использования Andoid Studio:

Перейдите в папку вашего файла sdkmanager.bat . По умолчанию он находится в Android\sdk\tools\bin внутри папки %LOCALAPPDATA% .

Откройте окно терминала, набрав cmd в строке заголовка

Принять все лицензии с помощью ‘y’

Обновление для macOS Sierra 10.12.6 – Android Studio для Mac 2.3.3

Найдите файл sdkmanager, как правило, под:

Предупреждение: File /Users/mtro.josevaler**strong text**io/.android/repositories.cfg не может быть загружено.
6 из 6 лицензий на пакет SDK не принимаются.
Просмотрите лицензии, которые не были приняты (y/N)? У

Чтобы проверить проблему, просто повторить операцию, связанную с проблемой лицензии.

Я решил проблему, открыв Android SDK Manager и установив инструменты сборки SDK для версии, на которую он жалуется (API 24).

Я также обновлялся с использованием командной строки ранее, и я подозреваю, что Android SDK Manager имеет более полный способ разрешения зависимостей, включая лицензию.

Я разрешаю проблему, используя команду:

  • Перейти к: C:\Users [ИМЯ ПК]\AppData\Local\Android\sdk\tools\bin\(Если папка недоступна, сначала загрузите SDK Android, или вы можете установить его из процесса установки студии Android.)
  • Shift + Левый клик и нажмите W, затем Enter, чтобы открыть CMD на пути к папке
  • Введите cmd: sdkmanager –licenses
  • После нажатия клавиши ввода, вы должны принять все лицензии, нажав y
  • Перейти к: C:\Users [ИМЯ ПК]\AppData\Local\Android\sdk\
  • Проверьте папку с именем license

ПРОВЕРЕН КОРДОВА ИСПОЛЬЗОВАТЬ КОМАНДУ:

Я столкнулся с этой ошибкой, когда я запустил кордову build android

Я решил эту проблему, уволив. /sdkmanager -licenses и приняв все лицензии.

  • У вас есть sdkmanager.bat в папке android sdk в пути: android/sdk/tools/bin
  • Чтобы запустить это, откройте командную строку в файле android/sdk/tools/bin
  • type./sdkmanager –лицензии и введите
  • Нажмите y, чтобы просмотреть все лицензии, а затем нажмите y, чтобы принять все лицензии.

Если вы хотите использовать IDE для принятия лицензии, мне также легко было открыть Android Studio и создать новый базовый проект для запуска лицензионных соглашений. После того, как я создал проект, был представлен следующий диалог лицензирования, который я должен был согласиться:

Я полностью документировал информацию в следующем сообщении: Принятие лицензии Android SDK через Android Studio

У меня была аналогичная проблема, но. /sdkmanager -licenses не работал. Я следую этой теме, и комментарий “obladors” дал мне решение:
https://github.com/oblador/react-native-vector-icons/issues/527

Что в конечном итоге решило мою проблему:
Запуск ./sdkmanager «build-tools;23.0.1»

Измените 23.0.1 на свою версию

Возможно, я опаздываю, но это помогло мне принять лицензии SDK для OSX,

Читайте также:  Крипто про для андроид установка

Если у вас установлены инструменты Android SDK, запустите следующую команду

Принять все лицензии, нажав y

Voila! Вы приняли лицензии на SDK и готовы пойти.

Вы можете принять лицензионное соглашение, запустив Android Studio, а затем:

Справкa > Проверить наличие обновлений…

Когда вы устанавливаете обновления, он попросит вас принять лицензионное соглашение. Примите лицензионное соглашение и установите обновления, и все будет установлено.

Если вы создаете приложение с помощью Ionic Framework, просто напишите снова команду для его создания.

Если у вас есть эта проблема для приложения React Native, в дополнение к вышеупомянутым шагам, убедитесь, что у вас есть файл local.properties в каталоге android (AppName/android) вашего приложения, который указывает на ваш ‘sdk’ каталог:

Я решил проблему с помощью следующих шагов:

  • обновить android sdk с помощью команды “tools/android update sdk –no-ui”
  • попал в папку android sdk на машинах jenkins, создайте папку “license”
  • созданный файл с именем “android-sdk-license” и вставьте лицензию с dev machine

Источник

Как принять лицензии Android Studio SDK?

Итак, перейдя непосредственно к проблеме, я установил последнюю версию Android Studio (3.6.3). Но всякий раз, когда я пытаюсь построить проект и запустить его на эмуляторе, он выдает сообщение об ошибке «Я не принял лицензии SDK» . Это не единственная ошибка, которая появляется. Я приложил скриншот, который вы можете увидеть, чтобы иметь представление о том, что на самом деле является ошибкой (Ошибка Gradle ) .

Я попытался использовать метод cmd, который принимает все лицензии, но он не работает, и cmd выдает ошибку «Системе не удается найти указанный путь» (Ошибка Cmd). Возможно, что я получаю неправильный доступ, я полностью неграмотный. После проверки в папке SDK нет \ tools \ bin (мой путь к SDK). Также я попытался переустановить.

Пожалуйста, помогите мне. Вся моя работа застряла из-за этой ошибки. Любая помощь приветствуется.

2 ответа

В консоли ошибок обычно есть ссылка на отсутствующие инструменты.

Если нет, зайдите в меню Сервис / SDK

  • Затем на вкладку SDK Tools
  • Проверьте инструменты сборки SDK

И тогда вам будет предложено принять лицензии. Будьте осторожны, потому что это радио-кнопка и она немного скрыта.

Если это не удается после выполнения этого наблюдения в консоли, если есть ссылка для установки недостающих инструментов.

Вопрос решен. Как я это решил?

Это было довольно легко, хотя я только что установил еще три (3) SDK-платформы для i-e Android 9.0, Android 8.1 и Android 8.0. инструменты \ sdkmanager \ sdk-platform в IDE Android Studio

Я не знаю, почему это исправило это, но это сделало.

Источник

Автоматически принимать все лицензии SDK

Начиная с gradle android плагинов 2.2-alpha4 :

Gradle попытается загрузить отсутствующие пакеты SDK, которые проект зависит от

Что удивительно круто и было известно как проект JakeWharton .

Но, чтобы загрузить библиотеку SDK, вам нужно: принять лицензионные соглашения или gradle говорит вам:

Вы не приняли лицензионные соглашения следующих компонентов SDK: [Android SDK Build-Tools 24, Android SDK Platform 24]. Прежде чем строить свой проект, вы должны принять лицензию договоритесь и завершите установку недостающих компонентов с помощью менеджера Android Studio SDK. Кроме того, чтобы узнать, как перенести лицензионные соглашения с одной рабочей станции на другую, перейдите по ссылке http://d.android.com/r/ studio-ui/экспорт-licenses.html

И это проблема, потому что я хотел бы установить все зависимости sdk, делая gradle build .

Я ищу решение для автоматического принятия всех лицензий. Может быть, сценарий gradle ? У тебя есть какие-нибудь идеи ?

Решение состояло в том, чтобы выполнить:

И установите его вручную, но это новая функция gradle, предназначенная для этого.

Лучшим решением является использование sdkmananger:

25 ответов

Я использую gitlab-ci для создания своего проекта android. После долгих поисков я нашел, как принимать лицензии sdk. Но я получаю лицензию не принятую ошибку в библиотеке ConstraintLayout . Вот мой .gitlab-ci.yml : image: openjdk:8-jdk variables: ANDROID_TARGET_SDK: 25 ANDROID_BUILD_TOOLS: 25.0.0.

Я загрузил новый проект в Jenkins, который имеет compileSdkVersion как 26 и targetSdkVersion 25. Я принял все лицензии на sdk с помощью приведенной ниже команды: ./sdkmanager —licenses Все работает хорошо на моем PC, но когда я строю на Jenkins, он выдает ошибку ниже: Starting a Gradle Daemon.

AndroidSDK наконец-то может принять лицензии.

как указано в комментариях @MoOx, на macOS, вы можете сделать

как указано в комментариях @pho, @mikebridge и @ Noitidart на Windows, вы можете сделать

cmd.exe /C»%ANDROID_HOME%\tools\bin\sdkmanager.bat —licenses»

обязательно установите java раньше

Я столкнулся с этим с предварительным просмотром alpha5 .

Джейк Уортон указал мне, что в настоящее время вы можете использовать

чтобы воссоздать текущую папку $ANDROID_HOME/license на вашем компьютере. Это будет иметь тот же результат, что и процесс, описанный в ссылке ошибки msg ( http://tools.android.com/tech-docs/new-build-system/license ).

Хэши-это sha1s текста лицензии, который, как я полагаю, будет периодически обновляться, так что этот код будет работать только так долго 🙂

И установите его вручную, но это новая функция gradle, предназначенная для этого.

Сначала я был удивлен, что это не сработало из коробки, даже когда я принял лицензии на именованные компоненты через инструмент android , но мне указали, что это менеджер SDK внутри AS, который создает папку /licenses .

Я предполагаю, что официальные инструменты не захотят пропустить этот шаг по юридическим причинам.

Перечитывая примечания к выпуску он утверждает

SDK автоматическая загрузка: Gradle попытается загрузить отсутствующие пакеты SDK, от которых зависит проект.

Это не значит, что он будет работать, если вы еще не установили инструменты android и уже приняли последнюю лицензию(ы).

Читайте также:  Андроид приставка для телевизора xiaomi mi tv stick

EDIT: говоря это, он все еще не работает на моем тестовом ящике gubuntu, пока я не свяжу SDK с AS. CI работает нормально, хотя и не уверен, в чем разница.

Для новейших Android Studio (2.3) лучший способ обновить/принять все лицензии-это запустить:

возможно, Вам все же придется скопировать файлы лицензий в другие места в зависимости от вашей настройки.

Я пытаюсь преобразовать существующее приложение Angular в Android с помощью cordova и Android Studio. Я застрял на последнем шаге руководства по скрытности, где мне нужно принять platforms;android-28 Android SDK Platform 28 , чтобы продолжить. Я знаю, что уже есть ответы, где вы должны просто.

Я пытаюсь запустить свой проект Ionic 3 на своем устройстве Android с ionic cordova run android —device —stacktrace , но у меня есть следующий вывод: . Проверка лицензии для пакета Android SDK Platform 26 in C:\Android\android-sdk\licenses предупреждение: лицензия на пакет Android SDK.

Для новой утилиты sdkmanager :

yes | $ANDROID_HOME/tools/bin/sdkmanager «build-tools;24.0.3»

Есть небольшая задержка между yesses, так что команда может зависнуть с показом лицензии на некоторое время, но это не требует вмешательства человека.

Если вы используете Jenkins, вы можете использовать следующий сценарий bash в качестве первого шага в процессе сборки:

Это, конечно, установит ALL доступных обновления, но это сэкономит вам некоторое время, если вы можете сэкономить место на диске. Сон заключается в том, чтобы избежать сломанной строки чтения в программе установки, так как «yes» в этом случае не работает должным образом.

EDIT: Вам также нужно добавить плагин «Install Android project prerequisites» на этапе сборки, чтобы получить правильный $ANDROID_HOME, если вы используете встроенный менеджер SDK.

это решило мою ошибку

К сожалению, способ, как OP первоначально решил это не всегда работает. Если вы обнаружите в сообщении об ошибке, какова ваша текущая версия build-tools . Возможно, это более высокая версия build-tools, которая отсутствует. В этом случае вам нужно вручную запустить SDK Manager, добавить build-tools и принять лицензию.

Согласно инструкциям OP, это выглядит следующим образом.

Инструмент android теперь устарел в пользу нового sdkmanager . Пожалуйста, смотрите ответ Джо Лоусона и последующие сообщения с марта (2017) и далее.

Затем настройте свою команду следующим образом:

Запустив это снова, вы все равно не сделаете Gradle счастливым. Таким образом, ручное принятие является единственным решением, пока кто-то не придумает что-то лучше. (Пожалуйста!)

Мы обнаружили ту же проблему, построив проект на Jenkins. С buildToolsVersion ‘25.0.2’ мы должны принимать лицензии до начала строительства. В нашем случае нам нужно было бежать:

yes | sdkmanager —update that accepts licenses for the sdkmanager itself, and then

yes | sdkmanager —licenses that accepts new licenses not previously accepted

Remember: run these commans with the same user that jenkins does. In our Debian, the Jenkins user is just jenkins . In other words: doing it as root will create the accepted licenses as root , so Jenkins will not read them.

By the way, we found sdkmanager at /var/lib/jenkins/tools/android-sdk/tools/bin . If yours is not there, find it with find / -name «sdkmanager»

Инструмент android устарел, и вместо него следует использовать sdkmanager . sdkmanager также записывает файл лицензий, когда вы впервые принимаете его. Лицензия меняется в зависимости от того, какой SDK вы используете, так что даже если команда

работает на некоторых системах. Это не сработает на всех. Некоторые установки SDK ожидают, что лицензионный файл завершится без новой строки в файле, поэтому попробуйте добавить -n в команду echo.

Если это не работает, вы можете попробовать использовать кодировку base64 вместо этого.

Итак, чтобы узнать мою лицензию:

Он предложит вам принять лицензию. После принятия он скопирует его в $/licenses/android-sdk-license . Чтобы убедиться, что вы всегда получаете именно то, что написано, используйте base64 .

Затем вы можете использовать base64 -d , чтобы точно воссоздать файл.

Вы можете проверить, является ли записанный файл тем, что ожидается, запустив в нем sha1sum.

если вы запускаете yes | sdkmanager —licenses , то мы печатаем содержимое $ANDROID_HOME/licenses/android-sdk-license ,

Для GitLab CI, чтобы принять лицензии Android SDK Build-Tools 26.0.2, вам необходимо запустить это

Обратите внимание, что для тех, кто подходит к этому вопросу в настоящее время, build-tools-24.0.2 (я думаю) теперь считается устаревшим, так что вы получите:

при выполнении различных команд, которые были предложены для их установки.

Решение состоит в том, чтобы добавить —all :

Кроме того, если вы находитесь на 32-битном linux , все , что после build tools 23.0.1, является только 64-битным, поэтому не будет работать. 32-битные пользователи застряли на 23.0.1, единственный способ получить более поздние инструменты сборки-это переключиться на 64-битные.

Если вы используете tools/bin/sdkmanager —licenses , вам все равно нужно иметь человеческое взаимодействие. У меня есть проблема с использованием моего gitlab CI. Это мое решение:

echo y скажет «Да», если возникнут какие-либо вопросы, но вам нужно сделать одну строку на каждый пакет установки

Вы также можете просто выполнить:

И в Windows, выполнения:

Для сообщения об ошибке о номере 25 SDK api:

Читайте также:  Как отключить автоответчик мегафон андроид

android update sdk —no-ui —all —filter build-tools-25.0.1,android-25,extra-android-m2repository

Хорошо для тех, у кого есть эта проблема по состоянию на 2018 год. Вышеприведенные ответы вообще не сработали для меня. То, что DID работало, открывало Android SDK — нажатие кнопки DOWNLOAD на панели инструментов и выбор соответствующих пакетов. После того, как они закончат загрузку, он позволит вам принять лицензионное соглашение.

Я решил эту проблему, создав public git repo с принятыми файлами лицензий. Затем я использую wget для извлечения этих лицензий на любой машине, которая мне нужна, в каталог [sdk-dir]/licenses перед запуском ./gradlew для сборки моего проекта.

cd $ANDROID_HOME/tools/bin yes | ./sdkmanager —update

yes | $ANDROID_HOME/tools/bin/sdkmanager —update

Для тех, у кого возникли проблемы с командной строкой SDK, причина, по которой она не найдет принятые вами лицензии, заключается в том, что они были записаны в другое место, чем $ANDROID_HOME/licenses , где они должны быть.

Я обнаружил, что самым простым решением было принять лицензии вот так:

$ANDROID_HOME/bin/sdkmanager —licenses —sdk_root=$ANDROID_HOME

Примечание: это предполагает, что вы установили ANDROID_HOME , чтобы указать туда, где установлен ваш sdk.

для windows откройте cmd и войдите в каталог bin , выполнив команду:

затем запустите команду sdkmanager —licenses , она попросит принять лицензии.

Я наконец нашел решение на Windows, чтобы иметь реальную бесшумную и автоматическую установку:

На Windows следующий синтаксис не работает:

Похоже, что «y» неправильно отправлен в программу java, вызванную в пакете.

Обходной путь состоит в том, чтобы создать файл file-y.txt с несколькими «y», по одному строчному, и использовать

Это позволит создать необходимые файлы в каталоге лицензий. Проблема, вероятно, связана с использованием BufferedReader в Java

Примечание: это только для пользователей Mac

У меня была такая же проблема, но ни один из опубликованных ответов не помог , так как в Library/Android/sdk. не было папки tools (я использую Android 3.6.3 на Mac OS 10.14.4)

Следующие шаги помогли мне преодолеть проблему лицензирования ошибка:

  1. Открыть Android Studio
  2. Пресс- cmd + shift + A . Откроется всплывающее окно Actions .
  3. Найдите SDK Manager и нажмите enter, чтобы открыть его.
  4. Это открывает всплывающее окно для Android SDK . Выберите какую-нибудь другую версию Android, кроме уже установленной. (В моем случае Android 10.0 уже был установлен, поэтому я выбрал Android 9.0)
  5. Затем выберите кнопку Apply . Это установит соответствующий SDK.

  1. Теперь запустите свое приложение, оно должно работать без каких-либо исключений.

В Windows PowerShell вы можете сделать

Это гораздо более гибко и требует нулевого ручного вмешательства. Число 30 является произвольным, его должно быть достаточно, чтобы покрыть количество принятых лицензий, но при необходимости может быть увеличено

Скопируйте весь каталог licenses/ и вставьте его в домашний каталог Android SDK на машине, где вы хотите построить свои проекты.

это решило проблему для меня

У меня была такая же ошибка при использовании Cordova.

Проблема была связана с тем, что я установил Android Sdk через Android Studio и через apt с apt install android-sdk adb . И Cordova вызывал файлы, установленные через apt , а не файлы в моем домашнем каталоге.

Это сработало, как только я изменил путь на SDK в bash:

Затем я удалил системные файлы, которые больше не использовались: apt remove android-sdk adb .

Вот моя установка Docker.
Вы можете следовать из простой среды Linux.

Обратите внимание, что yes | и —licenses —sdk_root=$ пункты.
Похоже, что sdkmanager —update отменяет соглашения, поэтому yes | появляется дважды.

Похожие вопросы:

Может ли кто-нибудь сказать мне, какие Все лицензии ограничивают пользователя от удаления уведомления о лицензии в верхней части файла? Случай: Некоторые файлы JavaScript имеют такие разделы: “/*.

Есть ли способ автоматически принимать запросы на передачу файлов bluetooth от сопряженных устройств на android или автоматически устанавливать соединение с доступными сопряженными устройствами? Я.

Есть этот поток ( автоматически принимающий все лицензии SDK) и теперь устаревшая lib ( https://github.com/JakeWharton/sdk-manager-plugin ), которая решает проблему обновления системы (CI server).

Я использую gitlab-ci для создания своего проекта android. После долгих поисков я нашел, как принимать лицензии sdk. Но я получаю лицензию не принятую ошибку в библиотеке ConstraintLayout . Вот мой.

Я загрузил новый проект в Jenkins, который имеет compileSdkVersion как 26 и targetSdkVersion 25. Я принял все лицензии на sdk с помощью приведенной ниже команды: ./sdkmanager —licenses Все работает.

Я пытаюсь преобразовать существующее приложение Angular в Android с помощью cordova и Android Studio. Я застрял на последнем шаге руководства по скрытности, где мне нужно принять.

Я пытаюсь запустить свой проект Ionic 3 на своем устройстве Android с ionic cordova run android —device —stacktrace , но у меня есть следующий вывод: . Проверка лицензии для пакета Android SDK.

Итак, перейдя прямо к проблеме, я установил последнюю версию Android studio (3.6.3). Но всякий раз, когда я пытаюсь построить проект и запустить его на эмуляторе, он показывает мне ошибку I have not.

При запуске flutter doctor в cmd указывается, что android лицензий необходимо принять, выполнив команду flutter doctor —android-licenses . Запуск команды привел меня к ошибке, что a.

] Android toolchain — разработка для Android устройств ! Android SDK содержит только лицензии. Ваша первая сборка приложения Android займет больше времени, чем обычно, в то время как gradle.

Источник

Оцените статью