Czy można stworzyć całą aplikację przy użyciu JavaFX i uruchomić ją na iOS, Android lub Windows Phone 8 bez pisania kodu specyficznego dla platformy?
Czy można stworzyć całą aplikację przy użyciu JavaFX i uruchomić ją na iOS, Android lub Windows Phone 8 bez pisania kodu specyficznego dla platformy?
Odpowiedzi:
Odpowiedź firmy Invariant jest dobrym źródłem informacji o tym, jak wszystko się zaczęło i jaki był stan JavaFX na urządzeniach wbudowanych i mobilnych na początku 2014 r. Jednak od tego czasu wiele się zmieniło, a użytkownicy, którzy natkną się na ten wątek, nie otrzymują zaktualizowanych informacji.
Większość moich punktów jest związana z odpowiedzią Invariant, więc proponuję najpierw przez nią przejść.
Najpierw złe wieści:
A teraz kilka dobrych wiadomości:
Jeśli nie jesteś majsterkowiczem, proponuję zainstalować wtyczkę IDE na swoim ulubionym IDE i zacząć.
Większość dokumentacji dotyczącej rozpoczęcia pracy można znaleźć tutaj, a niektóre przykłady można znaleźć tutaj .
Tak, możesz uruchomić aplikację JavaFX na iOS, Androidzie, komputerze stacjonarnym, RaspberryPI (nie ma jeszcze systemu Windows8 Mobile).
Praca w akcji:
Zrobiliśmy to! Projekt multimedialny JavaFX8 na iPad, Android, Windows i Mac!
Demo Ensemble8 Javafx8 na Androida
Moja przykładowa aplikacja JavaFX działająca na Raspberry Pi
Moja przykładowa aplikacja działa na Androidzie
Zasoby deweloperskie:
Android:
Tworzenie i wdrażanie aplikacji JavaFX na Androida
iOS:
Wsparcie NetBeans dla JavaFX dla iOS jest wyłączone!
Stwórz aplikację JavaFX + iOS z narzędziami Clipse RoboVM + e (fx) w 10 minut
Jeśli masz zamiar tworzyć poważne aplikacje, tutaj znajdziesz więcej informacji
Różne:
Obecnie lista priorytetów Oracle dla JavaFX to Desktop (Mac, Windows, Linux) i Embedded (Raspberry Pi, Beagle Board itp.) Dla iOS / Android Oracle wykonał większość ciężkiej pracy i opnesourcingu javafxports tych platform w ramach OpenJFX, ale tam is no JVM z oracle dla ios / android. Społeczność łączy wszystko razem, uzupełniając brakujący element (JVM) dla ios / android, Społeczność poczyniła duże postępy w uruchamianiu JavaFX na ios ( RoboVM) / android ( DalvikVM ). Jeśli chcesz, możesz także wnieść swój wkład w społeczność, sponsorując ( zostań sponsorem RoboVM ) lub zacznij tworzyć aplikacje i zgłaszać problemy.
Edycja 23.06.2014:
Johan Vos stworzył witrynę internetową dla portów javafx JavaFX na telefony komórkowe i tablety. Sprawdź to, aby uzyskać aktualne informacje
Oracle JavaFX z Java SE obsługuje tylko OS X (macOS), GNU / Linux i Microsoft Windows . Na tych platformach aplikacje JavaFX są zwykle uruchamiane na JVM z Java SE lub OpenJDK.
Istnieje również projekt JavaFXPorts , który jest projektem open source sponsorowanym przez firmę zewnętrzną . Ma na celu przeniesienie biblioteki JavaFX na Androida i iOS.
W systemie Android ta biblioteka może być używana jak każda inna biblioteka Java; kodu bajtowego JVM jest kompilowany do kodu bajtowego Dalvik . To właśnie mają na myśli ludzie, mówiąc, że „Android obsługuje Javę”.
Na iOS sytuacja jest nieco bardziej złożona, ponieważ ani Java SE, ani OpenJDK nie obsługują urządzeń mobilnych Apple. Do niedawna jedyną rozsądną opcją było użycie wyprzedzającego kompilatora Java RoboVM dla iOS. Niestety 15 kwietnia 2015 roku projekt RoboVM został zamknięty .
Jedną z możliwych alternatyw jest Multi-OS Engine Intela . Do niedawna była to technologia zastrzeżona, ale 11 sierpnia 2016 roku była to technologia open source . Chociaż możliwe jest skompilowanie aplikacji JavaFX na iOS przy użyciu implementacji JavaFX JavaFXPorts, jak dotąd nie ma na to dowodów. Jak widać, sytuacja dynamicznie się zmienia i miejmy nadzieję, że ta odpowiedź zostanie zaktualizowana, gdy pojawią się nowe informacje.
Z Windows Phone sprawa jest prosta: nie ma żadnego wsparcia dla JavaFX.
Możliwy. Możesz także uprawiać sport komercyjny.
JavaFXPorts to nazwa projektu open source prowadzonego przez Gluon, który rozwija kod niezbędny do tego, aby Java i JavaFX działały dobrze na urządzeniach mobilnych i wbudowanych. Celem tego projektu jest wniesienie jak największego wkładu w projekt OpenJFX, gdzie tylko jest to możliwe, a gdy nie jest to możliwe, utrzymanie minimalnej liczby zmian niezbędnych do realizacji celów JavaFXPorts. Gluon pobiera kod źródłowy JavaFXPorts i kompiluje go do postaci plików binarnych gotowych do wdrożenia na iOS, Android i wbudowany sprzęt. Kompilacje JavaFXPorts są bezpłatnie dostępne na tej stronie dla wszystkich programistów.