क्या iOS, Android या विंडोज फोन 8 पर JavaFX एप्लिकेशन चलाना संभव है?


105

क्या कोई प्लेटफ़ॉर्म-विशिष्ट कोड लिखे बिना JavaFX का उपयोग करके संपूर्ण एप्लिकेशन विकसित कर सकता है और iOS, Android या Windows Phone 8 पर इसे चला सकता है?


1
मुझे ऐसा नहीं लगता। यहां देखें: news.kynosarges.org/2013/10/10/javafx-on-ios-android
विक्टर के।

1
Oracle ने ADF मोबाइल का विकास किया। इसे देखो। यह iOS और android को सपोर्ट करता है।
अलेक्जेंडर किरोव

बस www पर javafxports शब्द के लिए देखो। Javafx की अधिकांश सुविधाएँ विंडोज़ / एंड्रॉइड / iOS पर ठीक काम करती हैं। इस समय, एंड्रॉइड पर अभी तक काम नहीं करने वाली कुछ विशेषताएं हैं जैसे: Task.cancel () या अंतर्राष्ट्रीय यूनिकोड वर्ण, या fx मीडिया प्लेयर, आदि
Amin

जवाबों:


61

पृष्ठभूमि

2014 के आरंभ में एम्बेडेड और मोबाइल पर JavaFX की स्थिति क्या थी और क्या है, इसके लिए Invariant का जवाब एक अच्छा संसाधन है। लेकिन, तब से बहुत कुछ बदल गया है और इस थ्रेड पर ठोकर खाने वाले उपयोगकर्ताओं को अद्यतन जानकारी नहीं मिलती है।

मेरे अधिकांश बिंदु इन्वारिएंट के उत्तर से संबंधित हैं, इसलिए मैं पहले इसके माध्यम से जाने का सुझाव दूंगा।

मोबाइल / एंबेडेड पर जावाएफएक्स की वर्तमान स्थिति

पहले कुछ बुरी खबरें:

अब, कुछ अच्छी खबरें:

  • JavaFX अभी भी Android, iOS और अधिकतर एंबेडेड डिवाइस पर चलता है
  • Android, iOS और एम्बेडेड उपकरणों के लिए JavaFXPorts SDK को यहां से डाउनलोड किया जा सकता है
  • JavaFXPorts परियोजना अभी भी संपन्न हो रही है और मोबाइल उपकरणों पर JavaFX को चलाना पहले से कहीं अधिक आसान है, सभी IDE प्लगइन्स के लिए धन्यवाद जो इन SDK के शीर्ष पर बनाया गया है और आपको कुछ ही मिनटों में बिना किसी SDK को स्थापित किए बिना शुरू हो जाता है।
  • JavaFX 3D अब मोबाइल उपकरणों पर समर्थित है
  • मोबाइल डेवलपर्स के लिए Java 9 समर्थन को सक्षम करने वाले RoboVM को बदलने के लिए GluonVM । हां, आपने इसे सही सुना।
  • सभी प्रमुख मोबाइल प्लेटफार्मों पर JDK का समर्थन करने के लिए Oracle द्वारा मोबाइल प्रोजेक्ट लॉन्च किया गया है। इसे JavaFX को भी समर्थन करना चाहिए;)

शुरुआत कैसे करें

यदि आप DIY प्रकार के नहीं हैं, तो मैं आपके पसंदीदा IDE पर IDE प्लगइन स्थापित करने और आरंभ करने का सुझाव दूंगा।

आरंभ करने के तरीके के अधिकांश दस्तावेज यहां देखे जा सकते हैं और कुछ नमूने यहां देखे जा सकते हैं


मुझे यकीन नहीं है कि जब आपने पिछली बार JavaFX का इस्तेमाल किया था, लेकिन JavaFX 8 में बहुत सुधार हुए हैं। बहुत कुछ शुरुआती JavaFXPorts से Gluon Mobile में भी बदल गया है।
इटाचीउचिहा

इस अपडेट के लिए धन्यवाद। त्वरित प्रश्न, क्या JavaFXPorts व्यावसायिक उद्देश्यों के लिए उपयोग करने के लिए स्वतंत्र है (पुस्तकालय का उपयोग करते हुए, इसे बदलकर नहीं)? मेरे पास एक जावाएफएक्स कोडबेस है जिसे मैं किसी भी तरह एंड्रॉइड में एकीकृत करने की उम्मीद कर रहा हूं। ग्लोन मोबाइल एक नि: शुल्क परीक्षण प्रदान करता है, लेकिन मुझे एक स्थायी समाधान की आवश्यकता है। क्या JavaFXPorts (ग्लूऑन मोबाइल नहीं) समाधान है? कृपया स्पष्ट करें
Nova

@ नोवा हाय। हां, JavaFXPorts GPLv2 + CLASSPATH अपवाद के अंतर्गत है , इसलिए आप इसे बिना किसी चिंता के अपने प्रोजेक्ट में उपयोग कर सकते हैं। लेकिन, चूंकि JavaFXPorts आपको केवल एक नंगे न्यूनतम समर्थन (कोई आईडीई समर्थन + कोई मोबाइल नियंत्रण नहीं देता है) देता है, इसलिए मुझे इसे कुछ वाणिज्यिक के लिए चुनने में संदेह होगा। ग्लूऑन मोबाइल का उपयोग करने के लिए स्वतंत्र है, इसमें बस एक नाग स्क्रीन है जब आपका आवेदन शुरू होता है (मुफ्त संस्करण के लिए)। लेकिन, जब आपका ऐप शुल्क देकर प्रसिद्ध हो जाता है, तो आप इससे छुटकारा पा सकते हैं :)
इटचीउचिहा

@ ItachiUchiha जो आशाजनक लगता है! एक आखिरी सवाल: यहां पाए जाने वाले ग्लोन मोबाइल उत्पादों की तुलना नाग स्क्रीन दिखाती है, जो फ्री टियर और इंडी टायर के बीच एकमात्र अंतर है। क्या यह मान लेना सुरक्षित है कि मैं असीमित उपयोग के लिए, व्यावसायिक उपयोग के लिए मुफ्त संस्करण का उपयोग कर सकता हूं? के रूप में, कोई समाप्ति तिथि नहीं? मैं नाग स्क्रीन को तब तक संभाल सकता हूं जब तक कि फंड्स रोल में नहीं हो जाते हैं :) स्पष्ट करने के लिए धन्यवाद
Nova

1
क्षमा करें, एक और प्रश्न: मेरा JavaFX कोड 20,000+ लाइनों के साथ 90% पूर्ण है। क्या मैं अभी भी ग्लूऑन मोबाइल को अपने कोडबेस में एकीकृत कर सकता हूं ... या क्या मुझे एक ही लाइन लिखने से पहले, शुरुआत से ही इसका उपयोग करने की आवश्यकता है? Thx
Nova

75

हां, आप iOS, Android, डेस्कटॉप, रास्पबेरीपीआई (अभी तक कोई विंडोज़ 8 मोबाइल नहीं) पर जावाएफएक्स एप्लिकेशन चला सकते हैं।

कार्य में कार्य:

हमने कर दिया! IPad, Android, Windows और Mac पर JavaFX8 मल्टीमीडिया प्रोजेक्ट!

हर जगह JavaFX

एन्सेम्बल 8 जावाफैक्स 8 एंड्रॉइड डेमो

मेरा नमूना JavaFX रास्पबेरी पाई पर चल रहा है

मेरा नमूना अनुप्रयोग Android पर चल रहा है

IOS और Android पर JavaFX

देव संसाधन:

एंड्रॉयड :

Android पर JavaFX एप्लिकेशन का निर्माण और तैनाती

iOS:

IOS के लिए JavaFX के लिए NetBeans सपोर्ट आउट है!

10 मिनट में RoboVM + e (fx) क्लिपस टूल्स के साथ JavaFX + iOS ऐप विकसित करें

यदि आप गंभीर अनुप्रयोगों को विकसित करने जा रहे हैं तो यहां कुछ और जानकारी है

विविध:

वर्तमान में जावाएफ़एक्स के लिए ओरेकल प्राथमिकता सूची में डेस्कटॉप (मैक, विंडोज़, लिनक्स) और एंबेडेड (रास्पबेरी पाई, बीगल बोर्ड आदि) हैं। iOS / एंड्रॉइड ओरेकल ने इन प्लेटफार्मों के ओपनजेएफएक्स के हिस्से के रूप में इन प्लेटफार्मों के अधिकांश हार्डवर्क और ऑप्सनॉर्स्ड जेवाफैक्सपोर्ट किए हैं, लेकिन ios / android के लिए ओरेकल से कोई JVM नहीं है। ios / android के लिए लापता टुकड़ा (JVM) भरकर सभी मिलकर काम कर रहे हैं। समुदाय ने ios ( RoboVM) / android ( DalvikVM ) पर JavaFX चलाने में अच्छी प्रगति की है । यदि आप चाहते हैं कि आप प्रायोजन करके भी समुदाय में योगदान कर सकते हैं ( रोबो वीएम प्रायोजक बनें ) या एप्लिकेशन विकसित करना और मुद्दों की रिपोर्ट करना शुरू करें।

संपादित करें 06/23/2014:

जोहान वॉस ने मोबाइल और टैबलेट्स पर javafx बंदरगाहों JavaFX के लिए एक वेबसाइट बनाई , अद्यतन जानकारी के लिए इसे देखें।


3
RoboVM में सबसे अच्छा लोगो है। यह एक पक्षी है, यह एक अंगूठे-अप है, नहीं यह एक विमान है!
अलेक्सांद्र डबिन्सकी

आप उस लिंक को जोड़ सकते हैं: youtube.com/watch?v=a3dAteWr40k&feature=yuu.be; ;-)
assylias

@ विभिन्न उपकरणों के लिए माइक्रोफोन, एक्सेलेरोमीटर, जीपीएस, कैमरा और इतने पर एकीकरण कितनी अच्छी तरह है?
एमएमएम

पहला लिंक मृत है। संग्रहीत संस्करण: web.archive.org/web/20141008171951/http://…
Miscreant

4

डेस्कटॉप: प्रथम श्रेणी का समर्थन

जावा एसई से ओरेकल जावाएफएक्स केवल ओएस एक्स (मैकओएस), जीएनयू / लिनक्स और माइक्रोसॉफ्ट विंडोज का समर्थन करता है । इन प्लेटफार्मों पर, JavaFX एप्लिकेशन आमतौर पर जावा SE या OpenJDK से JVM पर चलाए जाते हैं।

Android: काम करना चाहिए

एक JavaFXPorts परियोजना भी है , जो एक तृतीय-पक्ष द्वारा प्रायोजित एक ओपन-सोर्स प्रोजेक्ट है । इसका उद्देश्य जावाएफएक्स लाइब्रेरी को एंड्रॉइड और आईओएस में पोर्ट करना है ।

एंड्रॉइड पर, इस लाइब्रेरी को किसी अन्य जावा लाइब्रेरी की तरह इस्तेमाल किया जा सकता है; JVM बाईटकोड Dalvik बाईटकोड को संकलित किया गया है । यह कहने का अर्थ है कि लोग "एंड्रॉइड जावा चलाता है"।

iOS: स्थिति स्पष्ट नहीं

IOS पर, स्थिति थोड़ी अधिक जटिल है, क्योंकि न तो Java SE और न ही OpenJDK Apple मोबाइल उपकरणों का समर्थन करता है। अभी हाल तक, एकमात्र समझदार विकल्प iOS के लिए रोबो वीएम के आगे-आगे जावा कंपाइलर का उपयोग करना था । दुर्भाग्य से, 15 अप्रैल 2015 को, रोबो वीएम परियोजना को बंद कर दिया गया था

एक संभावित विकल्प इंटेल का मल्टी-ओएस इंजन है । हाल तक, यह एक मालिकाना तकनीक थी, लेकिन 11 अगस्त 2016 को यह खुली-खट्टी थी । हालाँकि यह JavaFXPorts के JavaFX कार्यान्वयन का उपयोग करके एक iOS JavaFX ऐप को संकलित करना संभव हो सकता है, लेकिन अभी तक इसके लिए कोई सबूत नहीं है। जैसा कि आप देख सकते हैं, स्थिति गतिशील रूप से बदल रही है, और नई जानकारी उपलब्ध होने पर यह उत्तर उम्मीद से अपडेट किया जाएगा।

विंडोज फोन: कोई समर्थन नहीं

विंडोज फोन के साथ यह सरल है: किसी भी प्रकार का जावाएफएक्स समर्थन नहीं है।


2

मुमकिन। आप व्यावसायिक खेल भी प्राप्त कर सकते हैं।

JavaFXPorts Gluon द्वारा बनाए गए ओपन सोर्स प्रोजेक्ट का नाम है जो मोबाइल और एम्बेडेड हार्डवेयर पर अच्छी तरह से चलाने के लिए जावा और JavaFX के लिए आवश्यक कोड विकसित करता है। इस परियोजना का लक्ष्य OpenJFX परियोजना में जहाँ भी संभव हो, योगदान देना है, और जब भी संभव हो, JavaFXPorts के लक्ष्यों को सक्षम करने के लिए आवश्यक न्यूनतम परिवर्तनों को बनाए रखना है। Gluon JavaFXPorts स्रोत कोड लेता है और इसे iOS, Android और एम्बेडेड हार्डवेयर पर तैनाती के लिए तैयार बायनेरिज़ में संकलित करता है। JavaFXPorts बिल्ड सभी डेवलपर्स के लिए इस वेबसाइट पर स्वतंत्र रूप से उपलब्ध हैं।

http://gluonhq.com/labs/javafxports/


-4
  1. हाँ, आप इसे iOS और Android पर चला सकते हैं (Win8 समर्थित नहीं है!
  2. वेब-ऐप के रूप में कोई तैनाती काम नहीं करती है
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.