samedi 12 octobre 2013

[Android] Construire son apk sans Eclipse

Je développe sur Android et j'ai coutume d'utiliser Eclipse du début à la fin de mon développement. Mais Eclipse sur Ubuntu fait parfois des siennes lorsqu'il s'agit de construire l'apk : 1 fois sur 3 j'ai un problème de build de l'apk soit j'ai un message d'erreur soit Eclipse se ferme tout seul... :/
Donc me suis dit "wtf!!! ... mais ya quand même une solution pour le faire en ligne de commande ??"

Tout d'abord et si vous ne l'avez pas déjà fait, mettez dans votre PATH les commandes android issues du sdk que vous avez téléchargé :
cd android-sdk-linux/tools/
echo "export PATH=\${PATH}:$(pwd)" >> ~/.bashrc
cd ../platform-tools
echo "export PATH=\${PATH}:$(pwd)" >> ~/.bashrc
. ~/.bashrc

et si vous n'avez pas déjà ant :
sudo apt-get install ant

Ensuite placez vous dans le répertoire de votre projet android (workspace/...).
Faire un :
android list targets
pour avoir la liste des "cibles" à utiliser (càd la version d'android qui sera la cible).

Ensuite on va créer manuellement notre build.xml pour pouvoir compiler le tout avec ant :
android update project --subprojects -p . --target 2
(ne pas oublier le ".")

On  va pouvoir débugger et voir si tout est bon en faisant un :
ant debug

Puis créer un fichier ant.properties pour avoir un apk signé :
echo "key.store=/chemin/vers/votre/fichier/keystore" > ant.properties
echo "key.alias=alias_de_votre_clé" >> ant.properties

Une fois que c'est fait lancer la commande :
ant release

Si vous n'avez pas de message d'erreur, c'est bon votre apk est prêt et il se trouve dans le répertoire bin de votre projet.