أثناء تطوير تطبيقك على أجهزة 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 | ||||||
| App Check مزوّد DeviceCheck |
watchOS 9 والإصدارات الأحدث | |||||
| App Check مزوّد App Attest |
iOS 14 والإصدارات الأحدث | macOS 11 والإصدارات الأحدث | Catalyst 14 والإصدارات الأحدث | tvOS 15 والإصدارات الأحدث | watchOS 9 والإصدارات الأحدث | |
| App Check مزوّدو الخدمات المخصّصون ومزوّدو خدمات تصحيح الأخطاء |
||||||
| App Check reCAPTCHA مزوّد |
||||||
| App Distribution | ||||||
| Authentication | علامة التفاضل الجزئي | علامة التفاضل الجزئي | علامة التفاضل الجزئي | علامة التفاضل الجزئي | علامة التفاضل الجزئي | |
| Cloud Firestore | توزيعات المصدر فقط | |||||
| Cloud Functions | ||||||
| Cloud Messaging | ||||||
| Cloud Storage | ||||||
| Crashlytics | ||||||
| عمليات تثبيت Firebase | ||||||
| In-App Messaging | ||||||
| Performance Monitoring | ||||||
| Realtime Database | ||||||
| Remote Config | ||||||
| SQL Connect 2 | ||||||
| المكتبات المتوقّفة نهائيًا أو غير المتوافقة | ||||||
| Dynamic Links | ||||||
| Firebase ML Model Downloader | ||||||
1 Firebase AI Logic كان اسمه سابقًا "Vertex AI in Firebase".
2 Firebase SQL Connect كان اسمه سابقًا "Firebase Data Connect".
مقتطفات التطبيقات
يمكن إنشاء معظم مكتبات Firebase وتشغيلها في هدف "مقتطف التطبيق"، ولكن يتم تقييد العديد منها نتيجةً للقيود الأساسية لنظام التشغيل. تشمل المشاكل المعروفة ما يلي:
- لا يمكن لخدمة Dynamic Links إرسال المستخدمين إلى "مقتطف التطبيق" إذا نقروا على رابط بدون تثبيت التطبيق.
- لا يمكن لخدمتَي Firestore وRealtime Database تحميل البيانات في "مقتطفات التطبيقات" بسبب تبعية CFStream الأساسية.
يمكنك الاطّلاع على مستودع Firebase على GitHub للحصول على قائمة كاملة بالمشاكل المعروفة في "مقتطفات التطبيقات".
ملف GoogleService-Info.plist
كجزء من إضافة Firebase إلى مشروعك على أجهزة Apple، عليك إضافة ملف الإعداد GoogleService-Info.plist إلى مشروعك. إذا أردت
استخدام مشاريع متعددة على Firebase في تطبيق واحد، يمكنك الاطّلاع على مستندات
إعداد مشاريع متعددة.
يمكنك الاطّلاع على مستندات Swift المرجعية للتعرّف على عملية تهيئة تطبيق Firebase بمزيد من التفصيل.
Swift Package Manager
يمكنك الاطّلاع على مزيد من المعلومات حول عملية دمج Swift Package Manager في دليلنا.
إضافات Swift
كانت إضافات Swift لحزمة Firebase SDK لمنصات 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 لمنصات Apple
تتيح Firebase تطوير البرامج المفتوحة المصدر، ونشجّع مساهمات المنتدى وملاحظاته.
حِزم Firebase SDK لمنصات Apple
يتم تطوير جميع حِزم Firebase SDK لمنصات Apple، باستثناء Analytics، كمكتبات مفتوحة المصدر في مستودع Firebase العلني على GitHub.
FirebaseUI
FirebaseUI هي مجموعة من مكتبات الأدوات المساعدة المستندة إلى Firebase، بما في ذلك مسار واجهة مستخدم جاهزة لعملية المصادقة وأدوات البيانات المساعدة لخدمتَي Cloud Firestore وRealtime Database. يمكنك الاطّلاع على مزيد من التفاصيل حول FirebaseUI على صفحتنا على GitHub.
نماذج Quickstart
تحتفظ Firebase بمجموعة من نماذج Quickstart لمعظم واجهات برمجة تطبيقات Firebase على iOS. يمكنك العثور على هذه النماذج في مستودع Quickstart العلني على GitHub في Firebase quickstart repository.
يمكنك فتح كل نموذج Quickstart في Xcode، ثم تشغيله على جهاز جوّال أو محاكي. أو يمكنك استخدام هذه النماذج كرموز برمجية مثالية لاستخدام حِزم Firebase SDK.