تقدّم هذه الصفحة نصائح وخطوات تحديد المشاكل وحلّها المتعلّقة بمنصّة Apple
التي قد تواجهها عند استخدام Firebase.
هل لديك مشاكل أخرى أو لا تظهر مشكلتك الموضّحة أدناه؟ يُرجى الاطّلاع على الأسئلة الشائعة الرئيسية حول Firebase للحصول على المزيد من الأسئلة الشائعة حول Firebase بشكل عام أو
حول المنتجات بشكل خاص.
يمكنك أيضًا الاطّلاع على مستودع GitHub لحزمة تطوير البرامج (SDK) لمنصّات Firebase Apple للاطّلاع على قائمة محدّثة بالمشاكل التي تم الإبلاغ عنها وتحديد المشاكل وحلّها. ننصحك أيضًا بتسجيل المشاكل المتعلّقة بحزمة تطوير البرامج (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
، سيتم تجاهل بعض المخططات
بدون تنبيه. قد يتعذّر على التطبيق تنفيذ روابط لصفحات معيّنة،
وذلك حسب ترتيب إضافتها.