J'essaye de faire fonctionner ça et ça me rend fou:
$ cordova platform add android
La sortie est:
Creating android project...
/Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:126
throw e;
^
Error: Please install Android target 19 (the Android newest SDK). Make sure you have the latest Android tools installed as well. Run "android" from your command-line to install/update any missing SDKs or tools.
at /Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/lib/check_reqs.js:80:29
at _fulfilled (/Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:798:54)
at self.promiseDispatch.done (/Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:827:30)
at Promise.promise.promiseDispatch (/Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:760:13)
at /Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:574:44
at flush (/Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:108:17)
at process._tickCallback (node.js:419:13)
Error: /Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/create: Command failed with exit code 8
at ChildProcess.whenDone (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:135:23)
at ChildProcess.emit (events.js:98:17)
at maybeClose (child_process.js:755:16)
at Process.ChildProcess._handle.onexit (child_process.js:822:5)
Si vous avez exécuté la commande, android
ce sont toutes les choses que j'ai installées:
J'ai aussi fait:
open ~/.bash_profile
Et ajouté:
export PATH=${PATH}:/Users/doekewartena/Documents/adt-bundle-mac-x86_64-20140702/sdk/platform-tools:/Users/doekewartena/Documents/adt-bundle-mac-x86_64-20140702/sdk/tools
Mais ça n'aide pas :(
Quelqu'un pourrait-il aider.
Réponses:
Le SDK Android n'est pas votre version Android cible. La version cible d'Android 19 est le niveau d'API pour Android Kitkat.Donc, dans votre gestionnaire de SDK, vérifiez si Android 4.4.2 (API 19) est installé. Si vous souhaitez que votre version d'API cible soit différente, modifiez-la dans ANdroidManifest.xml
Modifiez ces lignes. Voici
android:targetSdkVersion
votre version d'Android que vous ciblez.la source
adb
, qui n'existe apparemment pas, même s'il existe. Cela signifie que , vous n'avez pas installélib32ncurses5
etlib32stdc++6
encore. (Cela s'est passé sur Debian Jessie 64 bits.)1) Je suis allé dans le gestionnaire de SDK (en tapant
android
dans le terminal, en supposant qu'il se trouve dans votre chemin de fichier)2) Boîte sélectionnée à côté d'Android 4.4.2 (API 19)
3) Bouton cliqué
Install 8 packages
4) Commande originale exécutée (dans cet exemple
cordova platform add android
, bien que cela puisse êtreionic platform add android
, selon ce avec quoi vous travaillez)la source
Moi aussi, je recevais la même erreur 19. Je n'ai aucune idée d'AndroidManifest.xml et où il est censé être.
Dans mon cas, j'ai corrigé l'erreur en exécutant la commande 'android' à partir de la console, en ouvrant l'arborescence Android 4.4.2 (API19) et en installant la plate-forme SDK.
Une fois que cela a été installé, la plate-forme cordova ajoute la commande Android a fonctionné comme vous le souhaitez.
Suite à cela, j'ai dû installer quelques autres éléments d'API19 pour pouvoir créer un émulateur Android:
Je pourrais ensuite créer un émulateur basé sur API19 à l'aide du gestionnaire de périphériques virtuels Android (AVD) inclus dans le kit Android SDK.
la source
J'ai également dû changer project.properties dans le même répertoire
la source
Voici la documentation sur la configuration d'un document AndroidManifest.xml. Chaque application doit en avoir un.
http://developer.android.com/guide/topics/manifest/manifest-intro.html
la source
cordova platform add android
est censée créer l'application Android de base. Cette commande échoue, il n'y a donc pas d'application Android, ni AndroidManifest.xml.Si vous rencontrez des problèmes pour installer le package, assurez-vous que vous exécutez 'Android Central' en tant qu'administrateur ... m'a pris 30 minutes pour le résoudre !!
la source