أثناء تطوير تطبيق Apple باستخدام Firebase، قد تكتشف مفاهيم غير مألوفة أو خاصة بـ Firebase. تهدف هذه الصفحة إلى الإجابة عن هذه الأسئلة أو توجيهك إلى مراجع لمزيد من المعلومات.
إذا كانت لديك أسئلة حول موضوع لم يتم تناوله في هذه الصفحة، يمكنك زيارة أحد منتدياتنا الإلكترونية. سنعدّل أيضًا هذه الصفحة بمواضيع جديدة بشكل دوري، لذا يُرجى زيارتها من حين لآخر لمعرفة ما إذا أضفنا الموضوع الذي تريد الاطّلاع عليه.
توافق مكتبة Firebase حسب النظام الأساسي
يوضّح الجدول التالي مكتبات Firebase المتوافقة مع منصات Apple. في الوقت الحالي، يتوفّر نظاما التشغيل visionOS وwatchOS بدعم من المنتدى فقط. يمكنك الاطّلاع على مستودع GitHub الخاص بحزمة تطوير البرامج (SDK) لمنصات Apple من Firebase للحصول على تعليمات التثبيت والتعرّف على المشاكل المعروفة.
| المكتبة | iOS | macOS | Mac Catalyst |
tvOS | visionOS | watchOS |
|---|---|---|---|---|---|---|
| A/B Testing | ||||||
| Firebase AI Logic 1 | الإصدار 15 من iOS والإصدارات الأحدث | الإصدار 12 من نظام التشغيل macOS أو إصدار أحدث | Catalyst 15+ | الإصدار 15 من نظام التشغيل tvOS والإصدارات الأحدث (دعم المنتدى فقط) | الإصدار 8 من watchOS أو الإصدارات الأحدث | |
| 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 |
الإصدار 14 من iOS والإصدارات الأحدث | الإصدار 11 من نظام التشغيل macOS أو إصدار أحدث | Catalyst 14+ | الإصدار 15 من نظام التشغيل tvOS أو إصدار أحدث | 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 | ||||||
1 كانت "Firebase AI Logic" تُعرف سابقًا باسم "Vertex AI in Firebase".
2 كانت "Firebase SQL Connect" تُعرف سابقًا باسم "Firebase Data Connect".
مقتطفات التطبيقات
سيتم إنشاء معظم مكتبات Firebase وتشغيلها في هدف App Clip، ولكن العديد منها مقيد نتيجة لقيود نظام التشغيل الأساسية. تشمل المشاكل المعروفة ما يلي:
- لا يمكن أن توجّه الروابط الديناميكية المستخدمين إلى تطبيق مصغّر إذا نقروا على رابط بدون تثبيت التطبيق.
- لا يمكن لـ Firestore وقاعدة بيانات الوقت الفعلي تحميل البيانات في App Clips بسبب تبعية CFStream الأساسية.
يمكنك الاطّلاع على مستودع Firebase GitHub للحصول على قائمة كاملة بمشاكل App Clip المعروفة.
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 كاملة. يمكنك الاطّلاع على منشور المدوّنة هذا الذي كتبه "بيتر فريز" لمزيد من التفاصيل.
يجب أن توقف تطبيقات SwiftUI ميزة swizzling بسبب مشكلة معروفة. يمكنك الاطّلاع على قسم تبديل مفوَّض التطبيق لمزيد من التفاصيل.
تبديل مفوَّض التطبيق
تستخدم Firebase تقنية swizzling لبعض الطرق في فئة app delegate في تطبيقك لربط بعض خدمات Firebase تلقائيًا بعمليات الاستدعاء في نظام التشغيل، مثل FCM ورمز APNs المميّز. يمكنك إيقاف ميزة swizzling في تطبيقك من خلال
إضافة العلامة FirebaseAppDelegateProxyEnabled في ملف Info.plist الخاص بالتطبيق
وضبطها على NO.
تستخدم أربعة منتجات من Firebase تقنية App Delegate swizzling، وهي: Analytics وApp Distribution وAuthentication وFCM. إذا أوقفت ميزة swizzling في تطبيقك وكنت تستخدم أيًا من المنتجات التالية، يُرجى الرجوع إلى الدليل الخاص بالمنتج للتعرّف على كيفية استخدام المنتج بدون swizzling:
دعم الإصدار 14 من نظام التشغيل iOS
يتضمّن نظام التشغيل iOS 14 تغييرات جديدة على أذونات المستخدمين في ما يتعلّق بمعرّف الإعلانات الخاص بالمستخدم. اطّلِع على دليل الاستعداد لنظام التشغيل iOS 14 لمزيد من التفاصيل حول ما إذا كان تطبيقك سيتأثر أم لا.
دعم مستمر للغة Objective-C
لتسهيل صيانة مستندات منصات Apple، قررت Firebase التركيز على مقتطفات Swift وعينات التعليمات البرمجية في أدلتنا ومواد المطورين الأخرى. ستتم إزالة مقتطفات Objective-C من أدلتنا اعتبارًا من 1 يناير 2024. سنواصل توفير مستندات مرجعية محدّثة للغة Objective-C لجميع منتجات Firebase.
مراجع مفتوحة المصدر لحِزم تطوير البرامج (SDK) لمنصّة Apple من Firebase
تتيح منصة Firebase تطوير البرامج المفتوحة المصدر، ونحن نشجّع على تقديم المساهمات والملاحظات من قِبل المنتدى.
حِزم تطوير البرامج (SDK) لمنصّة Firebase Apple
يتم تطوير جميع حزم Firebase SDK لمنصات Apple باستثناء Analytics كمكتبات مفتوحة المصدر في مستودع Firebase GitHub العام.
FirebaseUI
FirebaseUI هي مجموعة من مكتبات الأدوات المساعدة المستندة إلى Firebase، بما في ذلك مسار واجهة مستخدم جاهز للمصادقة وأدوات مساعدة للبيانات في Cloud Firestore وRealtime Database. يمكنك الاطّلاع على مزيد من التفاصيل حول FirebaseUI على صفحة GitHub.
نماذج البدء السريع
يحتفظ Firebase بمجموعة من نماذج البدء السريع لمعظم واجهات برمجة تطبيقات Firebase على نظام التشغيل iOS. يمكنك العثور على أدلة البدء السريع هذه في مستودع البدء السريع العام على GitHub في Firebase.
يمكنك فتح كل دليل تشغيل سريع في Xcode، ثم تشغيله على جهاز جوّال أو محاكي. أو يمكنك استخدام أدلة البدء السريع هذه كأمثلة على الرموز البرمجية لاستخدام حِزم تطوير البرامج (SDK) في Firebase.