web-dev-qa-db-fra.com

Cordova: SDK Android non trouvé. Assurez-vous qu'il est installé. Si ce n'est pas à l'emplacement par défaut, définissez la variable d'environnement Android_HOME

Je rencontre un problème pour construire Android avec Cordova. Lorsque j'exécute le cordova build Android, le message d'erreur suivant s'affiche: 

Error: Android SDK not found. Make sure that it is installed. If it is not at the default location, set the Android_HOME environment variable.

J'ai faire ceci pour le réparer:

Sudo nano  ~/.bash_profile

et ajoutez cette ligne:

export PATH=${PATH}:/Users/myname/Library/Android/sdk/platform-tools:/Users/myname/Library/Android/sdk/tools

ensuite ceci:

source ~/.bash_profile

mais je reçois à nouveau cette erreur quand je construis, comment puis-je la réparer?

METTRE À JOUR:

C'est la ligne que j'ai ajoutée à la bash:

export PATH=${PATH}:/Users/myname/Library/Android/sdk/platform-tools:/Users/myname/Library/Android/sdk/tools
export Android_HOME=/Users/myname/Library/Android/sdk
34
Piero

Les récents outils SDK Android ont supprimé la commande Android.

$ Android -v
The Android command is no longer available.
For manual SDK and AVD management, please use Android Studio.
For command-line tools, use tools/bin/sdkmanager and tools/bin/avdmanager

cordova est derrière le changement et quelqu'un semble y travailler: https://issues.Apache.org/jira/browse/CB-12554

Vous pouvez également rétrograder vos outils vers une version dans laquelle la variable Android était toujours disponible.

Néanmoins, j'ai trouvé un moyen d'exécuter l'application Android sans avoir à rétrograder mes outils SDK. Je voudrais (1) exécuter cordova prepare, puis (2) exécuter la commande dont j'ai besoin d'Android Studio. Dans mon cas, l'exécuter sur l'émulateur suffisait.

UPDATE: Le problème CB-12554 est résolu maintenant et a été publié avec la version [email protected]

MISE À JOUR: Plusieurs correctifs ultérieurs associés ont été effectués et la version la plus récente est [email protected]. Exécutez cordova platform rm Android; cordova platform add [email protected] pour résoudre les problèmes.

43
oldergod

Pour moi ce travail, vérifiez d'abord votre version de Cordova Android 

cordova platform version Android

il montre 5.0 pour moi et après cela mettre à jour la version avec cette commande

cordova platform update Android
30
Uahmed

TL; DR Dans certains cas, même si vous avez correctement ajouté Android sdk à votre chemin, le problème persiste, la raison étant liée à la version de votre dossier Android tools/, la commande Android n'est plus prise en charge mais il est toujours requis par la commande ionic cordova build Android, alors vous devriez en télécharger un ancien.

Maintenant que vous savez où est le problème, passons à la solution:

  1. Téléchargez une ancienne version de sdk tools selon votre plate-forme Mac , Windows , Linux .
  2. Remplacez le dossier tools/ actuel dans /Users/username/Library/Android/sdk sous Mac ou C:\Users\[account]\AppData\Local\Android\sdk sous Windows ou ~/Android/Sdk sous Linux par le dossier téléchargé tools/.
  3. Redémarrez votre ligne de commande et soyez heureux!
14
user6358125

@Rjak voici le manual pour rétrograder la version du SDK avec des liens valides pour les versions antérieures du SDK. Cela fonctionne pour moi avec le même problème, après avoir été converti avec succès aux outils v25.2.5 et platform-tools à v25.0.3

3
Anton Shevchuk

Comme quelqu'un d'autre l'a dit, c'est parce que la commande Android est déconseillée:

 C: \> Android 
 ************************************************* ************************* 
 La commande "Android" est obsolète .
 Pour le SDK manuel, AVD et la gestion de projet, utilisez Android Studio .
 Pour les outils de ligne de commande, utilisez tools\bin\sdkmanager.bat 
 et outils\bin\avdmanager.bat 
 ************************************************* ************************* 

Dans mon cas, j'ai réussi à résoudre le problème en changeant le plus récent Android.bat qui est fourni dans le sdk, dans le dossier "tools".

Il suffit de changer ces lignes dans le sdk/tools/Android.bat:

À partir de là : (Ligne ~ 20)

set avd_objects=;avd;target;device;

À :

set avd_objects=;avd;target**s**;device;

À partir de ceci : (Ligne ~ 37)

echo Android list target

À :

echo Android list target**s**

Explanation: Cordova build.bat appellera éventuellement le script check_reqs.js et c’est là que cette validation est effectuée. Si vous recherchez le texte d'erreur réel, cela indique que le script tente d'appeler la commande "Android list target s --compact", ce qui, je suppose, était la méthode la plus ancienne.

1
waldou

Dans mon cas, c'est un scénario 

1.J'ai un outils de plate-forme SDK Version 23

2.J'ai ajouté la plateforme Android au projet My Cordova

3.Il fonctionne bien Jusqu'à ce que je mette à jour le SDK à 26

4. Après la mise à jour du SDK, la même erreur est renvoyée. 

Cordova: SDK Android non trouvé. Assurez-vous qu'il est installé. Si ça n'est pas à l'emplacement par défaut, définissez l'environnement Android_HOME variable

  1. Je viens de résoudre ceci en supprimant et en ajoutant les plates-formes Android dans mon projet

    plate-forme cordova supprimer Android

    plate-forme cordova ajouter Android

  2. Maintenant ça marche bien :) 

0

J'ai résolu ma question en désinstallant Android Studio et en installant le gestionnaire de SDK CLI en suivant ce guide:

https://guides.codepath.com/Android/Installing-Android-SDK-Tools

0
Piero