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
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.
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
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:
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/
.@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
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.
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
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
Maintenant ça marche bien :)
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