41 votes

Cordova: SDK Android non trouvé. Assurez-vous qu'il est installé. S'il ne se trouve pas à l'emplacement par défaut, définissez la variable d'environnement ANDROID_HOME.

J'ai un problème pour construire Android avec Cordova. Lorsque j'exécute cordova build android , je reçois cette erreur:

 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?

MISE À 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
 

47voto

oldergod Points 6979

La récente Android SDK tools supprimé l' android commande.

$ 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 être de travailler sur elle: https://issues.apache.org/jira/browse/CB-12554

Vous pouvez également restaurer vos outils pour une version où l' android était encore disponible.

Néanmoins, j'ai trouvé un moyen d'exécuter les applications Android sans avoir à rétrograder mon SDK outils. Je voudrais (1) exécutez cordova prepare, puis (2) exécutez la commande j'ai besoin de Android Studio. Dans mon cas, l'exécution sur l'émulateur a été assez.

Mise à JOUR: Le problème de CB-12554 est résolu maintenant, et a été libéré avec l' cordova-android@6.2.0 de presse.

Mise à JOUR: Il y a eu plusieurs correctifs ultérieurs fait et la version la plus récente est cordova-android@6.2.3. Exécutez cordova platform rm android; cordova platform add android@6.2.3 de corriger les problèmes.

31voto

user1224233 Points 167

Pour moi ce travail, vérifiez d'abord votre version androïde cordova

 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
 

3voto

Anton Shevchuk Points 63

@Rjak Voici le manuel pour la mise à niveau inférieure de 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

2voto

waldou Points 16

Comme quelqu'un le dit, c'est parce que de l'android de commande étant obsolète:

C:\>android
**************************************************************************
 Le "android" de commande est obsolète.
 Pour manuel SDK, AVD, et la gestion de projet, veuillez utiliser la version d'Android Studio.
 Pour les outils en ligne de commande, utilisez les outils\bin\sdkmanager.chauve-souris
 et outils\bin\avdmanager.chauve-souris
**************************************************************************

Dans mon cas, j'ai réussi à résoudre en changeant la plus récente d'android.chauve-souris qui est fourni dans le sdk, dans l'onglet "outils".

Il suffit de changer ces lignes dans l' sdk/tools/android.bat:

À partir de ce: (Ligne ~20)

set avd_objects=;avd;target;device;

Pour:

set avd_objects=;avd;targets;device;

À Partir De Ce: (Ligne ~37)

echo android list target

Pour:

echo android list targets

Explication: Le cordova construire.chauve-souris finira par appel check_reqs.js script, et c'est là que cette validation est effectuée. Si vous recherchez l'erreur de texte, il montre que le script tente d'appeler "android liste cibles --compact de la commande", ce qui je suppose était la plus ancienne façon de le faire.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X