
FAQ JavaFXConsultez toutes les FAQ
Nombre d'auteurs : 4, nombre de questions : 507, derni�re mise � jour : 2 novembre 2016 Ajouter une question
Cette FAQ a �t� r�alis�e � partir des questions fr�quemment pos�es sur le forum JavaFX de http://java.developpez.com ainsi que l'exp�rience personnelle des auteurs.
Nous tenons � souligner que cette FAQ ne garantit en aucun cas que les informations qu'elle propose sont correctes. Les auteurs font leur maximum, mais l'erreur est humaine. Cette FAQ ne pr�tend pas non plus �tre compl�te. Si vous trouvez une erreur, ou que vous souhaitez nous aider en devenant r�dacteur, lisez ceci.
Sur ce, nous vous souhaitons une bonne lecture.
- Comment d�velopper pour Android ?
- Quels sont les pr�requis pour d�velopper pour Android ?
- Comment cr�er un projet JavaFX pour Android ?
- Comment compiler le projet JavaFX pour Android ?
- Comment transf�rer le fichier APK vers l'�mulateur Android ?
- J'ai l'erreur INSTALL_FAILED_NO_MATCHING_ABIS lors du transfert ?
- J'ai l'erreur INSTALL_FAILED_ALREADY_EXISTS lors du transfert ?
- Comment acc�der aux API Android ?
Note : le support de JavaFX sur Android est encore en phase pr�liminaire et exp�rimentale. Le code pr�sent� ici peut ne pas fonctionner correctement ou demander � �tre modifi� pour s'adapter aux derni�res �volutions.
En fait, vous n'allez pas d�velopper directement sur un p�riph�rique tournant sur Android : vous allez d�velopper et compiler vos applications sur votre machine de bureau ou un portable. C'est aussi sur cette machine que vous effectuerez les premiers tests pour v�rifier que votre application fonctionne.
Ensuite vous d�ploierez vos applications sur l��mulateur Android disponible dans le SDK pour Android de Google pour les tester et v�rifier que nous n'avez pas besoin de les alt�rer pour mieux s'adapter aux contraintes du p�riph�rique telles que son espace m�moire plus r�duit, son CPU peu puissant ou sa surface d'affichage restreinte. Il faudra �galement faire attention aux diff�rentes r�solutions d��cran disponibles en fonction des p�riph�riques cibl�s.
Si vous utilisez des senseurs disponibles sur le p�riph�rique tournant sur Android, c'est �galement sur l��mulateur Android que vous devez tester si votre programme peut y acc�der correctement. Par contre, vous devrez inclure les biblioth�ques n�cessaires � la compilation sur votre machine de d�veloppement.
Nous allons lister ici les pr�requis pour d�velopper pour Android.
C�t� machine de d�veloppement :
- une configuration mat�rielle et logicielle suffisante pour d�velopper des applications en Java. N'importe quel OS qui vous permet de d�velopper en Java conviendra ;
- un IDE permettant de d�velopper en Java ;
- le JDK appropri� pour votre machine de d�veloppement ;
- le
SDK pour Android de Google ;
- le
SDK JavaFX pour Dalvik ;
Apache ANT.
Commencez par cr�er un nouveau projet JavaFX dans votre IDE pr�f�r�. Vous pouvez commencer � coder votre application JavaFX comme � l�accoutum�e.
Compilez votre projet et, si vous n'utilisez pas de fonctionnalit�s ou d'API propres � Android, testez-le pour v�rifier qu'il fonctionne puis empaquetez-le dans un fichier JAR.
Note : l��tape suivante ne fonctionne pas sous Windows, semble-t-il � cause d'une limitation du SDK d'Android sur cette plateforme.
Sous Linux ou Mac OS X, cr�ez un fichier script similaire � celui-ci :
Code Bash : | S�lectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 | #!/bin/bash export JAVA_HOME=/usr/java/jre1.8.0_20 export ANDROID_SDK=$HOME/adt-bundle-linux-x86_64-20140702/sdk export JFX_SDK=$HOME/dalvik-sdk-8u20b3/dalvik-sdk export WORKDIR=$HOME/android-ports export PROJECT_PACKAGE=monpackage.monapp export PROJECT_NAME=MonApp export APP_HOME=$HOME/project/MonApp/dist export JFX_MAIN_CLASS=monpackage.monapp.MonApp export PATH=$ANDROID_SDK/tools:$PATH $JFX_SDK/android-tools/gradlew --info createProject -PDEBUG -PDIR=$WORKDIR/android -PPACKAGE=$PROJECT_PACKAGE -PNAME=$PROJECT_NAME -PANDROID_SDK=$ANDROID_SDK -PJFX_SDK=$JFX_SDK -PJFX_APP=$APP_HOME -PJFX_MAIN=$JFX_MAIN_CLASS |
Modifiez les variables d'environnement pour correspondre � ce que vous avez dans votre machine :
- JAVA_HOME - le r�pertoire du JRE ou du JDK, n�cessaire pour Gradle et ANT ;
- ANDROID_SDK - le chemin d�acc�s vers le SDK d'Android de Google ;
- JFX_SDK - le chemin d�acc�s vers le SDK JavaFX pour Dalvik ;
- WORKDIR - le r�pertoire o� le projet de votre port Androd sera g�n�r� ;
- PROJECT_PACKAGE - le package de votre application Android ;
- PROJECT_NAME - le nom de votre application Android ;
- APP_HOME - le r�pertoire contenant le fichier JAR de votre application ;
- JFX_MAIN_CLASS - la classe Application de votre programme JavaFX.
Puis ex�cutez ce script.
Si tout se passe bien, cela g�n�rera un nouveau projet Android dans le r�pertoire $WORKDIR/$PROJECT_NAME.
Note : le script g�n�rera une erreur si un projet Android existe d�j� dans le r�pertoire en question.
D�placez-vous dans le r�pertoire contenant le projet Android nouvellement cr��.
Ce projet peut �tre compil� avec les commandes suivantes :
Code Bash : | S�lectionner tout |
1 2 | export JAVA_HOME=/usr/java/jre1.8.0_20 ant clean debug |
Cela compilera un fichier nomm� $PROJECT_NAME-debug.apk dans le r�pertoire bin du projet Android.
Vous devez ensuite transf�rer ce fichier vers votre �mulateur ou votre p�riph�rique Android pour tester l'application.
Cette �tape fonctionne aussi bien sous Windows que Linux ou Mac OS X.
D�marrez votre �mulateur Android et patientez le temps de son chargement.
Ex�cutez alors les commandes suivantes :
Code Bash : | S�lectionner tout |
$ANDROID_SDK/platform-tools/adb -e install <chemin d�acc�s vers le fichier apk>
ou pour Windows :
Code CMD : | S�lectionner tout |
%ANDROID_SDK%\platform-tools\adb -e install <chemin d�acc�s vers le fichier apk>
Ceci transf�rera l'image de l'application vers l��mulateur actif.
Cette erreur signifie que votre machine virtuelle Android a �t� cr��e en utilisant un couple CPU/ABI, par exemple � Intel Atom (x86) �, qui n'est pas compatible avec celui pour lequel l'application a �t� compil�e. Essayez de cr�er une machine virtuelle utilisant le CPU/ABI compatible tel que � ARM (armeabi-v7a) � et retentez le transfert.
Cette erreur signifie que l'application est d�j� install�e sur la machine virtuelle. Vous devez la d�sinstaller avant de tenter de la transf�rer � nouveau.
Code Bash : | S�lectionner tout |
$ANDROID_SDK/platform-tools/adb -e uninstall <package de l'application>
Ou pour Windows :
Code CMD : | S�lectionner tout |
%ANDROID_SDK%\platform-tools\adb -e uninstall <package de l'application>
Pour pouvoir acc�der aux API Android, vous devez rajouter le fichier android.jar dans les d�pendances de votre projet. Ce fichier se trouve dans le r�pertoire platform/<version d'android> dans le SDK pour Android de Google.
Vous devez ensuite rajouter le fichier jfxdvk.jar dans les d�pendances de votre projet. Ce fichier se trouve dans le r�pertoire rt/lib/ext du SDK JavaFX pour Dalvik.
Il est ensuite possible d�acc�der aux API en manipulant la classe javafxports.android.FXActivity qui est en fait un Context Android et donc qui peut �tre fournie aux m�thodes de l'API qui en demandent un.
Par exemple, le code suivant permet d�interagir avec le lecteur NFC de l'appareil :
Code Java : | S�lectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | package monpackage.monapplication; import android.content.Context; import android.nfc.NfcAdapter; import android.nfc.NfcAdapter.ReaderCallback; import javafxports.android.FXActivity; [...] public final class Main extends Application implements ReaderCallback { @Override public void start(Stage primaryStage) throws Exception { final Context context = FXActivity.getInstance(); final NfcAdapter nfcAdapter = NfcAdapter.getDefaultAdapter(context); nfcAdapter.enableReaderMode(context , this, NfcAdapter.FLAG_READER_NFC_A, Bundle.EMPTY); [...] } @Override public void onTagDiscovered(Tag tag) { System.out.println ("D�couverte d'un tag !"); } } |
Proposer une nouvelle r�ponse sur la FAQ
Ce n'est pas l'endroit pour poser des questions, allez plut�t sur le forum de la rubrique pour �aLes sources pr�sent�es sur cette page sont libres de droits et vous pouvez les utiliser � votre convenance. Par contre, la page de pr�sentation constitue une �uvre intellectuelle prot�g�e par les droits d'auteur. Copyright � 2025 Developpez Developpez LLC. Tous droits r�serv�s Developpez LLC. Aucune reproduction, m�me partielle, ne peut �tre faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'� trois ans de prison et jusqu'� 300 000 � de dommages et int�r�ts.