InstallationInstallation sur PC/MACUn programme java (version pc/mac) est un fichier .jar qui se copie dans un répertoire, et qui se lance en double cliquant dessus ou par la commande java -jar nom.jar Il vous faut avoir installé le dernier interpréteur java de chez sun/oracle. Installation sur téléphoneIl faut que vote téléphone soit équipé de Java MID 2.0 CLDC 1.0 ou mieux. L'installation sur portables est plutôt conçue pour télécharger des jeux payants. Vous appelez un numéro payant, et le jeu est téléchargé. Il existe généralement des utilitaires pour installer un jeu avec un cable usb ou une connexion bluetooth. L'utilitaire est parfois fourni avec le téléphone, parfois il faut en trouver un sur internet. Sur samsung, il faut
Il existe aussi une procédure tarabiscotée :
L'environnement NetBeans s'est révélé le plus facile, pour exploiter le SDK 3.0 pour mobile de SUN et pour l'IHM de la version PC Je n'ai pas trouvé comment faire via eclipse, l'environnement numéro 1 pour java. Ce n'est pas SUN qui fait les interpréteurs Java sur téléphone, et les implémentations sont vraiment très différentes, rendant difficile la compatibilité. Installation sur smartphone, pocket pcSun/Oracle ne fournit pas d'interpréteur pour téléphone/smartphone. Votre fabriquant a généralement acheté auprès d'une société spécialisée un interpréteur java, et vous n'avez plus qu'à copier le .jad et .jar sur votre smartphone et l'exécuter/ Parfois, ça se contente du .jar, parfois il faut le descriptif .jad Tous les smartphone ont un interpréteur java, par mimétisme avec les téléphones. C'est moins vrai pour les pocket pc. Si vous avez un pocket pc windows mobile sans interpréteur java, les fournisseurs d'interpréteur ne fournissent pas en directe, même si ça se trouve par la bande. Seul IBM vend un interpréteur java pour windows mobile. Il l'a fournit d'abord gratuitement, et en fait, sa version payante n'a pas bougée, alors télécharger la version gratuite J9 IBM DéveloppementJ'ai développé ces jeux avec Netbeans (version java incluant java me) Eclipse (libre) est plus répandu que netbeans (gratuit sun donc oracle) mais je n'ai pas trouvé comment utiliser facilement le kit javame de sun sous eclipse. Certains semble utiliser d'autres kits. D'autre part, j'ai trouvé le constructeur d'ihm sous netbeans plus pratique que ce que j'ai trouvé sous eclipse. Java Mobile Edition est une version réduite de Java. Il est possible de développer le moteur de votre jeu en se restreignant à cette version réduite, puis à copier les sources communs dans le projet javaMe et java Standard Edition. J'ai écrit quelques modules java proposant la même interface dans les deux versions pour que le moteur commun puisse les exploiter, je les ai mis dans un package sys, que je copie dans chacun de mes jeux dans les deux versions.
Développer en JavaMECréez un projet de type JavaME/Mobile application sans HelloMidlet. de type MID 2.0 CLDC 1.0 pour le maximum de portabilité. Je n'utilise pas les midlets designer graphiques ni le game builder graphique car ils ne sont pas assez souples. Je crée un package pour le moteur commun de mon jeu et un package hmi pour ce qui est spécifique javaME. Les écrans téléphone et pc et le mode d'action clavier ou souris font que les principes HMI sont parfois assez différents entre les deux versions. Ajouter un midlet C'est le moteur de démarrage de l'application, il comporte une form qui me sert de dialogue de demarrage, voire de dialogue de jeu si le jeu est statique. Il faut créer les objets du dialogues
Développer en javaSECréez un projet de type Java/Java Desktop Application Cette fois-ci j'utilise le designer graphique pour bibliothèque swing/awt, et je trace en utilisant les primitives Graphics dans les java jpanel Je range tout dans le package HMI de même nom que la version ME Ca me permet d'avoir des sources java de même interface, créant des objets images par jpanel ou sprite ou tiled layer selon les cas. Pour générer un jar comportant le code des librairie, ajoutez au fichier build.xml les lignes suivantes, juste avant la dernière ligne /project Il faudra ensuite après avoir généré le .jar sans librairie, aller dans l'onglet fichier du projet netbeans, fichier xml, sélectionner la cible package-for-store, click droit, exécuter une cible
<target name="package-for-store" depends="jar">
<!-- Change the value of this property to be the name of your JAR, minus the .jar extension. It should not have spaces. <property name="store.jar.name" value="MyJarName"/> --> <property name="store.jar.name" value="BatNavSe"/>
<!-- don't edit below this line --> <property name="store.dir" value="store"/> <property name="store.jar" value="${store.dir}/${store.jar.name}.jar"/> <echo message="Packaging ${application.title} into a single JAR at ${store.jar}"/> <delete dir="${store.dir}"/> <mkdir dir="${store.dir}"/> <jar destfile="${store.dir}/temp_final.jar" filesetmanifest="skip"> <zipgroupfileset dir="dist" includes="*.jar"/> <zipgroupfileset dir="dist/lib" includes="*.jar"/> <manifest> <attribute name="Main-Class" value="${main.class}"/> </manifest> </jar> <zip destfile="${store.jar}"> <zipfileset src="${store.dir}/temp_final.jar" excludes="META-INF/*.SF, META-INF/*.DSA, META-INF/*.RSA"/> </zip> <delete file="${store.dir}/temp_final.jar"/> </target> </project> Développer pour androidPas simple d'installer le kit android sous netbeans. Il faut bien suivre les étapes, d'abord bien installer le kit android et ses simulateurs, puis le relier à netbeans. Je ne me rappelle plus comment je m'en suis sorti, désolé. voici un guide après avoir installé le kit android il faut installer le plugin android pour netbean (source pluggins http://kenai.com/downloads/nbandroid/updates.xml ) si vous avez la dernière version du sdk, il faut copier le sous répertoire platform-tools du répertoire d'installation du sdk dans tools, sinon il ne trouvera pas le debugger Trucs et astuces de développement sous android ici Pour voir les traces de votre programme, il faut lancer la console de debugging dbms à trouver sous tools du kit android les traces peuvent écrire via import android.util.Log; Log.v|d|i|w|e("emetteur", "message"); mais le system.out s'y affiche également en affichant l'émetteur système
Partage de codeIl est finalement possible de partager du code entre Java ME et Java SE. Il faut sous netbeens créer une bibliothèque de type Java ME mobile classe librairie (les librairies Java SE sont refusées par Java ME mais pas l'inverse Cette librairie peut ensuite être indiquée à la fois dans le projet Java ME et le projet Java SE, sous forme de jar. Dans le projet ME, cochez la case package pour que le code de la librairie se retrouve dans le jar final. Générer le jar de la librairie, puis celui du projet ME et SE utilisateurs. Si cette librairie est dépendante d'une autre qui existe en deux versions différentes, ME et SE, référencez-là en version ME, mais sans cocher la case package, pour qu'elle ne se retrouve pas dans le jar généré. Pour maximaliser le partage de code, créer aussi deux bibliothèques Java, dont le code ME et SE sont différents, mais de même interface. La librairie ME est de type Java ME mobile classe et la librairie SE de type Java bibliothèque de classes java. BluetoothLa programmation bluetooth sur mobile se programme en utilisant l'api jsr 182 J'ai adapté une librairie trouvée sur le net que je diffuserai bientôt. Sous windows, il existe une implémentation gratuite, bluecove, version 2.1 diffusée sous forme de .jar à ajouter dans les bibliothèques du projet. Il intègre une dll pour windows. Sous windows 64 bits, il faut prendre la version snapshot 2.1.1 qui comporte une dll intelbtx_x64.dll nécessaire Il existe aussi une version windows ce, sous l'interpréteur J9 IBM la ligne de commande d'appel de l'interpréteur doit être modifié pour charger la librairie, mais je ne l'ai pas testé |
|