Ne peut pas accepter l'accord de licence plateforme SDK Android 24
j'obtiens l'erreur suivante en essayant d'installer une plate-forme android sur un projet Cordova. J'ai suivi ce guide: https://cordova.apache.org/docs/en/latest/guide/cli/
erreur se produit lors de l'exécution de ce qui suit: $ plateforme cordova ajouter android --enregistrer
un problème est survenu lors de la configuration du projet root 'android'. Vous n'avez pas accepté les accords de licence du SDK suivant composants: [plateforme SDK Android 24].
j'ai cherché partout des moyens pour accepter le contrat de licence de la plate-forme SDK Android 24 , mais pas de chance réelle.
merci à l'avance.
30 réponses
Je ne sais pas exactement comment fonctionne cordova, mais une fois les licences acceptées, il crée un fichier. Vous pouvez créer ce fichier manuellement. Il est décrit sur cette question , Mais voici les commandes pour créer le fichier de licence requis.
Linux:
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"
vous pouvez aussi simplement exécuter
$ANDROID_HOME/tools / bin / sdkmanager --licences
ou pour Windows exécuter
%ANDROID_HOME% / tools / bin / sdkmanager --licences
(crédit pour la commande windows à @puneet-kumar)
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é la plate-forme 25, mais pas 24. Pour installer 24:
- Ouvrir Android Studio.
- Ouvrir
Android Studio Menu > Preferences
. -
Appearance & Behavior > System Settings > Android SDK
- cochez la case correspondant à
Android 7.0 (Nougat) | 24
- cliquez sur ok et suivez les instructions.
j'ai eu exactement le même problème. Puis j'ai installé "Android 7.0 (API 24) > plate-forme SDK" et ça a fonctionné.
allez à Android\sdk\tools\bin
puis exécuter
sdkmanager --licenses
il vous demandera d'accepter les accords, vous avez juste à taper "y"
et entrer.
la manière la plus simple de résoudre ce problème est d'accepter les licences en utilisant la commande suivante:
Windows OS:
C:\Users\{your-username}\AppData\Local\Android\sdk\tools\bin\sdkmanager --licenses
vous serez présenté avec des disclaimers. Afin de poursuivre vos efforts de développement, vous devez répondre " y " à tous les Avertissements.
j'avais le problème, vous n'avez pas besoin de copier ou de créer n'importe quel dossier, faites juste attention à votre chemin SDK, il doit être le même de la variable environnement (ANDROID_HOME), qui n'était pas le même pour moi, Je ne sais pas pourquoi.
dans mon cas, je n'utilise pas Android studio (j'utilise eclipse). J'ai fait l'étape suivante: Résolu juste en exécutant la commande
android-sdks/tools/bin$ ./sdkmanager --update
qui a créé un répertoire licenses
et y a ajouté un fichier appelé android-sdk-license
.
puis vous pouvez lancer (l'option licenses
n'est pas disponible sauf si vous avez fait le pas ci-dessus)
android-sdks/tools/bin$ ./sdkmanager --licenses
et accepter la licence (cependant, dans mon cas, je n'avais pas besoin de faire cela)
j'ai installé android SDK build-tools 24(c'est la version actuelle 24.0.3) par L'intermédiaire de SDK manager. Le chemin pour ouvrir SDK manager est montré dans le fichier img ci-joint. Cela a résolu mon problème SDK Manager
j'ai eu le SDK Android en installant le studio Android et j'ai eu cette erreur aussi. Il y a une solution simple de le guide de l'utilisateur .
-
sur une machine avec Android Studio installé, cliquez sur
Tools > Android > SDK Manager
. En haut de la fenêtre, notez le emplacement SDK Android . -
naviguez vers ce répertoire et localisez le répertoire
licenses/
à l'intérieur il.(si vous ne voyez pas de répertoire
licenses/
, retournez à Android Studio et mettez à jour vos outils SDK, en vous assurant d'accepter les accords de licence. Lorsque vous retournez dans le répertoire home SDK Android, vous devriez maintenant Voir le répertoire.) -
copiez la totalité du répertoire
licenses/
et collez-le dans leAndroid SDK home directory
sur la machine où vous souhaitez construire vos projets.
cette erreur peut se produire si le système ne détecte pas la variable D'environnement ANDROID_HOME à partir du chemin approprié. Assurez-vous d'avoir installé le SDK Android et réglé correctement la variable ANDROID_HOME sur le chemin approprié comme dans l'image ci-dessous:
si la variable ANDROID_HOME n'est pas définie, le système essaie de choisir le chemin à partir d'un chemin par défaut(ce n'est peut-être pas le chemin où le SDK Android est défini, conduisant à ce problème).
c'est parce que par défaut au moment de cette écriture, Ionic CLI outil est par défaut à
<preference name="android-targetSdkVersion" value="LATEST_SDK_VERSION"/>
C'est la raison pour laquelle il se plaint que vous n'avez pas accepté le contrat de licence , mais en réalité vous n'avez pas installé le paquets SDK pour ce API niveau encore seul accepter la licence.
donc ce que vous devez faire est soit
- changez votre version SDK cible
- installer le dernier niveau D'API SDK de SDK Manager
changer votre version SDK
vous pouvez le faire manuellement et même le vérifier en lançant
ionic cordova platform add android
le fichier se trouve à your-awesome-app/config.xml
ouvrir et ajouter cette ligne, depuis son caché comme indiqué ci-dessus
<preference name="android-targetSdkVersion" value="24"/>
si vous n'êtes pas sûr de quel nombre de niveau API vous ciblez ouvert SDK Manager et regardez le niveaux API (nombres) disponibles sur votre machine
installation du dernier paquet SDK
vous pouvez ajouter le courant paquets SDK que le CLI montre , qui dans votre cas, il is 24
Exécuter SDK MANAGER
comme Admin
Installer API du SDK de Paquets cible
comment le savais-je? Je l'ai fait ce matin et c'est ainsi que j'ai trouvé et maintenant je suis jouer bulle collante sur Android pour se détendre un peu.
Heureux Déploiement De!
dans mon cas (script Dockerfile pour construire un conteneur Ci Android - https://github.com/menny/docker_android ), j'ai dû faire ces étapes:
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:
- devait créer un fichier
repositories.cfg
vide ousdkmanager
mourrait. - a dû effectuer la récupération/installation de paquets dans différents appels, car il n'y a pas d'indication de progrès.
Il a besoin d'un plus tard stable sdk de la plate-forme installé. J'ai installé la plate-forme SDK de L'API 25. Il fixe mon problème.
C:\Users{user} \ AppData\Local\Android\sdk\tools\bin
puis courir sdkmanager --licences
il vous demandera d'accepter tous les accords restants pour être accepté. tapez " y " et entrez.
résoudra le problème
j'ai dû mettre à jour le sdk android
android update sdk --no-ui
à un moment donné, il vous demandera le contrat de licence, appuyez sur y
. Après cela, vous devez enlever la plate-forme angulaire.
- Aller à l'emplacement du SDK Android
C:\Users\username\AppData\Local\Android\sdk\tools\bin
-
Exécution de la commande
sdkmanager --licenses
-
accepter la licence pour SDK
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
puis j'ai eu une liste de 6 licences à accepter et son résolu après cela.
vous pouvez également suivre la voie" officielle". Exécuter " sdkmanager -- licences " dans outils/bin dossier de L'installation SDK Android et accepter toutes les licences. Fait!
c:\android-sdk\tools\bin>sdkmanager --licenses
pour macOS ou Linux c'est la même commande.
modifier la construction cible pourrait fonctionner comme référencé ici
si vous voulez spécifier la version SDK, vous pouvez le faire en ajoutant la ligne suivante à votre configuration.xml à la racine de votre ionique / cordova projet
<preference name="android-targetSdkVersion" value="23"/>
vous devez ré-installer manuellement sdk cette aide moi: https://forum.ionicframework.com/t/you-have-not-accepted-the-license-agreements-of-the-following-sdk-component/69570/6
"mise à jour android sdk --no-ui --filtre à construire-outils-24.0.0,android-24,extra-android-m2repository"
Espère que cela va travailler pour quelqu'un là-bas
J'ai été confrontée au même problème! J'avais 2 SDK, nommés sdk et sdk1. Il était par défaut lié au sdk, mais celui qui fonctionnait était sdk1.
Donc je suis allé à L'environnement Varaible et a ajouté
ANDROID_HOME et le chemin du sdk1, i.e. dans mon cas était C:\Users\tripa_000\AppData\Local\Android\sdk1 , et ça a résolu mon problème!
ce problème se pose alors qu'une ancienne version de SDK Manager se trouve déjà dans la machine à partir de laquelle L'approche de construction Android est modifiée, ce qui nécessite"android studio". J'ai fait face à cela dans Visual Studio qui a été stoppé à plusieurs reprises avec un Message D'erreur, "vous n'avez pas accepté la licence pour la version 25". La solution pour cela est "Installer L'Android Studio" et puis "aller aux Variables D'environnement" et mettre L'ANDROID_HOME à "C:\Users\\AppData\Local\Android\Sdk" (ce chemin peut être choisi de Android Studio, Menu > > Outils > > SDK Manager. Utilisez la même chose dans" Chemin " des Variables D'environnement. De cette façon, le nouveau gestionnaire SDK est mappé pour la prise en charge par Visual Studio pour L'Application Cordova.
cela m'a pris 2 jours d'effort pour la deuxième fois
souhaite que les autres ne perdent pas leur temps dans ce gâchis.
pour moi, je construisais L'ionique en utilisant la commande "Ionic build android" et j'avais le même problème! La solution était tout simplement
- pour installer le sdk requis
- exécuter la même commande dans CMD doit être comme administrateur 151940920"
je viens de tomber sur ce problème, et ce qui l'a résolu pour moi sur windows, vous utilisez la ligne de commande, et vous avez récemment installé le sdk android, vous devez redémarrer Prompt de commande ou Shell après l'installation du sdk android.
la réponse de Mike fonctionne.Mais besoin de mettre la licence générée sous C:\Users\user\AppData\Local\Android\sdk\licenses.
sa moyenne miss match version SDK Android de cordova avec la version que vous avez installé. Pour un exemple cordova prise en charge Android SDK 24, mais vous n'avez pas Android sdk 24. il peut être inversée.
cela mettra à jour votre SDK android et accepter la licence dans le même temps (ex Pour Android 25):
mise à jour android sdk --no-ui --filtre à construire-outils-25.0.0,android-25,extra-android-m2repository
le problème pour moi était que ma variable ANDROID_HOME était réglée sur une autre installation que j'avais oubliée. Si c'est votre problème, supprimez l'ancienne installation.