تقدّم هذه الصفحة نصائح ومعلومات لتحديد المشاكل وحلّها على منصة Apple
التي قد تواجهها عند استخدام Firebase.
هل تواجه تحديات أخرى أو لا ترى مشكلتك موضّحة أدناه؟ يُرجى الاطّلاع على الأسئلة الشائعة الرئيسية حول Firebase للحصول على المزيد من الأسئلة الشائعة حول Firebase أو منتجاته.
يمكنك أيضًا الاطّلاع على
مستودع GitHub الخاص بحزمة تطوير البرامج (SDK) لمنصّات Apple في Firebase
للحصول على قائمة حديثة بالمشاكل التي تم الإبلاغ عنها وحلّها. ننصحك أيضًا بتسجيل المشاكل المتعلّقة بحزمة تطوير البرامج (SDK) لمنصات Apple على Firebase هناك.
يطلب تطبيقي من المستخدم إدخال كلمة المرور للوصول إلى عناصر Keychain على جهاز macOS. كيف أصلح هذا؟
عليك ترقية إصدار Firebase إلى 9.6.0 أو إصدار أحدث وإضافة
[إمكانية مشاركة سلسلة المفاتيح](/docs/ios/troubleshooting-faq#macos-keychain-sharing)
إلى هدفك.
لماذا يتطلّب Firebase توفُّر ميزة "مشاركة سلسلة المفاتيح" على أجهزة macOS؟
تستخدم حِزم تطوير البرامج (SDK) من Firebase سلسلة المفاتيح لتخزين معلومات مثل معرّف تثبيت Firebase المستخدَم في خدمة المراسلة عبر السحابة الإلكترونية من Firebase. بدون إذن الوصول إلى Keychain، قد لا تعمل حِزم تطوير البرامج (SDK) من Firebase بشكل صحيح. تختلف سلسلة مفاتيح macOS عن سلسلة مفاتيح iOS التي يتم استخدامها على المنصات الأخرى (iOS وtvOS وmacCatalyst وwatchOS).
على نظام التشغيل macOS، تستخدم التطبيقات سلسلة مفاتيح مشترَكة يمكن أن تعدّلها تطبيقات وعمليات أخرى. وعلى عكس نظام التشغيل iOS، لا توجد سلسلة مفاتيح معزولة يمكن للتطبيق الوصول إليها بشكل ضمني. لذلك، عندما يتفاعل تطبيق Mac مع سلسلة المفاتيح، يطلب النظام من المستخدم إذن الوصول لأنّ تطبيق Mac قد يعدّل عنصرًا في سلسلة المفاتيح لم ينشئه. لحلّ هذا التناقض، يطلب Firebase من سلسلة المفاتيح استخدام المفتاح kSecUseDataProtectionKeychain
، ما يطلب من التطبيق البحث عن عنصر سلسلة مفاتيح يندرج ضمن مجموعة الوصول إلى سلسلة المفاتيح (وهذا هو السلوك التلقائي على المنصات الأخرى). ميزة "مشاركة سلسلة المفاتيح" مطلوبة لأنّ التطبيق يحتاج إليها لإنشاء مجموعة وصول يمكن مشاركتها بين أهدافه، وبالتالي منح التطبيق الإذن بالوصول بحرية إلى عناصر سلسلة المفاتيح في مجموعة الوصول.
لمزيد من المعلومات، يُرجى الاطّلاع على
مستندات Keychain
من Apple.
في الإصدارات 13 والإصدارات الأحدث من Xcode، لماذا لا يمكن لتطبيقات UIKit فتح بعض عناوين URL التي سجّلتها
في ملف Info.plist؟
فرضت Apple حدًا أقصى يبلغ 50 إدخالاً LSApplicationQueriesSchemes
في ملفات Info.plist
. في عام 2015، قدّمت Apple ميزة
LSApplicationQueriesSchemes
للحدّ من عدد طلبات البحث عن عناوين URL
التي يمكن لكل تطبيق إجراؤها. مع إصدار Xcode 13، تم فرض هذه الحدود،
بينما لم يكن هناك حدّ فعلي لعدد المخططات في Xcode 12 والإصدارات الأقدم.
تتطلّب بعض منتجات Firebase، مثل Firebase Authentication وFirebase Dynamic Links، استخدام أنظمة عناوين URL مخصّصة لإعادة التوجيه إلى تطبيقك. تتّبع عناوين URL هذه نظامًا موجزًا ومتسقًا لا يُفترض أن يؤثر بشكل كبير في الحد الأقصى المسموح به لعدد الروابط (50 رابطًا).
يُرجى العِلم أنّه بالنسبة إلى التطبيقات التي تواصل تسجيل أكثر من 50
LSApplicationQueriesSchemes
، سيتم تجاهل بعض المخططات بدون إشعار. قد لا يتمكّن التطبيق من تنفيذ بعض الروابط لصفحات في التطبيق،
وذلك حسب ترتيب إضافتها.