इस पेज पर, 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)
जोड़ें.
Firebase को macOS पर Keychain शेयर करने की सुविधा क्यों चाहिए?
Firebase SDK टूल, जानकारी को सेव करने के लिए पासकोड की सुविधा का इस्तेमाल करते हैं. जैसे, FCM के लिए इस्तेमाल किया जाने वाला Firebase
इंस्टॉलेशन आईडी. Keychain का ऐक्सेस न होने पर, हो सकता है कि Firebase SDK टूल ठीक से काम न करें. macOS की keychain, iOS स्टाइल की keychain से अलग तरीके से काम करती है. iOS स्टाइल की keychain का इस्तेमाल अन्य प्लैटफ़ॉर्म (iOS, tvOS, macCatalyst, और watchOS) पर किया जाता है.
macOS पर, ऐप्लिकेशन शेयर किए गए पासवर्ड की एक कुंजी का इस्तेमाल करते हैं. इसमें अन्य ऐप्लिकेशन और प्रोसेस बदलाव कर सकती हैं. iOS के मुकाबले, Android में कोई सैंडबॉक्स कीचेन नहीं होता है, जिसका ऐप्लिकेशन के पास ऐक्सेस होता है. इसलिए, जब कोई Mac ऐप्लिकेशन पासवर्ड कीवर्ड के साथ इंटरैक्ट करता है, तो सिस्टम उपयोगकर्ता से ऐक्सेस का अनुरोध करता है. ऐसा इसलिए होता है, क्योंकि हो सकता है कि Mac ऐप्लिकेशन, पासवर्ड कीवर्ड के किसी ऐसे आइटम में बदलाव कर रहा हो जिसे उसने बनाया नहीं है. इस अंतर को ठीक करने के लिए, Firebase kSecUseDataProtectionKeychain
कुंजी का इस्तेमाल करके, कीहैंड की क्वेरी करता है. इससे ऐप्लिकेशन को, कीहैंड ऐक्सेस ग्रुप का हिस्सा होने वाले कीहैंड आइटम की क्वेरी करने के लिए कहा जाता है. यह अन्य प्लैटफ़ॉर्म पर डिफ़ॉल्ट तौर पर होता है. पासवर्ड शेयर करने की सुविधा ज़रूरी है, क्योंकि ऐप्लिकेशन को ऐक्सेस ग्रुप बनाने के लिए इसकी ज़रूरत होती है. इस ग्रुप को टारगेट के साथ शेयर किया जा सकता है. इससे ऐप्लिकेशन को ऐक्सेस ग्रुप में मौजूद पासवर्ड को आसानी से ऐक्सेस करने की अनुमति मिलती है.
ज़्यादा जानकारी के लिए, Apple का
Keychain दस्तावेज़ पढ़ें
.
Xcode के 13 और उसके बाद के वर्शन में, मेरे UIKit ऐप्लिकेशन,
Info.plist में रजिस्टर किए गए कुछ यूआरएल क्यों नहीं खोल पा रहे हैं?
Apple ने Info.plist
फ़ाइलों में 50 LSApplicationQueriesSchemes
एंट्री की सीमा तय की है. साल 2015 में, Apple ने LSApplicationQueriesSchemes
को पेश किया था. इससे, हर ऐप्लिकेशन के लिए यूआरएल क्वेरी की संख्या को सीमित किया जा सकता है. Xcode 13 रिलीज़ होने के बाद, ये सीमाएं लागू हो गई हैं. हालांकि, Xcode 12 और उससे पहले के वर्शन में, स्कीम की संख्या पर कोई सीमा नहीं थी.
Firebase Authentication और Firebase Dynamic Links जैसे कुछ Firebase प्रॉडक्ट के लिए, आपके ऐप्लिकेशन पर रीडायरेक्ट करने के लिए, कस्टम यूआरएल स्कीम का इस्तेमाल करना ज़रूरी है. ये यूआरएल, कम शब्दों वाले और एक जैसे यूआरएल स्कीम के मुताबिक होते हैं. इनकी वजह से, लिंक स्कीम की 50 यूआरएल की सीमा पर काफ़ी असर नहीं पड़ता.
ध्यान दें कि जो ऐप्लिकेशन 50 से ज़्यादा
LSApplicationQueriesSchemes
रजिस्टर करते रहेंगे उनके लिए, कुछ स्कीम को चुपचाप अनदेखा कर दिया जाएगा. ऐप्लिकेशन, कुछ डीप लिंक को शायद लागू न कर पाए. ऐसा, डीप लिंक जोड़ने के क्रम के हिसाब से हो सकता है.