Contactez-nous
Kitpages
17 rue de la Frise
38000 Grenoble
tel : 04 58 00 33 81
PhoneGap et le SDK android en ligne de commande sous Linux
Introduction
Cette page fait partie du cycle "Dossier PhoneGap".
Nous montrons comment installer PhoneGap et le SDK android sur un Linux et comment créer une application hello world.
Pourquoi en ligne de commande ?
Entre un code HTML / JS commun à toutes les plateformes et le package spécifique déployé sur chaque plateforme, il y a pas mal d'étapes à suivre (voir la page "Dossier PhoneGap").
Faire tout en ligne de commande permet d'automatiser une bonne partie de ces étapes. Dans le cas du SDK android, ça permet aussi de s'affranchir de Eclipse, ce qui (à mon sens) simplifie le processus et permet de comprendre ce qu'on fait.
Installer le JDK 6 et ant
Java
# télécharger l'installateur cd /usr/local/src wget _le_fichier_bin_ chmod a+x jdk-6u21-linux-i586.bin ./jdk-6u21-linux-i586.bin # déplacer dans /usr/local mv jdk1.6.0_21 /usr/local cd /usr/local # créer un lien symbolique /usr/local/java ln -s jdk1.6.0_21 java
Ant
# télécharger et décompresser l'archive binaire (la dernière version dispo) cd /usr/local/src wget http://apache.cict.fr//ant/binaries/apache-ant-1.8.1-bin.tar.gz tar zxvf apache-ant-1.8.1-bin.tar.gz # déplacer dans /usr/local mv apache-ant-1.8.1 /usr/local/ cd /usr/local # créer un lien symbolique indépendant de la version ln -s apache-ant-1.8.1 ant
Configurer les variables d'environnement
# sous centos, vous pouvez éditer le fichier /etc/profile et # ajouter (là où c'est pertinent) les lignes suivantes # sinon ajouter les java/bin et ant/bin dans le $PATH pathmunge /usr/local/java/bin pathmunge /usr/local/ant/bin export JAVA_HOME="/usr/local/java"
Installer le SDK Android (sans eclipse)
Télécharger le SDK
Télécharger l'archive dans à l'adresse : http://developer.android.com/sdk/index.html
Aller dans "DOWNLOAD FOR OTHER PLATFORMS" > "SDK tools only" et télécharger la version Linux qui vous convient.
# téléchager le SDK wget http://dl.google.com/android/android-sdk_r21.0.1-linux.tgz # décompresser l'archive tar zxvf android-sdk_r21.0.1-linux.tgz # aller dans le sdk cd android-sdk-linux/ # télécharger la base de terminaux et pas mal de trucs... tools/android update sdk --no-ui # (soyez patient, c'est longuet...)
Configurer les variables d'environnement
# éditer votre /etc/profile et ajouter les lignes suivantes # afin de modifier votre $PATH pathmunge /home/webadmin/eclipse/android-sdk-linux/tools pathmunge /home/webadmin/eclipse/android-sdk-linux/platform-tools
Installer PhoneGap - Android
# décompresser l'archive unzip cordova-2.3.0-src.zip cd cordova-2.3.0 mkdir android cd android unzip ../cordova-android.zip
Créer une application de test
# tester la création d'une application cordova pour android # ./create <project_folder_path> <package_name> <project_name> # exemple : cd _repertoire_de_cordova_/android/bin ./create /home/webadmin/eclipse/cordova-test/helloworld \ com.kitpages.HelloWorld \ KitpagesHelloWorld
Générer le package android ".apk"
# aller dans le répertoire de l'application cd /home/webadmin/eclipse/cordova-test/helloworld # lancer la compilation ant debug # le package généré est : bin/KitpagesHelloWorld-debug.apk
Simuler le package
Créer un terminal virtuel
Avant de lancer une simulation, il faut lancer un terminal virtuel. Cette opération peut se faire avec le programme "tools/android", dans le SDK android.
Vous trouverez plus d'options sur la page "Managing AVD from the command line".
Voyons quelques exemples d'utilisation de ce programme.
# afficher la liste des commandes ./android -help # afficher la liste des terminaux virtuels ./android list avd # obtenir l'aide sur la création d'AVD ./android create avd -help # Créer un AVD # name : nom du terminal virtuel # target android-17 = c'est un android 4.2 - API Level 17 # skin: permet de sélectionner la résolution et quelques caractéristiques du téléphone # abi : définit le processeur sur lequel tourne le terminal # path : chemin dans lequel on enregistre le terminal virtuel ./android create avd \ --name LinuxPhone \ --target android-17 \ --skin WVGA800 \ --abi x86 \ --path /home/webadmin/eclipse/_android/avd/LinuxPhone
On obtient le résultat suivant
Android 4.2 is a basic Android platform. Do you wish to create a custom hardware profile [no] Created AVD 'LinuxPhone' based on Android 4.2, Intel Atom (x86) processor, with the following hardware config: hw.lcd.density=240 vm.heapSize=48 hw.ramSize=512
Lancer l'émulateur
On lance l'émulateur en ligne de commandes avec le terminal virtuel qu'on vient de créer.
# dans le répertoire tools du SDK ./emulator -avd LinuxPhone
Installer le package .apk sur le terminal
Maintenant que l'émulateur est lancé, il faut installer notre application dessus.
Pour cela on utilise l'outil "adb" qui est dans sdk/plateform-tools.
# installer l'application adb install _application_de_test_/bin/KitpagesHelloWorld-debug.apk
Lancer l'application
Pour lancer l'application, il faut utiliser le terminal dans l'émulateur et lancer le programme comme un utilisateur classique.
Conclusion
L'environnement de dev pour faire des applis mobiles avec des technos web est assez complexe, mais c'est une étape imposée.
Dans les tutos à venir nous allons voir :
- Comment tester sur un vrai terminal
- Comment faire quelques applications de base
- Comment automatiser la génération des packages
- Intégrer nouveaux terminaux dans le flux général (iOS, Win 8, FirefoxOS...)
N'hésitez pas à utiliser les commentaires pour compléter ce tutoriel.
Commentaires
Note : on ne peut plus ajouter de commentaire sur ce site