Peut-on développer une application complète à l'aide de JavaFX et l'exécuter sur iOS, Android ou Windows Phone 8, sans écrire de code spécifique à la plate-forme?
Réponse de l'invariant est une bonne ressource pour savoir comment tout a été démarré et quel était l'état de JavaFX pour Embedded et Mobile début 2014. Mais, beaucoup a changé depuis et les utilisateurs qui trébuchent sur ce fil ne reçoivent pas les informations mises à jour.
La plupart de mes remarques sont liées à la réponse de l'Invariant, je vous suggère donc de l'examiner en premier.
Quelques mauvaises nouvelles d'abord:
Maintenant, quelques bonnes nouvelles:
Si vous n'êtes pas du genre DIY, je vous suggère d'installer le plug-in IDE sur votre IDE favori et de commencer.
La plupart de la documentation sur la façon de commencer peut être trouvée ici et quelques exemples peuvent être trouvés ici .
Oui, vous pouvez exécuter une application JavaFX sur iOS, Android, un ordinateur de bureau, RaspberryPI (pas encore de Windows 8 mobile).
Travail en action:
Nous l'avons fait! Projet multimédia JavaFX8 sur iPad, Android, Windows et Mac!
Ensemble8 Javafx8 Android Démo
Mon exemple d'application JavaFX s'exécutant sur Raspberry Pi
Mon exemple d'application fonctionnant sur Android
Ressources de développement:
Android:
Construction et déploiement d'applications JavaFX sur Android
iOS:
Le support NetBeans pour JavaFX pour iOS est sorti!
Développer une application JavaFX + iOS avec les outils Clipse RoboVM + e (fx) en 10 minutes
Si vous souhaitez développer des applications sérieuses, voici quelques informations supplémentaires.
Divers:
Actuellement, la liste des priorités pour JavaFX Oracle est Desktop (Mac, Windows, Linux) et intégré (Raspberry Pi, Beagle Board, etc.) .Pour iOS/Android, Oracle a fait la plupart des javafxports acharnés et opnésourisés de ces plates-formes dans le cadre d’OpenJFX, mais il n’existe pas de machine virtuelle Java d’Oracle pour ios/Android. 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 les problèmes.
Éditer 23/06/2014:
Johan Vos a créé un site Web pour les ports javafx JavaFX sur mobiles et tablettes , vérifiez-le pour obtenir des informations mises à jour ..
Oracle JavaFX à partir de Java SE ne prend en charge que OS X (macOS), GNU/Linux et Microsoft Windows . Sur ces plates-formes, les applications JavaFX sont généralement exécutées sur la machine virtuelle Java à partir de Java SE ou d'OpenJDK.
Il existe également un projet JavaFXPorts , qui est un projet à source ouverte parrainé par un tiers . Son objectif est de 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 le bytecode de la JVM est compilé en bytecode de Dalvik . C'est ce que les gens entendent par "Android exécute Java".
Sur iOS, la situation est un peu plus complexe, car ni Java SE ni OpenJDK ne prennent en charge Apple appareils mobiles. Jusqu'à récemment, la seule option judicieuse était d'utiliser le compilateur RoboVM _ Java pour iOS. Malheureusement, le 15 avril 2015, le projet RoboVM a été arrêté .
Une alternative possible est le Multi-OS Engine d'Intel. Jusqu'à récemment, il s'agissait d'une technologie propriétaire, mais le 11 août 2016, elle était en source ouverte . Bien qu'il soit possible de compiler une application JavaFX iOS à l'aide de l'implémentation JavaFX de JavaFXPorts, rien ne permet de le prouver à ce jour. Comme vous pouvez le constater, la situation évolue de manière dynamique et cette réponse sera mise à jour, espérons-le, lorsque de nouvelles informations seront disponibles.
Avec Windows Phone, c'est simple: il n'y a pas de support JavaFX d'aucune sorte.
Possible. Vous pouvez aussi faire du sport commercial.
JavaFXPorts est le nom du projet open source maintenu par Gluon qui développe le code nécessaire à l'exécution de Java et de JavaFX sur les matériels mobiles et incorporés. Le but de ce projet est de contribuer autant que possible au projet OpenJFX dans la mesure du possible, et lorsque cela n’est pas possible, de maintenir le nombre minimal de modifications nécessaires à la réalisation des objectifs de JavaFXPorts. Gluon prend le code source JavaFXPorts et le compile en binaires prêts à être déployés sur iOS, Android et du matériel intégré. Les versions de JavaFXPorts sont disponibles gratuitement sur ce site Web pour tous les développeurs.