تقدّم هذه الصفحة نصائح وخطوات تحديد المشاكل وحلّها المتعلّقة بمنصّة 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؟
تستخدِم حِزم Firebase SDK سلسلة المفاتيح لتخزين معلومات مثل معرّف تثبيت Firebase
المستخدَم في ميزة "مراسلة Firebase". بدون إذن الوصول إلى سلسلة المفاتيح، قد لا تعمل حِزم تطوير البرامج (SDK) من Firebase
بشكل صحيح. تختلف سلسلة مفاتيح macOS عن سلسلة مفاتيح iOS
التي يتم استخدامها على الأنظمة الأساسية الأخرى (iOS وtvOS وmacCatalyst
وwatchOS).
على نظام التشغيل macOS، تستخدم التطبيقات سلسلة مفاتيح مشترَكة قد تعدّلها تطبيقات وعمليات أخرى. وعلى عكس نظام التشغيل iOS، لا يتوفّر سلسلة مفاتيح في مساحة مغلقة يمكن للتطبيق
الوصول إليها بشكل ضمني. لذلك، عندما يتفاعل تطبيق Mac مع سلسلة المفاتيح، يطلب النظام من المستخدم منح الإذن بالوصول لأنّ تطبيق Mac قد يعدّل عنصرًا في سلسلة المفاتيح لم ينشئه. لحلّ هذا التناقض، تُجري Firebase طلب بحث في ملف تعريف الارتباط
باستخدام المفتاح kSecUseDataProtectionKeychain
، ما يطلب
من التطبيق طلب بحث عن عنصر ملف تعريف الارتباط الذي يُعدّ جزءًا من مجموعة وصول إلى ملف تعريف الارتباط
(هذا هو السلوك التلقائي على الأنظمة الأساسية الأخرى). يجب توفُّر ميزة "مشاركة سلسلة المفاتيح"
لأنّ التطبيق يحتاج إليها لإنشاء مجموعة وصول يمكن مشاركتها
بين استهدافاته، ما يمنح التطبيق الإذن بالوصول
بحرية إلى عناصر سلسلة المفاتيح في مجموعة الوصول.
لمزيد من المعلومات، يُرجى الاطّلاع على
مستندات سلسلة المفاتيح الخاصة بـ 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
، سيتم تجاهل بعض المخططات
بدون إشعار. قد يتعذّر على التطبيق تنفيذ روابط لصفحات معيّنة،
وذلك حسب ترتيب إضافتها.