Peut-on développer une application entière en utilisant JavaFX et l'exécuter sur iOS, Android ou Windows Phone 8, sans écrire de code spécifique à la plateforme?
Peut-on développer une application entière en utilisant JavaFX et l'exécuter sur iOS, Android ou Windows Phone 8, sans écrire de code spécifique à la plateforme?
Réponses:
La réponse d'Invariant est une bonne ressource pour savoir comment tout a commencé et quel était l'état de JavaFX sur embarqué et mobile au début de 2014. Mais, beaucoup de choses ont changé depuis et les utilisateurs qui trébuchent sur ce fil ne reçoivent pas les informations mises à jour.
La plupart de mes points sont liés à la réponse d'Invariant, je suggère donc de la parcourir d'abord.
Quelques mauvaises nouvelles d'abord:
Maintenant, quelques bonnes nouvelles:
Si vous n'êtes pas du genre bricoleur, je vous suggère d'installer le plugin IDE sur votre IDE préféré et de commencer.
La plupart de la documentation sur la façon de commencer peut être trouvée ici et certains des exemples peuvent être trouvés ici .
Oui, vous pouvez exécuter l'application JavaFX sur iOS, Android, bureau, RaspberryPI (pas encore de mobile Windows8).
Travailler en action:
Nous l'avons fait! Projet multimédia JavaFX8 sur iPad, Android, Windows et Mac!
Démo Android Ensemble8 Javafx8
Mon exemple d'application JavaFX fonctionnant sur Raspberry Pi
Mon exemple d'application fonctionnant sur Android
Ressources de développement:
Android :
Création et déploiement d'applications JavaFX sur Android
iOS:
Le support NetBeans pour JavaFX pour iOS est sorti!
Développez une application JavaFX + iOS avec les outils de clipage RoboVM + e (fx) en 10 minutes
Si vous comptez développer des applications sérieuses, voici quelques informations supplémentaires
Divers:
À l'heure actuelle, pour JavaFX, la liste des priorités d'Oracle est Desktop (Mac, Windows, Linux) et Embedded (Raspberry Pi, Beagle Board, etc.) . n'est pas une JVM d'Oracle pour ios / android. La communauté rassemble tout en remplissant la pièce manquante (JVM) pour ios / android, la communauté a bien progressé dans l'exécution de JavaFX sur ios ( RoboVM) / android ( DalvikVM ). Si vous le souhaitez, vous pouvez également contribuer à la communauté en parrainant ( Devenir un sponsor RoboVM ) ou commencer à développer des applications et signaler des problèmes.
Modifier le 23/06/2014:
Johan Vos a créé un site Web pour les ports javafx JavaFX sur mobile et tablettes , vérifiez ceci pour obtenir des informations mises à jour.
Oracle JavaFX de Java SE prend en charge uniquement OS X (macOS), GNU / Linux et Microsoft Windows . Sur ces plates-formes, les applications JavaFX sont généralement exécutées sur JVM à partir de Java SE ou OpenJDK.
Il existe également un projet JavaFXPorts , qui est un projet open source sponsorisé par un tiers . Il vise à porter la bibliothèque JavaFX sur Android et iOS.
Sur Android, cette bibliothèque peut être utilisée comme n'importe quelle autre bibliothèque Java; le bytecode JVM est compilé en bytecode Dalvik . C'est ce que les gens veulent dire en disant que "Android exécute Java".
Sur iOS, la situation est un peu plus complexe, car ni Java SE ni OpenJDK ne prennent en charge les appareils mobiles Apple. Jusqu'à récemment, la seule option raisonnable était d'utiliser le compilateur Java RoboVM à l' avance pour iOS. Malheureusement, le 15 avril 2015, le projet RoboVM a été arrêté .
Une alternative possible est le moteur multi-OS d' Intel . Jusqu'à récemment, c'était une technologie propriétaire, mais le 11 août 2016, elle était open-source . Bien qu'il soit possible de compiler une application JavaFX iOS à l'aide de l'implémentation JavaFX de JavaFXPorts, il n'y a aucune preuve de cela jusqu'à présent. Comme vous pouvez le voir, la situation change de manière dynamique et cette réponse sera, espérons-le, mise à jour lorsque de nouvelles informations seront disponibles.
Avec Windows Phone, c'est simple: il n'y a aucun support JavaFX d'aucune sorte.
Possible. Vous pouvez également faire du sport commercial.
JavaFXPorts est le nom du projet open source maintenu par Gluon qui développe le code nécessaire pour que Java et JavaFX fonctionnent correctement sur du matériel mobile et embarqué. Le but de ce projet est de contribuer autant que possible au projet OpenJFX, et lorsque cela n'est pas possible, de maintenir le nombre minimal de modifications nécessaires pour activer les objectifs de JavaFXPorts. Gluon prend le code source JavaFXPorts et le compile dans des binaires prêts à être déployés sur iOS, Android et le matériel embarqué. Les versions JavaFXPorts sont disponibles gratuitement sur ce site Web pour tous les développeurs.