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.
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"
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)
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:
Android Studio Menu > Preferences
.Appearance & Behavior > System Settings > Android SDK
Android 7.0 (Nougat) | 24
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
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.
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)
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
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:
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).
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 .
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.
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.)
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.
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
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
Installez les packages d'API SDK que vous ciblez
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!
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.
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:
repositories.cfg
vide ou sdkmanager
mourrait.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.
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.
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
C:\Utilisateurs\nom d'utilisateur\AppData\Local\Android\sdk\tools\bin
Exécuter la commande sdkmanager --licenses
Accepter la licence pour le SDK
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.
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"
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"/>
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!
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.
Cela mettra à jour votre SDK Android et acceptera la licence dans le même temps (ex pour Android 25):
Sdk de mise à jour Android
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.
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é.
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.
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
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.
installer Android 7 - Platform 24 Full dans Android sdk manager
juste ça