J'essaie d'exécuter mon projet Ionic 3 sur mon appareil Android avec ionic cordova run android --device --stacktrace, mais j'ai la sortie suivante:

...

Vérification de la licence du package Android SDK Platform 26 dans C: \ Android \ android-sdk \ licenses Avertissement: la licence du package Android SDK Platform 26 n'est pas acceptée.

ÉCHEC: la construction a échoué avec une exception.

  • Erreur: un problème est survenu lors de la configuration du projet racine "android".

Vous n'avez pas accepté les contrats de licence des composants SDK suivants: [Android SDK Platform 26]. Avant de construire votre projet, vous devez accepter les contrats de licence et compléter le installation des composants manquants à l'aide du SDK Android Studio Directeur. Alternativement, pour apprendre à transférer la licence accords d'un poste de travail à un autre, accédez à http://d.android.com/r/studio-ui/ export-licenses.html

En lisant d'autres questions, les gens ont suggéré d'utiliser le gestionnaire de SDK Android Studio et d'installer les dernières versions, car on me posait alors des questions sur les licences et je devais les accepter, j'ai donc installé Android 8.0 (Oreo) et l'API Android 27 qui sont les dernières mises à jour disponibles, cependant, à aucun moment je n'ai été interrogé sur une licence et l'erreur a persisté. Mon appareil est connecté au PC (Windows 10) via le câble USB et le mode programmeur est activé avec le débogage USB. Que puis-je faire pour résoudre ce problème?

Mon gestionnaire de SDK:

My SDK manager

Mettre à jour :

J'ai déjà exécuté la commande sdkmanager --licenses dans les dossiers C:\Android\sdk\tools\bin et C:\Users\User\AppData\Local\Android\sdk\tools\bin et toutes les licences manquantes ont été acceptées, mais l'erreur persiste.

Ma version cordova-android en package.json: "cordova-android": "~6.3.0" et en config.xml: <engine name="android" spec="~6.3.0" /> (déjà essayé avec 6.3.0 et 6.2.0 sans succès)

Suite à l'erreur:

Vérification de la licence du package Android SDK Platform 26 dans C: \ Android \ android-sdk \ licenses Avertissement: la licence du package Android SDK Platform 26 n'est pas acceptée.

Mais je n'ai pas le dossier des licences dans C:\Android\android-sdk, juste dans C:\Android\sdk. Comment faire pour Ionic vérifier le dossier où se trouvent réellement les licences?

ionic info:

cli packages: (C:\Users\User\AppData\Roaming\npm\node_modules)

    @ionic/cli-utils  : 1.19.0
    ionic (Ionic CLI) : 3.19.0

global packages:

    cordova (Cordova CLI) : 7.1.0

local packages:

    @ionic/app-scripts : 3.1.0
    Cordova Platforms  : none
    Ionic Framework    : ionic-angular 3.9.2

System:

    Node : v6.11.2
    npm  : 3.10.10
    OS   : Windows 10

Environment Variables:

    ANDROID_HOME : C:\Android\android-sdk

Misc:

    backend : pro
3
Igor 29 déc. 2017 à 21:40

10 réponses

Meilleure réponse

Résolu! Lecture des informations sur la page http://tools.android.com/tech -docs / nouveau-système-de-construction / licence:

...

Si vous avez accepté les accords de licence sur un poste de travail, mais que vous souhaitez créer vos projets sur un autre, vous pouvez exporter vos licences en copiant le dossier des licences acceptées depuis le dossier Android Sdk Home.

...

Je suis donc simplement allé sur C:\Android\sdk et j'ai copié le dossier des licences dans le dossier C:\Android\android-sdk dans lequel Ionic recherchait les licences.

Merci à tous ceux qui ont essayé d'aider d'une manière ou d'une autre.

5
Igor 6 janv. 2018 à 03:35

La réponse de @Paresh Gami a aidé à résoudre la mienne. Juste une remarque pour les utilisateurs de Mac OSX.

Le chemin complet est / Users / useraccount / Library / Android / sdk / tools / bin /

useraccount est votre utilisateur système actuel.

0
Ernest O. Fokuo 13 juin 2019 à 18:30

Os: Windows 7 (64 bits)

Vous pouvez accepter l'accord lic du SDK en utilisant la commande blow:

Aller au "C: \ Users {nom_utilisateur} \ AppData \ Local \ Android \ sdk \ tools \ bin"

Exécuter la commande: sdkmanager "plates-formes; android-xx"

Node: xx est la version

0
praveen kedar 15 sept. 2019 à 08:48

Dans le dernier SDK, vous pouvez trouver le fichier sdkmanager sous cet emplacement

/Users/pareshgami/Library/Android/sdk/cmdline-tools/latest/bin/

Après cela, nous devons exécuter la même commande

sdkmanager "platforms;android-26"
0
Paresh Gami 6 mars 2020 à 19:32

Dans le dossier SDK, vous devez exécuter sous l'invite de commande.

...\sdk\tools\bin

Entrez cette commande

sdkmanager "platforms;android-26"
22
Paresh Gami 3 janv. 2018 à 16:08

J'ai essayé les astuces mentionnées ci-dessus, ce qui fonctionne pour moi sur Mac OS est ci-dessous

$ANDROID_HOME/tools/bin/sdkmanager "build-tools;26.0.1" "platforms;android-26"
0
Anjum.... 19 sept. 2019 à 07:13

Vérifiez votre version cordova-android. Essayez de courir avec la version cordova-android 6.2.3.

Si la solution ci-dessus ne fonctionne pas, suivez ce processus.

  1. Télécharger Android Studio SDK Manager

  2. Téléchargez le SDK pour la version 26.

    https://developer.android.com/studio/intro/update.html

Mettre à jour

En fonction de votre mise à jour, vous ajoutez la version dans votre package.json comme suit

"cordova-android": "~6.3.0" donc changez ceci au format suivant comme suit "cordova-android": "6.3.0" Référence au problème

Remarque si le format ci-dessus ne fonctionne pas pour le 6.3.0, essayez de même avec le 6.2.0 comme suit "cordova-android": "6.2.0"

1
Webruster 5 janv. 2018 à 06:13

Dans mon cas, en utilisant Visual Studio + Cordova, ce cas a été résolu en copiant le dossier " licences " de votre dossier %ANDROID_HOME% vers "C:\ProgramData\Microsoft\AndroidSDK\25", VS a pris des licences à partir de là.

0
Serg Tomcat 29 mai 2018 à 12:27

Après avoir installé la version à laquelle on demandait des licences, cela a commencé à fonctionner! Vous pouvez le faire dans Android Studio> SDK Manager

0
Gediminas 2 janv. 2019 à 15:58

Accédez au dossier android sdk, copiez le dossier licenses à partir de là et collez le dossier dans le chemin ci-dessous:

C:\Users\intel\AppData\Local\Android\Sdk
0
sɐunıɔןɐqɐp 25 sept. 2018 à 07:48