web-dev-qa-db-fra.com

Impossible d'accepter le contrat de licence Android SDK Platform 24

Le message d'erreur suivant s'affiche lorsque j'essaie d'installer une plate-forme Android sur un projet Cordova. Je suis ce guide: https://cordova.Apache.org/docs/fr/latest/guide/cli/

Une erreur se produit lors de l'exécution de ce qui suit: plate-forme $ cordova add Android --save

Un problème est survenu lors de la configuration du projet racine 'Android' . Vous n'avez pas accepté les contrats de licence des composants du SDK suivants: [Android SDK Platform 24].

J'ai cherché partout des moyens de accepter l'accord de licence d'Android SDK Platform 24, mais sans grande chance. 

Merci d'avance.

107
Daneye

Je ne sais pas exactement comment fonctionne Cordova, mais une fois les licences acceptées, un fichier est créé. Vous pouvez créer ce fichier manuellement. Il est décrit sur cette question , mais voici les commandes permettant de créer le fichier de licence requis.

Linux:

mkdir "$Android_HOME/licenses"
echo -e "\n8933bad161af4178b1185d1a37fbf41ea5269c55" > "$Android_HOME/licenses/Android-sdk-license"

Les fenêtres:

mkdir "%Android_HOME%\licenses"
echo |set /p="8933bad161af4178b1185d1a37fbf41ea5269c55" > "%Android_HOME%\licenses\Android-sdk-license"
161
Mike

Vous pouvez aussi simplement exécuter

$ Android_HOME/tools/bin/sdkmanager --licenses

Ou pour Windows exécuter

% Android_HOME%/tools/bin/sdkmanager --licenses

(crédit de la commande windows à @ puneet-kumar)

152
Hardik Patel

J'ai eu ce problème sur Mac OS X 10.12.1 avec Cordova 6.4.0 et Android Studio 2.2.3.

Quand j'ai installé Android Studio, il a installé Platform 25, mais pas 24. Pour installer 24:

  • Ouvrez Android Studio.
  • Ouvrez Android Studio Menu > Preferences.
  • Appearance & Behavior > System Settings > Android SDK
  • Cochez la case pour Android 7.0 (Nougat) | 24
  • Cliquez sur ok et suivez les instructions.
47
jxmallett

J'ai eu exactement le même problème. Ensuite, j'ai installé "Android 7.0 (API 24)> Plate-forme SDK" et cela a fonctionné.

 enter image description here

25
feyyaz

Accédez à Android\sdk\tools\bin

Il est tard mais toutes les solutions mentionnées ci-dessus n'ont pas fonctionné pour moi et cette ligne accepte finalement toutes les licences Android.

yes | sdkmanager --licenses && sdkmanager --update
20
vishwaraj

Le moyen le plus simple de résoudre ce problème consiste à accepter les licences à l'aide de la commande suivante:

Système d'exploitation Windows:

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

Vous serez présenté avec des avertissements. Afin de poursuivre vos efforts de développement, vous devez répondre «y» à tous les disclaimers. 

18
Full Array

Dans mon cas, je n'utilise pas le studio Android (j'utilise Eclipse). J'ai fait l'étape suivante: Résolu simplement en exécutant la commande

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

Ce qui a créé un répertoire licenses et ajouté un fichier appelé Android-sdk-license à l’intérieur.

Ensuite, vous pouvez exécuter (l'option licenses n'est pas disponible à moins que vous n'ayez effectué l'étape ci-dessus)

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

et accepter la licence (cependant, dans mon cas, je n'avais pas besoin de le faire)

12
BeeZone

J'ai eu le problème, vous n'avez pas besoin de copier ou de créer de dossier, faites attention à votre chemin SDK, il doit être identique à la variable d'environnement (Android_HOME), ce qui n'était pas le même pour moi, je ne sais pas pourquoi.

 sdk location

12
John

J'ai installé Android sdk build-tools 24 (version actuelle 24.0.3) via le gestionnaire de SDK . Le chemin pour ouvrir le gestionnaire de SDK est indiqué dans le fichier img attaché . Cela a résolu mon problème SDK Manager

9
Brijesh Singh

Cette erreur peut survenir si le système ne récupère pas la variable d'environnement Android_HOME à partir du chemin approprié. Assurez-vous que vous avez installé le SDK Android et que vous avez correctement défini la variable Android_HOME sur le chemin approprié, comme indiqué dans l'image ci-dessous:

Android_HOME_PATH

Si la variable Android_HOME n'est pas définie, le système tente de sélectionner le chemin d'accès à partir d'un chemin d'accès par défaut (il se peut que ce ne soit pas le chemin d'accès où le SDK Android est défini, ce qui entraîne ce problème).

7
Krishna_Anipindi

J'ai eu le SDK Android en installant Android Studio et j'ai eu cette erreur aussi. Il existe une solution simple de le guide de l'utilisateur .

  1. Sur une machine sur laquelle Android Studio est installé, cliquez sur Tools > Android > SDK Manager. En haut de la fenêtre, notez l'emplacement du SDK Android.

  2. Naviguez vers ce répertoire et localisez le répertoire licenses/ à l'intérieur. 

    (Si vous ne voyez pas de répertoire licenses/, retournez dans Android Studio et update vos outils SDK, en vous assurant d'accepter les contrats de licence. Lorsque vous revenez dans le répertoire de base du SDK Android, vous devriez maintenant le voir.)

  3. Copiez l'intégralité du répertoire licenses/ et collez-le dans le Android SDK home directory sur la machine sur laquelle vous souhaitez créer vos projets.

6
Java Xu

C’est parce que, par défaut, l’outil Ionic CLI est défini par défaut sur 

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

C’est la raison pour laquelle il se plaint de ne pas avoir accepté un contrat de licence mais, en réalité, vous n’avez pas installé les packages SDK pour ce niveau API, mais vous n’êtes pas seul à accepter la licence.

Donc, ce que vous devez faire est soit 

  1. Changer la version de votre SDK cible
  2. Installer le dernier niveau d'API SDK à partir de SDK Manager

Changer votre version de SDK

Vous pouvez le faire manuellement et même le vérifier en exécutant

ionic cordova platform add Android 

le fichier peut être trouvé à your-awesome-app/config.xml ouvrez-le et ajoutez cette ligne, car il est caché comme indiqué ci-dessus

<preference name="Android-targetSdkVersion" value="24"/>

Si vous n'êtes pas sûr du numéro API LEVEL que vous ciblez, ouvrez SDK Manager et examinez les niveaux API (Nombres) disponibles sur votre ordinateur.

Installation du dernier package SDK

Vous pouvez ajouter les packages SDK actuels affichés par CLI et qui, dans votre cas, sont 24

Exécutez SDK MANAGER en tant que Admin

 Run SDK Manager as Admin

Installez les packages d'API SDK que vous ciblez

 Thats where the SDK API level are written

Comment ai-je su cela? Je l'ai fait ce matin et c'est comme ça que je l'ai résolu et que je joue maintenant Sticky Bubble sur Android pour me détendre un peu.

Bon déploiement!

4
Fahad

Vous pouvez également suivre la méthode "officielle" . Exécutez le dossier " sdkmanager --licenses " du dossier tools/bin de l'installation du SDK Android et acceptez toutes les licences. Terminé!

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

Pour macOS ou Linux, c'est la même commande.

4
Georgy K

Installez le composant suivant:

 enter image description here

4
Sumant Singh

Dans mon cas (script Dockerfile pour créer un conteneur Android CI - https://github.com/menny/docker_Android ), je devais effectuer les étapes suivantes:

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

Deux notes:

  1. Il fallait créer un fichier repositories.cfg vide ou sdkmanager mourrait.
  2. Devait effectuer la récupération/installation de paquets dans différents appels, car il n'y avait aucune indication de progression.
4
Menny

J'utilise Mac et je l'ai résolu en utilisant cette commande:

$ 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

Ensuite, j'ai eu une liste de 6 licences à accepter et son résolu par la suite.

3
Neel

J'ai dû mettre à jour le sdk Android 

Android update sdk --no-ui

à un moment donné, il vous demandera un contrat de licence, appuyez sur y. Après cela, vous devez supprimer la plate-forme angulaire.

3
Reza

Allez à C:\Utilisateurs {utilisateur}\AppData\Local\Android\sdk\tools\bin

puis exécutez sdkmanager --licenses

il vous demandera d'accepter les accords restants à accepter. vous devrez simplement taper "y" et entrer. 

Va résoudre le problème

3
Lakshitha Ruwan
  1. Aller à l'emplacement du SDK Android

C:\Utilisateurs\nom d'utilisateur\AppData\Local\Android\sdk\tools\bin

  1. Exécuter la commande sdkmanager --licenses

  2. Accepter la licence pour le SDK

3
Inder malviya

Ce problème se pose lorsqu'une ancienne version de SDK Manager est déjà dans la machine à partir de laquelle l'approche de la construction d'Android est modifiée, ce qui nécessite le "studio Android". J'ai fait face à cela dans Visual Studio qui a été arrêté à plusieurs reprises avec le message d'erreur "Vous n'avez pas accepté la licence pour la version 25". La solution pour cela est "Installer Android Studio", puis "Aller aux variables d'environnement" et configurer Android_HOME sur "C:\Utilisateurs \\ AppData\Local\Android\Sdk" (Ce chemin peut être sélectionné à partir d'Android Studio, Menu >> Outils >> Gestionnaire de SDK Utilisez également le même mot de passe dans le "chemin" des variables d'environnement De cette manière, le nouveau gestionnaire de SDK est mappé pour le ramassage par Visual Studio Build pour Cordova Application. 

Cela a juste pris mon effort de 2 jours deuxième fois

Souhaitons que les autres ne perdent pas leur temps dans ce gâchis. 

2
ekambar kodali

Il faut un dernier stable sdk-platform installé. J'ai installé SDK-Platform à partir de l'API 25. Cela a résolu mon problème . See Screenshot below

2
Tushar Walzade

vous devez ré-installer manuellement sdk this help me: https://forum.ionicframework.com/t/you-have-not-accepted-the-license-agreements-of-the-suivant-sdk -component/69570/6

"Mise à jour Android sdk --no-ui --filter build-tools-24.0.0, Android-24, référentiel extra-Android-m2"

1
Yevhen Kotliar

Changer la construction cible pourrait fonctionner comme référencé here

Si vous souhaitez spécifier la version du SDK, vous pouvez le faire en ajoutant la ligne suivante à votre config.xml à la racine de votre projet ionic/cordova.

<preference name="Android-targetSdkVersion" value="23"/>
1
Madhu Kumar

J'espère que cela fonctionnera pour quelqu'un
Je faisais face au même problème! J'ai eu 2 sdks, nommés comme sdk et sdk1. C'était lié par défaut à sdk mais celui qui travaillait était sdk1 . Je suis donc allé dans Environment Varaible et j'ai ajouté {Android_HOME et le chemin d'accès de la sdk1, c'est-à-dire C:\Users\tripa_000\AppData\Local\Android\sdk1, et cela a résolu mon problème!

1
Tripathee Gaurav

Je viens de rencontrer ce problème, et ce qui me l'a résolu sous Windows, vous utilisez la ligne de commande et vous avez récemment installé le sdk Android, vous devez redémarrer l'invite de commande ou Power Shell après avoir installé le sdk Android.

0
Norman Breau

Cela mettra à jour votre SDK Android et acceptera la licence dans le même temps (ex pour Android 25):

Sdk de mise à jour Android

0
Yann Ulrich

Le problème pour moi était que ma variable Android_HOME était définie sur une autre installation que j'avais oubliée. Si tel est votre problème, supprimez l'ancienne installation.

0
Cilan

sa moyenne ne correspond pas à la version Android SDK de cordova avec la version que vous avez installée. Par exemple, Cordova prend en charge Android SDK 24 mais vous ne disposez pas d'Android SDK 24. Il est possible qu'il soit inversé.

0
Yusuf

Si vous voulez éviter de créer manuellement le dossier de licence, et si votre sdk ne se trouve pas dans "Utilisateurs/Utilisateur", vous pouvez aller sur Android studio => Configurer => Gestionnaire de SDK et installer n’importe quel composant. les outils sdk, il générait automatiquement la licence au bon endroit.

0
Mozart Al Khateeb

Pour moi, je construisais l’ionique en utilisant la commande "ionic build Android" et le même problème se posait! La solution était tout simplement 

  • Pour installer le sdk requis
  • Exécuter la même commande dans CMD doit êtreen tant qu’administrateur
0
Adel

La réponse de Mike fonctionne. Mais il faut mettre la licence générée sous C:\Utilisateurs\utilisateur\AppData\Local\Android\sdk\licences.

0
Thyagu

installer Android 7 - Platform 24 Full dans Android sdk manager 

juste ça 

0
Ali Gh