تقدّم هذه الصفحة نصائح ومعلومات لتحديد المشاكل وحلّها في ما يتعلّق بمنصّة Apple والتي قد تواجهونها عند استخدام Firebase.
هل تواجهون تحديات أخرى أو لا يظهر أدناه وصف للمشكلة التي تواجهونها؟ احرصوا على الاطّلاع
على الأسئلة الشائعة الرئيسية حول Firebase لمزيد من الأسئلة الشائعة حول Firebase أو
منتجاته.
يمكنكم أيضًا الاطّلاع على
مستودع GitHub لحزمة تطوير البرامج (SDK) لمنصّات Apple من Firebase
للحصول على قائمة حديثة بالمشاكل التي تم الإبلاغ عنها ومعلومات تحديد المشاكل وحلّها. ننصحكم أيضًا بالإبلاغ عن المشاكل المتعلّقة بحزمة تطوير البرامج (SDK) لمنصّات Apple من Firebase في هذا المستودع.
يطلب تطبيقي من المستخدم إدخال كلمة المرور للوصول إلى عناصر Keychain على macOS. كيف أصلح هذا؟
يمكنكم ترقية تبعية Firebase إلى الإصدار 9.6.0 أو إصدار أحدث وإضافة
[إمكانية مشاركة Keychain](/docs/ios/troubleshooting-faq#macos-keychain-sharing)
إلى هدفكم.
لماذا تتطلّب منصّة Firebase إمكانية مشاركة Keychain على macOS؟
تستخدم حِزم تطوير البرامج (SDK) من Firebase Keychain لتخزين معلومات مثل رقم تعريف تثبيت Firebase
المستخدَم في FCM. بدون إمكانية الوصول إلى Keychain، قد لا تعمل حِزم تطوير البرامج (SDK) من Firebase بشكل صحيح. يختلف سلوك Keychain على macOS عن سلوك Keychain بنمط iOS
المستخدَم على منصات أخرى (iOS وtvOS وmacCatalyst و
watchOS).
على macOS، تستخدم التطبيقات Keychain مشتركة قد تعدّلها تطبيقات وعمليات أخرى و
عمليات. على عكس iOS، لا تتوفّر Keychain في وضع الحماية يمكن للتطبيق الوصول إليها ضمنيًا. لذلك، عندما يتفاعل تطبيق Mac مع Keychain، يطلب النظام
من المستخدم الإذن بالوصول لأنّ تطبيق Mac قد يعدّل عنصر Keychain
لم ينشئه. لمعالجة هذا التباين، تستعلم Firebase عن
Keychain باستخدام المفتاح kSecUseDataProtectionKeychain، ما يطلب
من التطبيق الاستعلام عن عنصر Keychain يندرج ضمن مجموعة مخوّلة بالوصول إلى Keychain
(هذا هو السلوك التلقائي على منصات أخرى). تكون إمكانية مشاركة Keychain مطلوبة لأنّ التطبيق يحتاج إليها لإنشاء مجموعة مخوّلة بالوصول يمكن مشاركتها بين أهدافه، ما يمنح التطبيق الإذن بالوصول بحرية إلى عناصر Keychain في مجموعة مخوّلة بالوصول.
لمزيد من المعلومات، يُرجى الاطّلاع على
مستندات 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 هذه مخطط عناوين URL موجزًا ومتسقًا يجب ألا يتم احتسابه بشكل كبير ضمن الحد الأقصى المسموح به لعدد حيل الروابط البالغ 50.
يُرجى العِلم أنّه بالنسبة إلى التطبيقات التي تواصل تسجيل أكثر من 50
LSApplicationQueriesSchemes، سيتم
تجاهل بعض المخططات بدون إشعار. قد لا يتمكّن التطبيق من تنفيذ بعض الروابط العميقة،
وذلك حسب ترتيب إضافتها.
ما هي إشعارات المصادر المفتوحة التي يجب تضمينها في تطبيقي؟
بالنسبة إلى منصات Apple، يتم توزيع حزمة تطوير البرامج (SDK) من Firebase بموجب ترخيص Apache 2.0.