इस पेज पर, Apple प्लैटफ़ॉर्म से जुड़ी उन समस्याओं को हल करने के सुझाव और तरीके दिए गए हैं जो Firebase का इस्तेमाल करते समय आ सकती हैं.
क्या आपको कोई और समस्या आ रही है या आपको अपनी समस्या यहां नहीं दिख रही है? ज़्यादा जानकारी के लिए, Firebase के बारे में अक्सर पूछे जाने वाले सवालों का मुख्य पेज देखें. इस पेज पर, Firebase या प्रॉडक्ट से जुड़े अक्सर पूछे जाने वाले सवाल शामिल हैं.
रिपोर्ट की गई समस्याओं और उन्हें हल करने के तरीकों की अप-टू-डेट सूची देखने के लिए,
Firebase Apple प्लैटफ़ॉर्म SDK के GitHub रेपो
पर जाएं. हमारा सुझाव है कि Firebase Apple प्लैटफ़ॉर्म SDK से जुड़ी अपनी समस्याएं भी वहां सबमिट करें!
Firebase, Xcode के किन वर्शन के साथ काम करता है?
Firebase, Xcode के दो मुख्य वर्शन के साथ काम करता है. इसमें, Xcode के वे वर्शन शामिल नहीं हैं जो अब Apple के साथ काम नहीं करते.
उदाहरण के लिए, मार्च 2019 से,
Apple ने सभी ऐप्लिकेशन के लिए कम से कम iOS 12 की ज़रूरत बताई थी. इसका मतलब है कि Xcode 9 के लिए सहायता बंद कर दी गई थी और Xcode 10, सहायता पाने वाला एकमात्र मुख्य वर्शन था.
Xcode के किसी खास माइनर या पैच वर्शन
(उदाहरण के लिए, 9.2.0 से 9.4.1) के लिए सहायता में होने वाले बदलाव, Firebase Apple प्लैटफ़ॉर्म SDK की ज़रूरतों और डेवलपर के इस्तेमाल के सर्वे के आधार पर तय किए जाते हैं. ये बदलाव
Firebase Apple प्लैटफ़ॉर्म SDK के रिलीज़ नोट
और Firebase Apple प्लैटफ़ॉर्म SDK के सेटअप पेज पर दिखते हैं.
SDK टूल के साथ काम करने वाले Xcode के सबसे पुराने वर्शन को देखने के लिए, अपने Apple प्रोजेक्ट में Firebase जोड़ना लेख में बताई गई ज़रूरी शर्तें देखें.
Xcode के बीटा रिलीज़ के लिए Firebase की सहायता, "सबसे बेहतर कोशिश"
आधार पर उपलब्ध है. डेवलपर, GitHub पर मौजूद
Firebase Apple प्लैटफ़ॉर्म SDK के रिपॉज़िटरी में समस्याएं ट्रैक और सबमिट कर सकते हैं.
macOS पर Keychain के आइटम ऐक्सेस करने के लिए, मेरा ऐप्लिकेशन उपयोगकर्ता से उसका पासवर्ड मांगता है. मैं इसका समाधान कैसे करूं?
Firebase की डिपेंडेंसी को 9.6.0 या इसके बाद के वर्शन पर अपग्रेड करें और अपने टारगेट में
[Keychain शेयर करने की सुविधा](/docs/ios/troubleshooting-faq#macos-keychain-sharing)
जोड़ें.
macOS पर, Firebase को Keychain शेयर करने की सुविधा क्यों चाहिए?
Firebase SDK टूल, FCM के लिए इस्तेमाल की जाने वाली Firebase
इंस्टॉलेशन आईडी जैसी जानकारी सेव करने के लिए, Keychain का इस्तेमाल करते हैं. Keychain का ऐक्सेस न होने पर, Firebase SDK टूल सही तरीके से काम नहीं कर सकते. macOS Keychain, iOS-स्टाइल वाले
Keychain से अलग तरीके से काम करता है. iOS-स्टाइल वाले Keychain का इस्तेमाल अन्य प्लैटफ़ॉर्म (iOS, tvOS, macCatalyst,
और watchOS) पर किया जाता है.
macOS पर, ऐप्लिकेशन एक शेयर किए गए Keychain का इस्तेमाल करते हैं. इसमें अन्य ऐप्लिकेशन और
प्रोसेस बदलाव कर सकती हैं. iOS के उलट, कोई सैंडबॉक्स वाला Keychain नहीं है जिसे ऐप्लिकेशन, बिना अनुमति के ऐक्सेस कर सकता है. इसलिए, जब कोई Mac ऐप्लिकेशन Keychain के साथ इंटरैक्ट करता है, तो सिस्टम
उपयोगकर्ता से ऐक्सेस की अनुमति मांगता है. ऐसा इसलिए, क्योंकि Mac ऐप्लिकेशन, Keychain के किसी ऐसे आइटम
में बदलाव कर सकता है जिसे उसने नहीं बनाया है. इस अंतर को दूर करने के लिए, Firebase,
kSecUseDataProtectionKeychain कुंजी के साथ Keychain के बारे में क्वेरी करता है. इससे ऐप्लिकेशन को, Keychain के किसी ऐसे आइटम के बारे में क्वेरी करने का निर्देश मिलता है जो Keychain ऐक्सेस ग्रुप
का हिस्सा है. अन्य प्लैटफ़ॉर्म पर यह डिफ़ॉल्ट व्यवहार है. Keychain शेयर करने की सुविधा ज़रूरी है, क्योंकि ऐप्लिकेशन को एक ऐसा ऐक्सेस ग्रुप बनाने के लिए इसकी ज़रूरत होती है जिसे उसके टारगेट के बीच शेयर किया जा सकता है. इससे ऐप्लिकेशन को, ऐक्सेस ग्रुप में मौजूद Keychain के आइटम को बिना किसी अनुमति के ऐक्सेस करने की अनुमति मिलती है.
ज़्यादा जानकारी के लिए, Apple का
Keychain से जुड़ा दस्तावेज़
देखें.
Xcode के 13 और इसके बाद के वर्शन में, मेरे UIKit ऐप्लिकेशन, Info.plist में रजिस्टर किए गए कुछ
यूआरएल क्यों नहीं खोल पाते
?
Apple ने Info.plist फ़ाइलों में, LSApplicationQueriesSchemes
एंट्री की 50 की सीमा तय की है. साल 2015 में, Apple ने
LSApplicationQueriesSchemes की सुविधा शुरू की थी. इसका मकसद, हर ऐप्लिकेशन के लिए यूआरएल क्वेरी
की संख्या को सीमित करना था. Xcode 13 के रिलीज़ होने के बाद, इन सीमाओं को लागू किया गया है,
वहीं, Xcode 12 और इससे पहले के वर्शन में, स्कीम की संख्या की कोई सीमा नहीं थी.
Firebase के कुछ प्रॉडक्ट, जैसे कि Firebase Authentication और Firebase Dynamic Links,
आपके ऐप्लिकेशन पर रीडायरेक्ट करने के लिए, कस्टम यूआरएल स्कीम का इस्तेमाल करते हैं. ये
यूआरएल, एक संक्षिप्त और एक जैसी यूआरएल स्कीम के मुताबिक होते हैं. इन्हें 50 लिंक स्कीम की सीमा में
नहीं गिना जाना चाहिए.
ध्यान दें कि अगर कोई ऐप्लिकेशन, 50 से ज़्यादा
LSApplicationQueriesSchemes, रजिस्टर करता है, तो कुछ स्कीम को
अनदेखा कर दिया जाएगा. ऐप्लिकेशन में डीपलिंक जोड़ने के क्रम के आधार पर, हो सकता है कि ऐप्लिकेशन कुछ डीपलिंक न चला पाए.
मुझे अपने ऐप्लिकेशन में ओपन सोर्स से जुड़े कौनसे नोटिस शामिल करने चाहिए?
Apple प्लैटफ़ॉर्म के लिए, Firebase SDK टूल को Apache 2.0 लाइसेंस के तहत डिस्ट्रिब्यूट किया जाता है.