Macadames' blog

Le silence est d'or, jusqu'à ce qu'il devienne plomb.

Titanium et Android SDK premiers pas

leave a comment »

Installation

Si vous vous prenez la tête avec l’installation de Titanium et du sdk Android, voilà une petite aide.

Si comme moi vous ne voulez installer que le nécessaire pour ce qui concerne le sdk Android, il faut déjà éviter de faire « tout installer », sinon ça prend deux jours et encore je ne suis pas arrivé au bout (il y avait déjà 4Go dans le dossier), à la fin j’étais tellement énervé que j’ai tout enlevé pour recommencer.

Bref on installe le sdk avec seulement quelques versions de l’API. Au pifomètre on se dit que les dernières versions majeures de l’API Android devraient suffire, et c’est déjà assez gros en taille, même si on se trompe on le fait.

On installe aussi la dernière version de Titanium (conseil désinstaller puis réinstaller la dernière version plutôt que « mettre à jour » via Eclipse quand la version de Titanium est ancienne)

Ensuite dans l’écran d’accueil Titanium sous Eclipse, on clique sur configuration et on choisit les sdk qui nous intéressent (Android donc), et là patatras, il manque des packages Android (la 2.1 et la 2.2 sont obligatoires, ainsi que les addons Google API 7 et 8).

Si vous cliquez directement depuis cet écran sur « Install or Update Android SDK », c’est simple, il installera la totalité du sdk, on ne comprend rien à ce qui se passe, et il faudra deux jours pour s’en remettre.

Donc mieux vaut utiliser le Android SDK Manager et choisir les paquets requis et manquants tels qu’ils sont indiqués dans l’écran de configuration (c’est déjà bien long à charger croyez-moi). A la fin de l’installation l’écran du SDK Manager est tellement mal foutu qu’on se demande ce qui a été installé ou pas, néanmoins ça marche, Titanium ne crie plus.

Voilà, tout cela est perfectible, ça au moins c’est clair.

Conflits de version avec dernier java sdk

Dans le répertoire contenant les sources Titanium, il y a un fichier prereq.py
Si vous avez installé la dernière version du jdk (installation par défaut), vous disposez du jdk 1.7, il faut donc changer à la ligne 21 et 22 de prereq.py, « 1.6 » par « 1.7 »
if not version.startswith(« 1.7 »):
status = « JDK version %s detected, but 1.7 is required » % version

Mais si vous êtes en 64bits, il faudra faire machine arrière, la dernière version du java sdk ne fonctionne pas avec Titanium + android sdk, à vous de trouver le jsdk 1.6 dans cette jungle de fichiers.

Premiers pas, premiers sentiments

On dirait que commence un long et difficile apprentissage avec des pièges un peu partout. Faire du développement mobile c’est déjà complexe, un bon background en javascript et html5 est indispensable pour Titanium par exemple, mais faire du multi-plateformes c’est un challenge encore plus gros. Rien que de découvrir le monde Android avec ses multiples versions d’API, incluant ou pas les API Google, donne le tournis. On comprend que certains s’énervent sur les forums.

Les premiers pas avec Titanium furent hésitants, mais ça commence à devenir sympa.

On voit beaucoup de critiques un peu partout sur les forums comme quoi il serait préférable de coder directement en s’appuyant sur les sdk natifs mais ça ne me dit rien du tout dans l’immédiat, PhoneGap et Titanium permettent de coder en js, en s’appuyant d’avantage sur des appels aux widgets natifs pour Titanium, et d’avantage sur des widgets pur javascript pour PhoneGap (avec l’aide jquery mobile ou Sencha Touch). Cette approche convient mieux à mes ambitions limitées (je ne vais pas coder un jeu vidéo ultra performant). Mais la surcouche javascript nécessite d’être prudent au niveau des ressources, ceux qui se plaignent des fuites mémoire devraient savoir que le javascript doit être manipulé sagement.

Restez Zen, c’est complexe il faut prendre son temps pour comprendre les choses.

Written by macadames

17, février 2012 à 1:17

Publié dans Uncategorized

Tagged with , ,

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

%d blogueurs aiment cette page :