التعرّف على مشاريع Firebase

تقدّم هذه الصفحة نظرة عامة موجزة على عدة مفاهيم مهمة حول مشاريع Firebase. عند توفّر الروابط، يُرجى اتّباعها للعثور على معلومات أكثر تفصيلاً عن الميزات والخدمات والأدوات وأفضل الممارسات.

العلاقة بين مشاريع Firebase والتطبيقات والمنتجات

مشروع Firebase هو الكيان الأعلى مستوى في Firebase. في أي مشروع، يمكنك تسجيل تطبيقاتك على Apple أو Android أو الويب. بعد تسجيل تطبيقاتك في Firebase، يمكنك إضافة حِزم تطوير البرامج (SDK) من Firebase لأي عدد من منتجات Firebase، مثل Analytics، Cloud Firestore، Performance Monitoring، أو Remote Config.

يمكنك الاطّلاع على معلومات أكثر تفصيلاً عن هذه العملية في دليل بدء الاستخدام لمنصّتك:
iOS+ | Android | الويب | Unity | C++‎ | Flutter.

فهم التسلسل الهرمي لمشاريع Firebase

مخطّط بياني يعرض التسلسل الهرمي الأساسي لمشروع Firebase، بما في ذلك المشروع والتطبيقات المسجّلة فيه والموارد والخدمات المتوفّرة فيه يعرض هذا الرسم البياني التسلسل الهرمي الأساسي لمشروع Firebase. في ما يلي العلاقات الرئيسية:

  • يشبه مشروع Firebase حاوية لجميع تطبيقاتك وأي موارد وخدمات يتم توفيرها للمشروع.

  • يمكن أن يحتوي مشروع Firebase على تطبيق واحد أو أكثر على Firebase مسجَّل فيه (على سبيل المثال، كلّ من إصدارَي التطبيق على iOS وAndroid، أو كلّ من الإصدارَين المجاني والمدفوع من التطبيق).

  • تتشارك جميع تطبيقات Firebase المسجَّلة في مشروع Firebase نفسه جميع الموارد والخدمات التي يتم توفيرها للمشروع، ويمكنها الوصول إليها. إليك بعض الأمثلة:

    • تتشارك جميع تطبيقات Firebase المسجَّلة في مشروع Firebase نفسه في النظم الخلفية نفسها، مثل Firebase Hosting وAuthentication وRealtime Database وCloud Firestore وCloud Storage وCloud Functions.

    • ترتبط جميع تطبيقات Firebase المسجَّلة في مشروع Firebase نفسه بموقع "إحصاءات Google" نفسه، حيث يكون كل تطبيق Firebase مصدر بيانات منفصلاً في هذا الموقع.

العلاقة بين مشاريع Firebase وGoogle Cloud

عند إنشاء مشروع جديد على Firebase، فإنّك في الواقع تنشئ مشروعًا على Google Cloud في الخلفية. يمكنك حتى إنشاء مشروع Google Cloud أولاً، ثم إضافة Firebase إلى المشروع لاحقًا. يمكنك اعتبار مشروع Google Cloud حاوية افتراضية للبيانات والرمز والإعدادات والخدمات.

Google Cloud

يُرجى العِلم أنّه بالنسبة إلى جميع مشاريع Firebase، يضيف Firebase تلقائيًا إلى مشروعك تصنيفًا يحمل القيمة firebase:enabled ضمن صفحة إدارة الهوية والوصول والمشرف > التصنيفات في Google Cloud Console. يمكنك الاطّلاع على مزيد من المعلومات عن هذا التصنيف في الأسئلة الشائعة .

بما أنّ مشروع Firebase هو مشروع على Google Cloud project:

  • يمكنك الوصول إلى المشروع والتفاعل معه في الـ Firebase console بالإضافة إلى الـ Google Cloud console و Google APIs console.

  • يمكنك التفاعل مع المشروع باستخدام الـ Firebase CLI والـ gcloud CLI و أي مورد من Terraform من Google.

  • يمكنك استخدام المنتجات وواجهات برمجة التطبيقات من كلّ من Firebase وGoogle Cloud في الـ مشروع.

  • تتم مشاركة أذونات وأدوار إدارة الهوية والوصول للمشروع بين Firebase وGoogle Cloud. أي إذن وصول يحصل عليه أحد أعضاء المشروع (أي، مستخدِم رئيسي) إلى مشروعك Google Cloudسينطبق أيضًا على مشروعك على Firebase (والعكس صحيح).

  • الفوترة للمشروع تتم مشاركتها بين Firebase و Google Cloud. إذا كانت الفوترة مفعّلة في مشروعك على Google Cloud، سيتم إدراج مشروعك على Firebase ضمن خطة Blaze للدفع حسب الاستخدام من Firebase.

  • تتم مشاركة المعرّفات الفريدة للمشروع (مثل رقم المشروع و رقم تعريف المشروع) بين Firebase وGoogle Cloud.

  • أي تسلسل هرمي للموارد يتم تطبيقه على مشروعك Google Cloud (على سبيل المثال، المؤسسة والمجلدات وما إلى ذلك) سينطبق أيضًا على مشروعك على Firebase.

  • يؤدي حذف المشروع إلى حذفه في كلّ من Firebase وGoogle Cloud.

  • يؤدي حذف مورد أو بيانات أو تعديلها ضمن المشروع إلى تطبيق التغييرات في كلّ من Firebase و Google Cloud.

إعداد مشروع Firebase وتسجيل التطبيقات

يمكنك إعداد مشروع Firebase وتسجيل التطبيقات في Firebase Console (أو، في حالات الاستخدام المتقدّمة، باستخدام Firebase Management REST API أو الـ Firebase CLI). عند إعداد مشروع وتسجيل التطبيقات، عليك اتّخاذ بعض القرارات التنظيمية وإضافة معلومات الإعدادات الخاصة بـ Firebase إلى مشاريعك المحلية.

بالنسبة إلى تطبيقات الإنتاج، عليك إعداد سير عمل واضح للتطوير، والذي يتضمّن عادةً استخدام بيئات متعددة. يُرجى مراجعة مستنداتنا عن سير عمل المطوّرين، بما في ذلك أفضل الممارسات العامة والإرشادات الأمنية العامة لإعداد مشاريع Firebase وتسجيل التطبيقات لإنشاء سير عمل التطوير.

التفاعل مع مشروع Firebase

بالإضافة إلى حِزم تطوير البرامج (SDK) للمنتجات، يمكنك التفاعل مباشرةً مع مشروع Firebase باستخدام العديد من الأدوات والواجهات المختلفة.

Firebase console

تقدّم Firebase Console البيئة الأكثر شمولاً لإدارة منتجات Firebase والتطبيقات والإعدادات على مستوى المشروع.

تعرض اللوحة الجانبية اليمنى من وحدة التحكّم منتجات Firebase، منظَّمة حسب الفئات الأعلى مستوى. في أعلى اللوحة الجانبية اليمنى، انقر على الإعدادات للوصول إلى إعدادات المشروع، والتي تشمل عمليات التكامل، أذونات الوصول، والفوترة.

يعرض منتصف وحدة التحكّم أزرارًا تشغّل خطوات الإعداد لتسجيل أنواع مختلفة من التطبيقات. بعد البدء في استخدام Firebase، تتغيّر المساحة الرئيسية في وحدة التحكّم إلى لوحة بيانات تعرض إحصاءات عن المنتجات التي تستخدمها.

يُرجى العِلم أنّه بما أنّ مشروع Firebase هو أيضًا مشروع على Google Cloud، قد تلاحظ أنّ مهام أو منتجات مختلفة تتطلب منك استخدام Google Cloud Console بدلاً من Firebase Console.

Firebase CLI (أداة سطر الأوامر)

تقدّم Firebase أيضًا Firebase CLI لإعداد و إدارة منتجات Firebase معيّنة، مثل Firebase Hosting و Cloud Functions for Firebase وFirebase Extensions.

بعد تثبيت Firebase CLI، يمكنك الوصول إلى الأمر العام firebase. استخدِم الـ Firebase CLI لـ ربط دليل تطبيقك المحلي بمشروع Firebase، ثم انشر إصدارات جديدة من المحتوى المستضاف على Firebase أو تحديثات للدوال.

Firebase Management REST API

باستخدام Firebase Management REST API، يمكنك إدارة مشروع Firebase آليًا. على سبيل المثال، يمكنك تسجيل تطبيق آليًا في مشروع أو إدراج التطبيقات المسجَّلة حاليًا (iOS+‎ | Android | الويب).

معرّفات مشروع Firebase

يمكن تحديد مشروع Firebase في النظام الخلفي لـ Firebase وفي واجهات المطوّرين المختلفة باستخدام معرّفات مختلفة، بما في ذلك اسم المشروع ورقم المشروع ورقم تعريف المشروع.

اسم المشروع

عند إنشاء مشروع، عليك تقديم اسم مشروع. هذا المعرّف هو الاسم الداخلي فقط للمشروع في Firebase Console و Google Cloud Console و Firebase CLI. لا يتم عرض اسم المشروع في أي منتج أو خدمة أو مورد من Firebase أو Google Cloud مرئي للجميع، بل يساعدك فقط في التمييز بسهولة أكبر بين مشاريع متعددة.

يمكنك تعديل اسم المشروع في أي وقت في اللوحة العلوية من الإعدادات > الإعدادات العامة علامة التبويب من Firebase Console.

رقم المشروع

يحتوي مشروع Firebase (ومشروع Google Cloud المرتبط بهGoogle Cloud) على رقم مشروع. هذا هو المعرّف الأساسي الفريد على مستوى العالم الذي تخصّصه Google للمشروع. استخدِم هذا المعرّف عند إعداد عمليات التكامل و/أو إرسال طلبات البيانات من واجهة برمجة التطبيقات إلى Firebase أو Google أو خدمات خارجية.

لا يمكنك تعديل رقم المشروع. إذا حذفت مشروعًا، يتم أيضًا حذف رقم المشروع ولا يمكن استخدامه مرة أخرى في أي مشروع آخر.

رقم تعريف المشروع

يحتوي مشروع Firebase (ومشروعه المرتبط Google Cloud) على رقم تعريف مشروع. هذا هو معرّف فريد يحدّده المستخدم للمشروع في كلّ من Firebase و Google Cloud. عند إنشاء مشروع على Firebase، يخصّص Firebase تلقائيًا رقم تعريف فريدًا للمشروع، ولكن يمكنك تعديله أثناء إعداد المشروع. يجب بشكل عام التعامل مع هذا المعرّف كاسم مستعار مناسب للإشارة إلى المشروع.

ملفات وإعدادات Firebase

عند تسجيل تطبيق في مشروع Firebase، يقدّم Firebase Console ملف إعداد Firebase (لتطبيقات Apple/Android) أو إعدادًا (لتطبيقات الويب) تضيفه مباشرةً إلى دليل تطبيقك المحلي.

  • بالنسبة إلى تطبيقات Apple، عليك إضافة ملف إعداد GoogleService-Info.plist.
  • بالنسبة إلى تطبيقات Android، عليك إضافة ملف إعداد google-services.json.
  • بالنسبة إلى تطبيقات الويب، عليك إضافة إعداد Firebase.

في أي وقت، يمكنك الحصول على ملف إعداد Firebase أو إعداد التطبيق.

يربط ملف إعداد Firebase أو الإعداد تطبيقًا بمشروع Firebase معيّن وموارده (قواعد البيانات ومجموعات التخزين وما إلى ذلك). يتضمّن الإعداد "خيارات Firebase"، وهي المَعلمات التي تتطلبها خدمات Firebase وGoogle للتواصل مع واجهات برمجة التطبيقات على خادم Firebase وربط بيانات العميل بمشروع Firebase وتطبيق Firebase. في ما يلي "خيارات Firebase" المطلوبة والحد الأدنى منها:

  • مفتاح واجهة برمجة التطبيقات: هو سلسلة مشفّرة بسيطة تُستخدم عند استدعاء واجهات برمجة تطبيقات معيّنة لا تحتاج إلى الوصول إلى بيانات المستخدم الخاصة (قيمة مثال: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO)

  • رقم تعريف المشروع: هو معرّف فريد يحدّده المستخدم للمشروع في كلّ من Firebase وGoogle Cloud. قد يظهر هذا المعرّف في عناوين URL أو أسماء بعض موارد Firebase، ولكن يجب بشكل عام التعامل معه كاسم مستعار مناسب للإشارة إلى المشروع. (قيمة مثال: myapp-project-123)

  • رقم تعريف التطبيق ("AppID"): هو المعرّف الفريد لتطبيق Firebase في كلّ من Firebase بتنسيق خاص بالمنصّة:

    • تطبيقات Firebase على Apple: GOOGLE_APP_ID (قيمة مثال: 1:1234567890:ios:321abc456def7890)
      هذا ليس رقم تعريف حزمة Apple.
    • تطبيقات Firebase على Android: mobilesdk_app_id (قيمة مثال: 1:1234567890:android:321abc456def7890)
      هذا ليس اسم حزمة Android أو رقم تعريف تطبيق Android.
    • تطبيقات Firebase على الويب: appId (قيمة مثال: 1:65211879909:web:3ae38ef1cdcb2e01fe5f0c)

يُعد محتوى ملف إعداد Firebase أو الإعداد علنيًا، بما في ذلك رقم تعريف التطبيق الخاص بالمنصّة (رقم تعريف حزمة Apple أو اسم حزمة Android) والقيم الخاصة بمشروع Firebase، مثل مفتاح واجهة برمجة التطبيقات ورقم تعريف المشروع، Realtime Database عنوان URL، وCloud Storage اسم المجموعة. في ضوء ذلك، استخدِم Firebase Security Rules لحماية بياناتك وملفاتك في Realtime Database و Cloud Firestore و Cloud Storage.

بالنسبة إلى المشاريع المفتوحة المصدر، لا ننصح بشكل عام بتضمين ملف إعداد Firebase أو إعداد التطبيق في نظام التحكّم بالمصادر لأنّه في معظم الحالات، يجب أن ينشئ المستخدمون مشاريعهم الخاصة على Firebase ويوجّهوا تطبيقاتهم إلى مواردهم الخاصة على Firebase (عبر ملف إعداد Firebase أو الإعداد الخاص بهم).

الحدود العامة لمشاريع Firebase والتطبيقات والمواقع الإلكترونية

في ما يلي بعض الحدود العامة لمشاريع Firebase والتطبيقات والمواقع الإلكترونية:

  • عدد المشاريع لكل حساب على Google (عنوان البريد الإلكتروني)

    • خطة Spark: تقتصر حصة إنشاء المشاريع على عدد صغير من المشاريع (عادةً ما يتراوح بين 5 و10 مشاريع).
    • خطة Blaze: لا تزال حصة إنشاء المشاريع محدودة، ولكن قد تزيد عند ربط حساب Cloud Billing ساري المفعول.

    يُرجى العِلم بما يلي بشأن الحد الأقصى لحصة إنشاء المشاريع:

    • هذا الحد ليس خاصًا بـ Firebase. تكون حدود Firebase لحصة المشاريع هي نفسها حدود Google Cloud.
    • في الحالات النادرة التي تكون فيها هناك حاجة إلى ذلك، يمكنك طلب زيادة حصة المشاريع.
    • يتطلب الحذف الكامل للمشروع 30 يومًا ويتم احتسابه ضمن حصة المشاريع إلى أن يتم حذف المشروع بالكامل.

    يمكنك التعرّف على أفضل الممارسات العامة التي ننصح بها في Firebase لإعداد مشاريع Firebase.

  • عدد التطبيقات لكل مشروع

    يفرض Firebase حدًا أقصى يبلغ 30 تطبيقًا على إجمالي عدد تطبيقات Firebase ضمن مشروع Firebase.

    عليك التأكّد من أنّ جميع تطبيقات Firebase ضمن مشروع Firebase واحد هي أشكال مختلفة من المنصات للتطبيق نفسه من منظور المستخدم النهائي. يمكنك قراءة المزيد عن ميزة "الوصول المتعدد المستأجرين" في مستندات أفضل الممارسات.

    يمكنك الاطّلاع على مزيد من المعلومات عن الـ حد الأقصى لعدد التطبيقات لكل مشروع في الأسئلة الشائعة.

  • عدد مواقع Hosting لكل مشروع

    تتيح ميزة Firebase Hostingالمواقع المتعددة ما يصل إلى 36 موقعًا إلكترونيًا لكل مشروع.

تشغيل تطبيقك