Google is committed to advancing racial equity for Black communities. See how.
ترجمت واجهة Cloud Translation API‏ هذه الصفحة.
Switch to English

افهم مشاريع Firebase

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

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

مشروع Firebase هو كيان المستوى الأعلى لـ Firebase. في المشروع ، يمكنك إنشاء تطبيقات Firebase عن طريق تسجيل تطبيقات iOS أو Android أو الويب. بعد تسجيل تطبيقاتك في Firebase ، يمكنك إضافة Firebase SDKs لأي عدد من منتجات Firebase ، مثل Analytics أو Cloud Firestore أو مراقبة الأداء أو Remote Config.

تعرف على المزيد من المعلومات التفصيلية حول هذه العملية في أدلة البدء ( iOS | Android | web | Unity | C ++ ).

العلاقة بين مشاريع Firebase و Google Cloud Platform (GCP)

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

نظرًا لأن مشروع Firebase هو مشروع GCP:

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

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

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

اسم المشروع

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

يمكنك تعديل اسم مشروع في أي وقت في Project الإعدادات لوحدة تحكم Firebase. يتم عرض اسم المشروع في الجزء العلوي.

رقم المشروع

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

مكالمات API ورقم المشروع

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

تعرف على المزيد حول استخدام معرّفات المشروع ، وخاصة رقم المشروع ، في معيار AIP 2510 من Google.

ابحث عن رقم المشروع

  • وحدة تحكم Firebase: انقر على Project settings . يتم عرض رقم المشروع في الجزء العلوي.

  • Firebase CLI: تشغيل firebase projects:list . يتم عرض رقم المشروع مع جميع مشاريع Firebase المرتبطة بحسابك.

  • Firebase Management REST API: استدعاء projects.list . يحتوي نص الاستجابة على رقم المشروع في كائن FirebaseProject .

معرّف المشروع

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

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

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

يتم عرض معرّف المشروع في موارد Firebase المرئية للجمهور ، على سبيل المثال:

  • نطاق الاستضافة الافتراضي - PROJECT_ID .web.app و PROJECT_ID .firebaseapp.com
  • عنوان URL الافتراضي لقاعدة البيانات في الوقت الفعلي - PROJECT_ID .firebaseio.com
  • اسم PROJECT_ID .appspot.com التخزين السحابي الافتراضي - PROJECT_ID .appspot.com

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

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

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

يمكنك أيضًا إعداد اسم مستعار للمشروع لكل مشروع Firebase حتى لا تضطر إلى تذكر معرّفات المشروع.

مكالمات API ومعرف المشروع

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

تعرف على المزيد حول استخدام معرّفات المشروع ، وخاصة رقم المشروع ، في معيار AIP 2510 من Google.

ابحث عن معرّف المشروع

  • وحدة تحكم Firebase: انقر على Project settings . يتم عرض معرف المشروع في الجزء العلوي.

  • Firebase CLI: تشغيل firebase projects:list . يتم عرض معرّف المشروع مع جميع مشاريع Firebase المرتبطة بحسابك.

  • Firebase Management REST API: استدعاء projects.list . يحتوي نص الاستجابة على معرّف المشروع في كائن FirebaseProject .

ملفات وكائنات تهيئة Firebase

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

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

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

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

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

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

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

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

يعتبر محتوى ملف أو كائن تكوين Firebase عامًا ، بما في ذلك معرف النظام الأساسي للتطبيق (معرف حزمة iOS أو اسم حزمة Android) والقيم الخاصة بمشروع Firebase ، مثل مفتاح API ومعرف المشروع وعنوان URL لقاعدة بيانات Realtime و اسم حاوية التخزين. نظرًا لذلك ، استخدم قواعد أمان Firebase لحماية بياناتك وملفاتك في Realtime Database و Cloud Firestore و Cloud Storage .

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

إدارة مشروع Firebase

تأكد من مراجعة أفضل الممارسات العامة على مستوى المشروع (في أسفل هذه الصفحة) لاعتبارات قد تؤثر على كيفية إدارة مشروع Firebase.

أدوات لإدارة المشروع

وحدة تحكم Firebase

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

وحدة تحكم Firebase - شاشة نظرة عامة على المشروع

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

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

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

يوفر Firebase أيضًا Firebase CLI لتهيئة منتجات Firebase المحددة وإدارتها ، مثل Firebase Hosting و Cloud Functions for Firebase.

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

واجهة برمجة تطبيقات REST لإدارة Firebase

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

أفضل الممارسات العامة

إضافة تطبيقات لمشروع

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

إذا كان لديك متغيرات بناء متعددة بمعرفات حزمة iOS مختلفة أو أسماء حزم Android محددة ، يمكنك تسجيل كل متغير مع مشروع Firebase منفصل. ومع ذلك ، إذا كان لديك متغيرات تشترك في نفس موارد Firebase ، فقم بتسجيلها في نفس مشروع Firebase.

على الرغم من عدم وجود قيود على عدد التطبيقات داخل المشروع ، فإن تسجيل تطبيق يمكن أن ينشئ واحدًا أو أكثر من معرّفات OAuth 2.0 الأساسية. يوجد حد يبلغ حوالي 30 معرّفًا للعميل يمكن إنشاؤها داخل مشروع واحد.

متعدد الايجار

لا يُنصح بربط العديد من التطبيقات و / أو مواقع الويب المستقلة منطقيًا بمشروع واحد (غالبًا ما يُطلق عليه "متعدد المستأجرين"). يمكن أن يؤدي تعدد المستأجرين إلى مشاكل خطيرة تتعلق بالتكوين وخصوصية البيانات ، بما في ذلك المشكلات غير المقصودة المتعلقة بتجميع التحليلات والمصادقة المشتركة وهياكل قواعد البيانات شديدة التعقيد والصعوبات المتعلقة بقواعد الأمان.

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

على سبيل المثال ، إذا قمت بتطوير تطبيق تسمية أولية ، فيجب أن يكون لكل تطبيق مصنف بشكل مستقل مشروع Firebase الخاص به. لا يقوم كل تطبيق ولا ينبغي له (لأسباب تتعلق بالخصوصية) مشاركة البيانات مع الآخرين.

لاحظ بعض الحدود العامة لمشاريع وتطبيقات ومواقع Firebase:

  • عدد المشاريع لكل حساب

    • خطة Spark ذات المستوى المجاني - تقتصر حصة إنشاء المشروع على عدد أقل من المشاريع (عادةً حوالي 5-10).
    • الخطط المدفوعة - تزداد حصة إنشاء المشروع لكل حساب فوترة بشكل كبير طالما أن حساب فوترة السحابة المرتبط في وضع جيد.

    نادرًا ما يكون الحد الأقصى لحصة إنشاء المشروع مصدر قلق لمعظم المطورين ، ولكن إذا لزم الأمر ، يمكنك طلب زيادة في حصة المشروع .

    اعلم أن الحذف الكامل للمشروع يتطلب 30 يومًا ويتم احتسابه ضمن الحصة النسبية للمشروع حتى يتم حذف المشروع بالكامل.

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

    على الرغم من عدم وجود قيود على عدد التطبيقات داخل المشروع ، فإن تسجيل تطبيق يمكن أن ينشئ واحدًا أو أكثر من معرّفات OAuth 2.0 الأساسية. يوجد حد يبلغ حوالي 30 معرّفًا للعميل يمكن إنشاؤها داخل مشروع واحد.

  • عدد مواقع الاستضافة لكل مشروع

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

إطلاق التطبيق الخاص بك