أثناء تطوير تطبيقك على أجهزة Apple باستخدام Firebase، قد تصادف مفاهيم غير مألوفة أو خاصة بمنصة Firebase. تهدف هذه الصفحة إلى الإجابة عن هذه الأسئلة أو توجيهك إلى مصادر لمعرفة المزيد.
إذا كان لديك أسئلة حول موضوع لم يتم تناوله في هذه الصفحة، يمكنك الانتقال إلى أحد منتدياتنا على الإنترنت. سنحرص أيضًا على تعديل هذه الصفحة بشكل دوري وإضافة مواضيع جديدة، لذا ننصحك بالعودة إليها لمعرفة ما إذا كنّا قد أضفنا الموضوع الذي تريد معرفته.
دعم مكتبة Firebase حسب النظام الأساسي
يوضّح الجدول التالي مكتبات Firebase المتوافقة مع الأنظمة الأساسية المختلفة لأجهزة Apple. في الوقت الحالي، لا يتوفّر الدعم لنظامَي التشغيل visionOS وwatchOS إلا من خلال المنتدى. يمكنك الاطّلاع على مستودع Firebase Apple platforms SDK على GitHub للحصول على تعليمات التثبيت والمشاكل المعروفة.
| المكتبة | iOS | macOS | Mac Catalyst |
tvOS | visionOS | watchOS |
|---|---|---|---|---|---|---|
| A/B Testing | ||||||
| Firebase AI Logic 1 | iOS 15 والإصدارات الأحدث | macOS 12 والإصدارات الأحدث | Catalyst 15 والإصدارات الأحدث | tvOS 15 والإصدارات الأحدث (دعم المنتدى فقط) | watchOS 8 والإصدارات الأحدث | |
| Analytics | الإصدار 8.9.0 والإصدارات الأحدث | الإصدار 8.9.0 والإصدارات الأحدث | الإصدار 8.9.0 والإصدارات الأحدث | |||
| Analytics بدون رقم تعريف إعلاني | الإصدار 8.9.0 والإصدارات الأحدث | الإصدار 8.9.0 والإصدارات الأحدث | الإصدار 8.9.0 والإصدارات الأحدث | |||
| الإحالات الناجحة على الجهاز فقط في Analytics | ||||||
| مزوّد DeviceCheck في App Check | watchOS 9 والإصدارات الأحدث | |||||
| مزوّد App Attest في App Check | iOS 14 والإصدارات الأحدث | macOS 11 والإصدارات الأحدث | Catalyst 14 والإصدارات الأحدث | tvOS 15 والإصدارات الأحدث | watchOS 9 والإصدارات الأحدث | |
| مزوّدا App Check المخصّصان ومزوّدا التصحيح | ||||||
| App Distribution | ||||||
| Authentication | علامة التفاضل الجزئي | علامة التفاضل الجزئي | علامة التفاضل الجزئي | علامة التفاضل الجزئي | علامة التفاضل الجزئي | |
| Cloud Firestore | توزيعات المصدر فقط | |||||
| Cloud Functions | ||||||
| Cloud Messaging | ||||||
| Cloud Storage | ||||||
| Crashlytics | ||||||
| SQL Connect 2 | ||||||
| Dynamic Links | ||||||
| عمليات تثبيت Firebase | ||||||
| أداة تنزيل النماذج Firebase ML | ||||||
| In-App Messaging | ||||||
| Performance Monitoring | ||||||
| Realtime Database | ||||||
| Remote Config |
1 Firebase AI Logic كان اسمه سابقًا "Vertex AI in Firebase".
2 Firebase SQL Connect كان اسمه سابقًا "Firebase Data Connect".
مقتطفات التطبيقات
يمكن إنشاء معظم مكتبات Firebase وتشغيلها في هدف "مقتطف التطبيق"، ولكن يتم تقييد العديد منها نتيجةً للقيود الأساسية لنظام التشغيل. تشمل المشاكل المعروفة ما يلي:
- لا يمكن لخدمة Dynamic Links إرسال المستخدمين إلى "مقتطف تطبيق" إذا نقروا على رابط بدون تثبيت التطبيق.
- لا يمكن لخدمتَي Firestore و"قاعدة بيانات الوقت الفعلي" تحميل البيانات في "مقتطفات التطبيقات" بسبب تبعية CFStream الأساسية.
يمكنك الاطّلاع على مستودع Firebase على GitHub للحصول على قائمة كاملة بالمشاكل المعروفة في "مقتطفات التطبيقات".
ملف GoogleService-Info.plist
كجزء من إضافة Firebase إلى مشروعك على أجهزة Apple، عليك إضافة ملف الإعداد GoogleService-Info.plist إلى مشروعك. إذا كنت تريد استخدام مشاريع متعددة على Firebase في تطبيق واحد، يمكنك الاطّلاع على مستندات إعداد مشاريع متعددة.
يمكنك الاطّلاع على مستندات Swift المرجعية لمعرفة المزيد من التفاصيل حول عملية تهيئة تطبيق Firebase.
Swift Package Manager
يمكنك الاطّلاع على المزيد من المعلومات عن عملية دمج Swift Package Manager في دليلنا.
إضافات Swift
كانت إضافات Swift لحزمة تطوير البرامج (SDK) لمنصة Firebase على أجهزة Apple في السابق عبارة عن إضافات صغيرة مفتوحة المصدر لمكتبات منصة Firebase الحالية على أجهزة Apple، ما يتيح لرمزك البرمجي استخدام ميزات خاصة بلغة Swift. تمت إضافة واجهات برمجة التطبيقات هذه مباشرةً إلى المكتبات الرئيسية، ولا حاجة إلى تضمينها بشكل منفصل. إذا كان لديك سابقًا حزمة SDK لإضافة Swift في قاعدة الرموز البرمجية، يمكنك الاطّلاع على دليل نقل البيانات للحصول على تعليمات الترقية.
SwiftUI
تتوافق منصة Firebase بشكل كامل مع SwiftUI، على الرغم من أنّ عملية الإعداد ستكون مختلفة قليلاً عن تطبيقات UIKit لكي تعمل Firebase بشكل صحيح في بيئة SwiftUI كاملة. يمكنك الاطّلاع على منشور المدوّنة هذا من Peter Friese لمزيد من التفاصيل.
يجب إيقاف عملية swizzling في تطبيقات SwiftUI بسبب مشكلة معروفة. يمكنك الاطّلاع على قسم عملية swizzling في مفوّض التطبيق لمزيد من التفاصيل.
عملية swizzling في مفوّض التطبيق
تجري Firebase عملية swizzling لبعض الطرق في فئة مفوّض التطبيق لتوصيل خدمات Firebase تلقائيًا بطلبات معاودة الاتصال لنظام التشغيل، مثل
FCM ورمز APNs. يمكنك إيقاف عملية swizzling في تطبيقك من خلال إضافة العلامة FirebaseAppDelegateProxyEnabled في ملف Info.plist الخاص بالتطبيق وضبطها على NO.
تستخدم أربعة منتجات من Firebase عملية swizzling في مفوّض التطبيق، وهي Analytics, App Distribution, Authentication, وFCM. إذا أوقفت عملية swizzling في تطبيقك وكنت تستخدم أيًا من المنتجات التالية، يمكنك الرجوع إلى الدليل الخاص بالمنتج لمعرفة كيفية استخدامه بدون عملية swizzling:
التوافق مع نظام التشغيل iOS 14
يتضمّن نظام التشغيل iOS 14 تغييرات جديدة على أذونات المستخدمين المتعلقة بمعرّف الإعلان الخاص بالمستخدم. يمكنك الاطّلاع على دليل الاستعداد لنظام التشغيل iOS 14 لمزيد من التفاصيل حول ما إذا كان تطبيقك قد يتأثر أم لا.
الدعم المستمر للغة Objective-C
لتسهيل صيانة مستنداتنا الخاصة بالأنظمة الأساسية لأجهزة Apple، قرّرت Firebase التركيز على مقتطفات Swift ونماذج الرموز البرمجية في أدلتنا ومواد المطوّرين الأخرى. ستتم إزالة مقتطفات Objective-C من أدلتنا اعتبارًا من 1 يناير 2024. سنواصل صيانة المستندات المرجعية المحدّثة للغة Objective-C لجميع منتجات Firebase.
الموارد المفتوحة المصدر لحِزم Firebase SDK لمنصة Firebase على أجهزة Apple
تتيح Firebase تطوير البرامج المفتوحة المصدر، ونشجّع مساهمات المنتدى وملاحظاته.
حِزم Firebase SDK لمنصة Firebase على أجهزة Apple
يتم تطوير جميع حِزم Firebase SDK لمنصة Firebase على أجهزة Apple، باستثناء Analytics، كمكتبات مفتوحة المصدر في مستودع Firebase العام على GitHub.
FirebaseUI
FirebaseUI هي مجموعة من مكتبات الأدوات المساعدة المستندة إلى Firebase، بما في ذلك مسار واجهة مستخدم جاهز لعملية المصادقة وأدوات البيانات المساعدة لخدمتَي Cloud Firestore و Realtime Database. يمكنك الاطّلاع على مزيد من التفاصيل عن FirebaseUI على صفحتنا على GitHub.
نماذج البدء السريع
تحتفظ Firebase بمجموعة من نماذج البدء السريع لمعظم واجهات برمجة تطبيقات Firebase على iOS. يمكنك العثور على نماذج البدء السريع هذه في مستودع البدء السريع العام على GitHub في Firebase .
يمكنك فتح كل نموذج من نماذج البدء السريع في Xcode، ثم تشغيله على جهاز جوّال أو محاكي. أو يمكنك استخدام نماذج البدء السريع هذه كرموز برمجية مثالية لاستخدام حِزم Firebase SDK.