2010-04-18 10 views
8

मैंने FlashBuilder में एक ब्राउज़र-तैनात पूर्ण-पाठ खोज ऐप विकसित किया जो दूरस्थ वेब-सर्वर के साथ RESTfully संचार करता है। यह सॉफ़्टवेयर एक छोटे से आला में फिट बैठता है - यह प्राचीन भाषाओं के साथ आधुनिक नहीं है, और इस पर कोई पैसा नहीं बनाने के लिए कोई रास्ता नहीं है लेकिन मैंने इसमें बहुत समय बिताया है।Google जीडब्ल्यूटी क्रॉस-ब्राउज़र समर्थन: क्या यह बीएस है?

अब ऐप्पल आईपैड पर फ्लैश की अनुमति नहीं देगा, मैं 100% जावास्क्रिप्ट समाधान की तलाश में हूं और जीडब्ल्यूटी पर विचार करने के लिए प्रेरित किया गया था। यह आशाजनक देखा, लेकिन एप्लिकेशन में से एक (नाम {हटाया} संभवतः मासूम की रक्षा करने के लिए) क्या GWT साथ किया जा सकता का एक तारकीय उदाहरण के रूप में अपनी वेबसाइट पर इस अस्वीकरण है "का प्रदर्शन किया" जा रहा है:

 
Your current web browser (Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) 
AppleWebKit/532.5 (KHTML, like Gecko) 
Chrome/4.1.249.1045 Safari/532.5) is not officially supported by 
{company and product name were here}. If you experience any problems using this site 
please install either Microsoft Internet Explorer 6+ or Mozilla Firefox 3.5+ 
before contacting {product name was here} Support. 

क्या देता है जब GWT ऐप्स क्रोम पर "आधिकारिक तौर पर" समर्थित नहीं होते हैं? क्रॉस-ब्राउज़र समर्थन के लिए आप क्या ग्रेड (ए, बी, सी, डी, एफ) जीडब्ल्यूटी को देंगे? ऐसे लोगों के लिए जो इस तरह के पत्र ग्रेड नहीं प्राप्त करते हैं, ए "उत्कृष्ट" और "एफ" विफलता है, और "सी" औसत है।

आपकी राय के लिए धन्यवाद।

उत्तर

11

सभी मूल जीडब्ल्यूटी विजेट क्रॉस-ब्राउज़र संगत हैं - यह Deferred Binding नामक किसी चीज़ द्वारा हासिल किया गया है (हमेशा नहीं, लेकिन सबसे बड़े अपराधियों के लिए;))। असल में, यह क्लाइंट का उपयोग कर रहे ब्राउज़र के आधार पर एक वर्ग के एक दूसरे के साथ एक निर्बाध "प्रतिस्थापन" की अनुमति देता है (यह स्वैप संकलन के दौरान किया जाता है)। यह सभी मानक-अनुरूप ब्राउज़रों के लिए एक विजेट लिखने की अनुमति देता है और फिर आपके लिए एक विशेष संस्करण प्रदान करता है-कौन जानता है (i12n और अन्य शांत चीजों के लिए स्थगित बाध्यकारी का भी उपयोग किया जाता है, जैसे dependency injection)। डिफरर्ड बाध्यकारी के बारे में एक और अच्छी बात यह है कि क्लाइंट केवल अपने ऐप के वेब ऐप विशिष्ट के संस्करण को डाउनलोड करता है। तो फ़ायरफ़ॉक्स/ओपेरा/क्रोम/वेबकिट उपयोगकर्ता को उन सभी अतिरिक्त हैक्स डाउनलोड करने की ज़रूरत नहीं है जो वेब ऐप को आईई पर काम करते हैं।

लंबी कहानी कम: GWT उपकरण प्रदान करता है/डेवलपर एक क्रॉस-ब्राउज़र वेब अनुप्रयोग बनाने के लिए इसका मतलब है (और यह बुनियादी विजेट कि से बाहर पार ब्राउज़र हैं प्रदान करके यथासंभव आसान है कि इस प्रक्रिया बनाने की कोशिश करता बॉक्स) - यह उन उपकरणों का उपयोग करने के लिए डेवलपर पर निर्भर है - या नहीं;)

पीएस: jQuery/mootools/etc के बारे में भी यही सवाल पूछा जा सकता है - यह क्यों है कि ये ढांचे सभी ब्राउज़रों पर काम करने का दावा करते हैं और फिर भी ऐसी कई साइटें/वेब ऐप्स हैं जो उनका उपयोग करती हैं और उन सभी ब्राउज़रों का समर्थन नहीं करती हैं? क्योंकि डेवलपर्स ने ऐसा चुना है। वेब एप्लिकेशन/साइट को अपंग करने के लिए यह संभव नहीं है कि यह एक मरने (उम्मीदवार) ब्राउज़र पर काम करता है।

+0

डिफरर्ड बाइंडिंग के बारे में जानकारी के लिए धन्यवाद। – Tim

+0

जीडब्ल्यूटी कैसे पता लगाता है कि कौन सा ब्राउज़र है? और मैं अपने उपयोगकर्ता एजेंट को कुछ कस्टम में बदलता हूं। – CMCDragonkai

+0

आंतरिक रूप से, यह शायद आपके उपयोगकर्ता एजेंट को देखता है (यदि आप सुनिश्चित करना चाहते हैं, तो स्रोतों की जांच करें)। जब विभिन्न ब्राउज़रों के अलग-अलग ब्राउज़रों के संस्करणों की सेवा करने की बात आती है, तो वे [डिफर्ड बाइंडिंग] का उपयोग करते हैं (http://www.gwtproject.org/doc/latest/FAQ_Client.html#What_is_Deferred_Binding?) ([डॉक्स] (http: // www.gwtproject.org/doc/latest/DevGuideCodingBasicsDeferred.html)) –

10

ऐप्स का जीडब्ल्यूटी हिस्सा वेबकिट ब्राउज़र (जैसे क्रोम और सफारी) पर बिल्कुल ठीक चलता है। अगर इस साइट के लेखकों ने वेबकिट पर ब्राउजर डिटेक्शन और फिक्र आउट करने का फैसला किया है, तो यह जीडब्ल्यूटी के कारण नहीं था, हालांकि जीडब्ल्यूटी एड-ऑन या अन्य घटक हो सकते हैं जो वेबकिट पसंद नहीं करते हैं।

अक्सर पूछे जाने वाले प्रश्न http://code.google.com/webtoolkit/doc/latest/FAQ_GettingStarted.html#What_browsers_does_GWT_support?

जीडब्ल्यूटी समर्थन कौन से ब्राउज़र करता है?

GWT निम्न ब्राउज़रों का समर्थन करता है:

  • Firefox 1.0, 1.5, 2.0, 3.0, और 3.5
  • इंटरनेट एक्सप्लोरर 6, 7, 8 और
  • सफारी 2, 3, और 4
  • क्रोमियम और Google Chrome
  • ओपेरा 9,0
संबंधित मुद्दे