IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
logo

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.

SommairePlateformes embarqu�es et mobilesAndroid (8)
pr�c�dent sommaire suivant
 

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.

Mis � jour le 23 septembre 2014 bouye

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.

Mis � jour le 23 septembre 2014 bouye

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.

Mis � jour le 17 octobre 2014 bouye

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.

Mis � jour le 17 octobre 2014 bouye

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.

Mis � jour le 17 octobre 2014 bouye

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.

Mis � jour le 17 octobre 2014 bouye

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>

Mis � jour le 17 octobre 2014 bouye

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 !"); 
    } 
}

Mis � jour le 17 octobre 2014 bouye

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 �a


R�ponse � la question

Liens sous la question
pr�c�dent sommaire suivant
 

Les 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.