La version 3 de NME est enfin disponible sur **haxelib **!!
Le rêve de tout développeur est en train de se réaliser : developper une application, et la publier sur toutes les plates formes ! C’est enfin possible grâce à **haXe **et NME.
Quelques précisions
Avant d’aller plus loin, voyons un peu de quoi il s’agit. Si vous êtes familié avec Haxe, vous ne l’êtes peut etre pas avec NME.
**NME **(pour Neko Media Engine) est un framework open source permettant de publier une application vers tout type de plate forme (windows, linux, android, ios, et j’en passe). Ce framework s’appui sur le langage haXe, ce qui permet d’avoir une syntaxe proche de l’Actionscript. **NME **s’occupe ensuite de mapper tout ca, et de publier pour la plate forme voulue.
Nous ne nous interresserons pour le moment, qu’à la plate forme android.
Voici un schéma permettant de comprendre le fonctionnement :
(source: www.haxenme.org)
NME va utiliser le compilateur haxe, avec la librairie **HXCPP **pour générer les classes C++. La compilation va se poursuivre via le SDK et le NDK Android.
Et pour terminer, en passant par une tache Ant, le processus de compilation va se terminer et lancer (si besoin) l’installation sur le périphérique Android.
Installation
Voici la liste des étapes à suivre pour avoir un environnement de travail fonctionnel. Je suis sous linux, mais sous n’importe quelle plate forme, l’approche reste à peu de chose prêt la même.
Tout d’abord, haxe : télécharger l’installeur sur le site haxe.org, décompresser puis :
|
|
Il nous faut maintenant récuperer le SDK et le NDK android (menu de gauche pour le NDK) :
|
|
Le JDK java :
|
|
Et enfin, ant
|
|
Une fois que tout est téléchargé/installé, nous devons setter les variables d’environnements :
|
|
Petite application de test
Le code :
|
|
Le fichier de configuration (myConfigFile.nmml) :
|
|
Lancer la compilation :
|
|
L’option test correspond à build suivi de run, mais il est également possible de ne lancer que l’une de ces options.
Pour tester l’application en flash, suffit de remplacer android par flash.