هل تواجه تحديات أخرى أو لا ترى مشكلتك موضّحة أدناه؟ يُرجى الإبلاغ عن خطأ أو طلب ميزة والانضمام إلى مناقشات Stack Overflow.
مشاريع وتطبيقات Firebase
ما هو مشروع Firebase؟
مشروع Firebase هو العنصر الأعلى مستوى في Firebase. في أحد المشاريع، يمكنك تسجيل تطبيقات Apple أو Android أو الويب. بعد تسجيل تطبيقاتك في Firebase، يمكنك إضافة حِزم تطوير البرامج (SDK) الخاصة بالمنتجات في Firebase إلى تطبيقك، مثل Analytics أو Cloud Firestore أو Crashlytics أو Remote Config.
عليك تسجيل صيغ تطبيقات Apple وAndroid وتطبيقات الويب ضمن مشروع واحد على Firebase. يمكنك استخدام مشاريع متعددة على Firebase لتوفير بيئات متعددة، مثل بيئات التطوير والتنظيم والإصدار العلني.
في ما يلي بعض المراجع لمعرفة المزيد عن مشاريع Firebase:
- التعرّف على مشاريع Firebase: تقدّم هذه الصفحة نظرة عامة موجزة على العديد من المفاهيم المهمة حول مشاريع Firebase، بما في ذلك علاقتها بـ Google Cloud والتسلسل الهرمي الأساسي للمشروع وتطبيقاته وموارده.
- أفضل الممارسات العامة لإعداد مشاريع Firebase: تقدّم هذه الصفحة أفضل الممارسات العامة والعالية المستوى لإعداد مشاريع Firebase وتسجيل تطبيقاتك في مشروع، وذلك لضمان سير عمل واضح للتطوير يستخدم بيئات مميزة.
يُرجى العِلم أنّه بالنسبة إلى جميع مشاريع Firebase، يضيف Firebase تلقائيًا تصنيفًا بقيمة
firebase:enabled
ضمن صفحة
التصنيفات لمشروعك في
وحدة تحكّم Google Cloud. يمكنك الاطّلاع على مزيد من المعلومات حول هذه التصنيفات في الأسئلة الشائعة.
ما هي مؤسسة Google Cloud؟
Google Cloud المؤسسة هي حاوية لمشاريع Google Cloud (بما في ذلك مشاريع Firebase). يتيح هذا التسلسل الهرمي تنظيمًا أفضل وإدارة وصول وتدقيقًا لمشاريعك على Google Cloud وFirebase. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة إنشاء المؤسسات وإدارتها.
كيف يمكنني إضافة Firebase إلى مشروع Google Cloud حالي؟
قد تكون لديك مشاريع Google Cloud حالية تتم إدارتها من خلال وحدة تحكّم Google Cloud أو Google APIs Console.
يمكنك إضافة Firebase إلى مشاريع Google Cloud الحالية هذه باستخدام أي من الخيارات التالية:
- استخدام وحدة تحكّم Firebase
- استخدام خيار آلي:
- استدعاء نقطة نهاية Firebase Management REST API
projects.addFirebase
- نفِّذ أمر واجهة سطر الأوامر Firebase
firebase projects:addfirebase
. - استخدِم Terraform.
- استدعاء نقطة نهاية Firebase Management REST API
يمكنك الاطّلاع على مزيد من التفاصيل حول إضافة Firebase إلى مشروع Google Cloud.
كيف يعمل دمج Firebase مع Google Cloud؟
تتكامل منصة Firebase بشكل كبير مع Google Cloud. تتم مشاركة المشاريع بين Firebase وGoogle Cloud، لذا يمكن تفعيل خدمات Firebase وخدمات Google Cloud في المشاريع. يمكنك الوصول إلى المشروع نفسه من وحدة تحكّم Firebase أو وحدة تحكّم Google Cloud. على وجه التحديد:
- تستند بعض منتجات Firebase مباشرةً إلى Google Cloud، مثل Cloud Storage for Firebase. ستستمر قائمة المنتجات التي تتيح استخدام Google Cloud في التوسّع بمرور الوقت.
- تتشارك Firebase وGoogle Cloud العديد من إعداداتك، بما في ذلك معلومات المتعاونين والفوترة. يظهر استخدامك لكل من Firebase وGoogle Cloud في الفاتورة نفسها.
بالإضافة إلى ذلك، عند الترقية إلى خطة Blaze، يمكنك استخدام أي من خدمات البنية الأساسية كخدمة وواجهات برمجة التطبيقات الرائدة عالميًا من Google Cloud مباشرةً داخل مشروعك على Firebase، وذلك Google Cloudبالأسعار العادية. يمكنك أيضًا تصدير البيانات من Google Cloud مباشرةً إلى BigQuery لتحليلها. لمزيد من المعلومات، اطّلِع على ربط BigQuery بمنصّة Firebase.
هناك العديد من المزايا التي تعزّز الأمان وتحسّن وقت الاستجابة وتوفّر الوقت عند استخدام Google Cloud مع Firebase (مقارنةً بالخدمات السحابية الأخرى غير المتوفرة في الموقع الجغرافي نفسه). يمكنك الاطّلاع على موقع Google Cloud الإلكتروني لمزيد من التفاصيل.
لماذا يحمل مشروعي Google Cloud التصنيف firebase:enabled
؟
في صفحة التصنيفات الخاصة بمشروعك في وحدة تحكّم Google Cloud، قد يظهر لك تصنيف firebase:enabled
(تحديدًا، Key
من firebase
مع Value
من enabled
).
أضافت Firebase هذه التصنيف تلقائيًا لأنّ مشروعك هو مشروع Firebase، ما يعني أنّ مشروعك يتضمّن إعدادات وخدمات خاصة بـ Firebase تم تفعيلها. مزيد من المعلومات حول العلاقة بين مشاريع Firebase وGoogle Cloud
ننصحك بشدة بعدم تعديل هذه التصنيفات أو حذفها. تستخدم Firebase وGoogle Cloud هذه التصنيفات لعرض مشاريعك على Firebase (على سبيل المثال، باستخدام نقطة نهاية REST
API projects.list
أو في القوائم ضمن وحدة تحكّم Firebase).
يُرجى العِلم أنّ إضافة هذه التصنيف يدويًا إلى قائمة تصنيفات المشاريع لا تتيح إعدادات وخدمات Firebase الخاصة بمشروعك Google Cloud. لإجراء ذلك، عليك إضافة Firebase باستخدام وحدة تحكّم Firebase (أو، لحالات الاستخدام المتقدّمة، باستخدام Firebase Management REST API أو Firebase CLI).
لماذا لا يظهر مشروع Firebase في قائمة مشاريع Firebase؟
ينطبق هذا السؤال الشائع إذا لم يظهر مشروعك على Firebase في أيّ من المواقع التالية:
- في قائمة المشاريع التي تعرضها ضمن وحدة تحكّم Firebase
- في الردّ الوارد من استدعاء نقطة النهاية
projects.list
لواجهة برمجة تطبيقات REST - في الردّ الناتج عن تنفيذ أمر واجهة سطر الأوامر Firebase
firebase projects:list
جرِّب الخطوات التالية لتحديد المشاكل وحلّها:
- في البداية، حاوِل الوصول إلى مشروعك من خلال الانتقال مباشرةً إلى عنوان URL الخاص بالمشروع. استخدِم التنسيق التالي:
https://console.firebase.google.com/project/PROJECT_ID/overview
- إذا لم تتمكّن من الوصول إلى المشروع أو تلقّيت أخطاء في الأذونات، تحقّق مما يلي:
- تأكَّد من تسجيل الدخول إلى Firebase باستخدام حساب Google نفسه الذي لديه إذن الوصول إلى المشروع. يمكنك تسجيل الدخول إلى Firebase وحدة التحكّم وتسجيل الخروج منها من خلال صورة حسابك الرمزية في أعلى يسار وحدة التحكّم.
- تحقَّق مما إذا كان بإمكانك عرض المشروع في Google Cloud وحدة التحكّم.
- تأكَّد من أنّ مشروعك يتضمّن التصنيف
firebase:enabled
في صفحة التصنيفات الخاصة بمشروعك في وحدة تحكّم Google Cloud. تستخدِم Firebase وGoogle Cloud هذه التصنيفات لعرض مشاريعك على Firebase. إذا لم يظهر لك هذا التصنيف ولكن كانت واجهة Firebase Management API مفعّلة لمشروعك، أضِف التصنيف يدويًا (تحديدًا،Key
منfirebase
معValue
منenabled
). - تأكَّد من أنّك حصلت على أحد أدوار المستخدمين الأساسية لإدارة الهوية وإمكانية الوصول (المالك أو المحرّر أو المشاهد) أو دور يتضمّن أذونات متعلقة بمنصة Firebase، مثل دور Firebase المحدّد مسبقًا. يمكنك الاطّلاع على أدوارك في صفحة إدارة الهوية وإمكانية الوصول في وحدة تحكّم Google Cloud.
- إذا كان مشروعك تابعًا لمؤسسة Google Cloud، قد تحتاج إلى أذونات إضافية لرؤية المشروع مُدرَجًا في وحدة تحكّم Firebase. تواصَل مع الشخص الذي يدير مؤسستك Google Cloud لمنحك الدور المناسب لعرض المشروع، مثل دور "المتصفّح".
إذا لم تساعدك أي من خطوات تحديد المشاكل وحلّها المذكورة أعلاه في الاطّلاع على مشروعك في قائمة مشاريع Firebase، يُرجى التواصل مع فريق دعم Firebase.
كم عدد المشاريع التي يمكنني امتلاكها لكل حساب Google (عنوان بريد إلكتروني)؟
- خطة أسعار Spark: تقتصر حصة إنشاء المشاريع على عدد صغير من المشاريع (عادةً ما يتراوح بين 5 و10 مشاريع).
- خطة أسعار "الفئة المَرِنة": لا يزال عدد المشاريع التي يمكن إنشاؤها محدودًا، ولكن قد يزداد عند ربط حساب Cloud Billing بحالة جيدة.
يُرجى ملاحظة ما يلي بشأن الحدّ الأقصى المسموح به لإنشاء المشاريع:
- هذا الحدّ ليس خاصًا بمنصة Firebase. تتطابق حدود حصة المشاريع في Firebase مع حدود Google Cloud.
- في الحالات النادرة التي تحتاج فيها إلى ذلك، يمكنك طلب زيادة حصة المشروع.
- يتطلّب الحذف الكامل للمشروع 30 يومًا، ويتم احتساب هذا المشروع ضمن حصة المشروع إلى أن يتم حذفه بالكامل.
تعرَّف على أفضل الممارسات العامة التي تنصح بها Firebase لإعداد مشاريع Firebase.
كم عدد تطبيقات Firebase التي يمكنني إضافتها إلى مشروع Firebase؟
مشروع Firebase هو حاوية لتطبيقات Firebase على Apple وAndroid والويب. تفرض Firebase حدًا أقصى يبلغ 30 تطبيقًا على إجمالي عدد تطبيقات Firebase ضمن مشروع Firebase.
بعد هذا العدد، يبدأ الأداء في التدهور (خاصةً بالنسبة إلى Google Analytics)، وفي النهاية، وعند عدد أكبر من التطبيقات، تتوقف بعض وظائف المنتج عن العمل. بالإضافة إلى ذلك، إذا كنت تستخدم ميزة "تسجيل الدخول باستخدام حساب Google" كموفّر مصادقة، يتم إنشاء معرّف عميل أساسي لبروتوكول OAuth 2.0 لكل تطبيق في مشروعك. يمكن إنشاء حوالي 30 معرّف عميل كحدّ أقصى ضمن مشروع واحد.
يجب التأكّد من أنّ جميع تطبيقات Firebase ضِمن مشروع واحد على Firebase هي إصدارات مختلفة من التطبيق نفسه من منظور المستخدم النهائي. على سبيل المثال، إذا كنت تطوّر تطبيقًا يحمل علامة تجارية خاصة، يجب أن يكون لكل تطبيق يحمل علامة تجارية بشكل مستقل مشروع Firebase خاص به، ولكن يمكن أن يتضمّن المشروع نفسه إصدارَي Apple وAndroid من تلك العلامة التجارية. يمكنك الاطّلاع على إرشادات أكثر تفصيلاً في أفضل الممارسات العامة لإعداد مشاريع Firebase.
في الحالات النادرة التي يتطلّب فيها مشروعك أكثر من 30 تطبيقًا، يمكنك طلب زيادة الحد الأقصى لعدد التطبيقات. يجب أن يكون مشروعك ضمن خطة أسعار Blaze لإجراء هذا الطلب. يُرجى الانتقال إلى وحدة تحكّم Google Cloud لتقديم طلبك وتقييمه. يمكنك الاطّلاع على مزيد من المعلومات حول إدارة الحصص في مستندات Google Cloud.
ماذا يحدث إذا صنّفتُ مشروعي على أنّه بيئة "إنتاج"؟
في وحدة تحكّم Firebase، يمكنك تصنيف مشاريعك على Firebase حسب نوع البيئة، إما الإنتاج أو غير محدّد (بيئات غير إنتاجية).
لا يؤثّر تصنيف مشروعك كنوع بيئة في طريقة عمل مشروعك على Firebase أو ميزاته. ومع ذلك، يمكن أن يساعدك وضع العلامات أنت وفريقك في إدارة مشاريع Firebase المختلفة لدورة حياة التطبيق.
إذا صنّفت مشروعك على أنّه بيئة إنتاج، سنضيف علامة Prod بلون زاهٍ إلى المشروع في وحدة تحكّم Firebase، لتذكيرك بأنّ أي تغييرات قد تؤثّر في تطبيقات الإنتاج المرتبطة. في المستقبل، قد نضيف المزيد من الميزات وتدابير الوقاية لمشاريع Firebase المصنّفة كبيئات إنتاج.
لتغيير نوع بيئة مشروعك على Firebase، انتقِل إلى settings إعدادات المشروع > عام، ثم انقر على edit في بطاقة مشروعك ضمن البيئة لتغيير نوع البيئة.
أين يمكنني العثور على معرّف التطبيق في Firebase؟
في وحدة تحكّم Firebase، انتقِل إلى settings إعدادات المشروع. انتقِل للأسفل إلى بطاقة تطبيقاتك، ثم انقر على تطبيق Firebase المطلوب لعرض معلومات التطبيق، بما في ذلك رقم تعريف التطبيق.
في ما يلي بعض الأمثلة على قيم معرّف التطبيق:
-
تطبيقات iOS على Firebase:
1:1234567890:ios:321abc456def7890
-
تطبيقات Firebase على Android:
1:1234567890:android:321abc456def7890
-
تطبيقات الويب على Firebase:
1:1234567890:web:321abc456def7890
ما هي المتطلبات الأساسية لربط Google Play / AdMob / Google Ads / BigQuery بمشروع Firebase أو تطبيق Firebase؟
- لربط
حسابك على Google Play، يجب توفُّر ما يلي:
- أيٌّ من الدورَين التاليين في Firebase: المالك أو مشرف Firebase
و - أيّ من مستويات الوصول التالية في Google Play: مالك الحساب أو المشرف
- أيٌّ من الدورَين التاليين في Firebase: المالك أو مشرف Firebase
- لربط تطبيقك AdMob، يجب أن تكون مالك مشروع على Firebase ومشرفًا على AdMob.
- لربط حسابك على AdWords، يجب أن تكون مالك مشروع على Firebase ومشرفًا على حساب AdWords.
- لربط مشروعك BigQuery، يجب أن تكون مالك مشروع Firebase.
ما هي إشعارات المصادر المفتوحة التي يجب تضمينها في تطبيقي؟
على منصات Apple، يحتوي حزمة تطوير البرامج (SDK) من Firebase على ملف NOTICES يتضمّن الإدخالات ذات الصلة. تحتوي حزمة تطوير البرامج (SDK) لنظام التشغيل Android من Firebase على أداة مساعدة Activity
لعرض معلومات الترخيص.
الأذونات والوصول إلى مشاريع Firebase
كيف يمكنني منح أحد أعضاء المشروع دورًا، مثل دور "المالك"؟
لإدارة الأدوار المخصّصة لكل فرد من أفراد المشروع، يجب أن تكون مالك مشروع Firebase (أو أن يكون لديك دور يتضمّن الإذن resourcemanager.projects.setIamPolicy
).
في ما يلي الأماكن التي يمكنك فيها تعيين الأدوار وإدارتها:
- توفّر لوحة تحكّم Firebase طريقة مبسطة لإسناد الأدوار إلى أعضاء المشروع في علامة التبويب المستخدمون والأذونات ضمن settings > إعدادات المشروع. في وحدة تحكّم Firebase، يمكنك إسناد أي من الأدوار الأساسية (المالك والمحرِّر والمشاهد) أو أدوار مشرف/مشاهد Firebase أو أي من أدوار فئات المنتجات المحدّدة مسبقًا في Firebase.
- تقدّم وحدة تحكّم Google Cloud مجموعة شاملة من الأدوات لتعيين أدوار لأعضاء المشروع
في صفحة
إدارة الهوية وإمكانية الوصول. في وحدة تحكّم Cloud، يمكنك أيضًا إنشاء أدوار مخصّصة وإدارتها، بالإضافة إلى منح حسابات الخدمة إذن الوصول إلى مشروعك.
يُرجى العِلم أنّه في وحدة تحكّم Google Cloud، يُطلق على أعضاء المشروع اسم الجهات الرئيسية.
إذا لم يعُد بإمكان مالك مشروعك تنفيذ مهام المالك (على سبيل المثال، إذا ترك الشخص شركتك) ولم تتم إدارة مشروعك من خلال Google Cloud مؤسسة (راجِع الفقرة التالية)، يمكنك التواصل مع فريق دعم Firebase والاستفسار منه عن كيفية طلب الوصول إلى مشروع Firebase.
يُرجى العِلم أنّه إذا كان مشروع Firebase جزءًا من مؤسسة Google Cloud، قد لا يكون له مالك. إذا لم تتمكّن من العثور على مالك لمشروعك على Firebase، تواصَل مع الشخص الذي يدير مؤسستك Google Cloud لتحديد مالك للمشروع.
كيف يمكنني العثور على مالك مشروع Firebase؟
يمكنك الاطّلاع على أعضاء المشروع وأدوارهم في الأماكن التالية:
- إذا كان بإمكانك الوصول إلى المشروع في وحدة تحكّم Firebase، يمكنك الاطّلاع على قائمة بأعضاء المشروع، بما في ذلك المالكون، في صفحة "المستخدمون والأذونات" في وحدة تحكّم Firebase.
- إذا لم يكن لديك إذن الوصول إلى المشروع في وحدة تحكّم Firebase، تحقّق مما إذا كان لديك إذن الوصول إلى المشروع في وحدة تحكّم Google Cloud. يمكنك الاطّلاع على قائمة بأعضاء المشروع، بما في ذلك المالكين، في صفحة إدارة الهوية وإمكانية الوصول في وحدة تحكّم Google Cloud.
إذا لم يعُد بإمكان مالك مشروعك تنفيذ مهام المالك (على سبيل المثال، إذا ترك الشخص شركتك) ولم تتم إدارة مشروعك من خلال Google Cloud مؤسسة (راجِع الفقرة التالية)، يمكنك التواصل مع فريق دعم Firebase لتعيين مالك مؤقت.
يُرجى العِلم أنّه إذا كان مشروع Firebase جزءًا من مؤسسة Google Cloud، قد لا يكون له مالك. بدلاً من ذلك، يمكن للمستخدم الذي يدير مؤسستك Google Cloud تنفيذ العديد من المهام التي يمكن للمالك تنفيذها. ومع ذلك، لتنفيذ عدة مهام خاصة بالمالك (مثل منح الأدوار أو إدارة Google Analytics المواقع)، قد يحتاج المشرف إلى منح نفسه دور المالك الفعلي لتنفيذ هذه المهام. إذا لم تتمكّن من العثور على مالك لمشروعك على Firebase، تواصَل مع الشخص الذي يدير مؤسستك Google Cloud لتحديد مالك للمشروع.
متى يجب أن أمنح أحد أعضاء المشروع دور "المالك"؟
لضمان الإدارة السليمة لمشروع على Firebase، يجب أن يكون له مالك.
إنّ أعضاء المشروع الذين لديهم دور "المالك" هم في الغالب أعضاء المشروع الوحيدون الذين يمكنهم تنفيذ المهام الإدارية أو تلقّي الإشعارات المهمة:
- غالبًا ما يكون أعضاء المشروع الذين لديهم دور المالك هم الأعضاء الوحيدون الذين يمكنهم تنفيذ إجراءات إدارية مهمة (مثل تعيين الأدوار وإدارة مواقع Google Analytics)، ولا يمكن لفريق الدعم في Firebase تنفيذ الطلبات الإدارية إلا من مالكي المشاريع الذين تم إثبات ملكيتهم.
- غالبًا ما يكون أعضاء المشروع الذين لديهم دور "المالك" هم الأعضاء الوحيدون الذين يتلقّون (تلقائيًا) إشعارات بشأن التغييرات التي تطرأ على المشروع أو المنتجات (مثل التغييرات المتعلقة بالفوترة والقانون، وإيقاف الميزات نهائيًا، وما إلى ذلك). يمكنك اختياريًا تخصيص "جهات الاتصال الأساسية" في مشروعك إذا كنت تريد أن يتلقّى أعضاء معيّنون أو إضافيون في المشروع الإشعارات.
بعد إعداد "المالك" أو "المالكين" لمشروع على Firebase، من المهم الحفاظ على حداثة هذه المهام.
يُرجى العِلم أنّه إذا كان مشروع Firebase جزءًا من مؤسسة Google Cloud، يمكن للشخص الذي يدير مؤسسة Google Cloud تنفيذ العديد من المهام التي يمكن للمالك تنفيذها. ومع ذلك، بالنسبة إلى العديد من المهام الخاصة بالمالك (مثل تحديد الأدوار أو إدارة خصائص Google Analytics)، قد يحتاج المشرف إلى منح نفسه دور المالك الفعلي لتنفيذ هذه المهام.
لا أعتقد أنّ لديّ مشروعًا على Firebase، ولكن تلقّيت رسالة إلكترونية بشأنه. كيف يمكنني الوصول إلى هذا المشروع؟
يجب أن تتضمّن الرسالة الإلكترونية التي تلقّيتها رابطًا لفتح مشروعك على Firebase. من المفترض أن يؤدي النقر على الرابط في الرسالة الإلكترونية إلى فتح المشروع في وحدة تحكّم Firebase.
إذا لم تتمكّن من فتح المشروع في الرابط، تأكَّد من تسجيل الدخول إلى Firebase باستخدام حساب Google نفسه الذي تلقّى الرسالة الإلكترونية بشأن المشروع. يمكنك تسجيل الدخول إلى وحدة تحكّم Firebase وتسجيل الخروج منها من خلال صورة حسابك الرمزية في أعلى يسار وحدة التحكّم.
يُرجى العِلم أنّه إذا كنت مشرفًا في مؤسسة Google Cloud، قد يتم إعلامك بالتغييرات التي تطرأ على مشاريع Firebase داخل مؤسستك. ومع ذلك، قد لا تتوفّر لديك الأذونات الكافية لفتح مشروع Firebase. في هذه الحالات، يكون أبسط حل هو منح نفسك دور المالك الفعلي لفتح المشروع وتنفيذ الإجراءات المطلوبة. مزيد من المعلومات حول الحالات التي يجب فيها تعيين دور المالك
المنصّات وأُطر العمل
يمكنك الانتقال إلى صفحات تحديد المشاكل وحلّها والأسئلة الشائعة الخاصة بكل منصة للحصول على نصائح مفيدة وإجابات عن المزيد من الأسئلة الشائعة.
Firebase وحدة التحكّم
ما هي المتصفّحات المتوافقة للوصول إلى وحدة تحكّم Firebase؟
يمكن الوصول إلى وحدة تحكّم Firebase من خلال أحدث إصدارات المتصفّحات الشائعة على أجهزة الكمبيوتر، مثل Chrome وFirefox وSafari وEdge. لا تتوافق المتصفّحات على الأجهزة الجوّالة حاليًا بشكل كامل.
يمكنني تحميل وحدة تحكّم Firebase، ولكن لماذا لا يمكنني العثور على مشروع Firebase أو الوصول إليه؟
ينطبق هذا السؤال الشائع إذا كنت تواجه إحدى المشكلتين التاليتين:
- تعرض وحدة تحكّم Firebase صفحة خطأ تشير إلى أنّ مشروعك قد لا يكون متوفّرًا أو أنّه ليس لديك إذن بالوصول إليه.
- لا تعرض وحدة تحكّم Firebase مشروعك حتى عند إدخال رقم تعريف المشروع أو اسم المشروع في حقل البحث الخاص بوحدة التحكّم.
جرِّب الخطوات التالية لتحديد المشاكل وحلّها:
- في البداية، حاوِل الوصول إلى مشروعك من خلال الانتقال مباشرةً إلى عنوان URL الخاص بالمشروع. استخدِم التنسيق التالي:
https://console.firebase.google.com/project/PROJECT-ID/overview
- إذا كان لا يزال يتعذّر عليك الوصول إلى المشروع أو تلقّيت أخطاء في الأذونات،
تحقَّق مما يلي:
- تأكَّد من تسجيل الدخول إلى Firebase باستخدام حساب Google نفسه الذي لديه إذن الوصول إلى المشروع. يمكنك تسجيل الدخول إلى Firebase وحدة التحكّم وتسجيل الخروج منها من خلال صورة حسابك الرمزية في أعلى يسار وحدة التحكّم.
- تأكَّد من تفعيل Firebase Management API للمشروع.
- تأكَّد من أنّك حصلت على أحد أدوار المستخدمين الأساسية لإدارة الهوية وإمكانية الوصول (المالك أو المحرّر أو المشاهد) أو دور يتضمّن أذونات متعلقة بمنصة Firebase، مثل دور Firebase المحدّد مسبقًا. يمكنك الاطّلاع على أدوارك في صفحة إدارة الهوية وإمكانية الوصول في وحدة تحكّم Google Cloud.
- إذا كان مشروعك يتبع مؤسسة Google Cloud، قد تحتاج إلى أذونات إضافية لرؤية المشروع مُدرَجًا في وحدة تحكّم Firebase. تواصَل مع الشخص الذي يدير مؤسستك Google Cloud لمنحك الدور المناسب لعرض المشروع، مثل دور "المتصفّح".
إذا لم تساعدك أي من خطوات تحديد المشاكل وحلّها المذكورة أعلاه في العثور على مشروعك أو الوصول إليه، يُرجى التواصل مع فريق دعم Firebase.
لماذا لا يتم تحميل وحدة تحكّم Firebase؟
ينطبق هذا السؤال الشائع إذا كنت تواجه أيًا من المشاكل التالية:
- لا تنتهي عملية تحميل صفحة في وحدة تحكّم Firebase أبدًا.
- لا يتم تحميل البيانات داخل الصفحة على النحو المتوقّع.
- تتلقّى رسائل خطأ في المتصفح عند تحميل وحدة تحكّم Firebase.
جرِّب الخطوات التالية لتحديد المشاكل وحلّها:
- تحقَّق من صف وحدة التحكّم في لوحة بيانات حالة Firebase بحثًا عن أي انقطاعات محتملة في الخدمة.
- تأكَّد من استخدام متصفّح متوافق.
- حاوِل تحميل وحدة تحكّم Firebase في نافذة تصفّح متخفٍّ أو خاص.
- أوقِف جميع إضافات المتصفّح.
- تأكَّد من أنّ اتصال الشبكة غير محظور بواسطة أداة حظر الإعلانات أو برنامج مكافحة الفيروسات أو الخادم الوكيل أو جدار الحماية أو أي برنامج آخر.
- جرِّب تحميل وحدة تحكّم Firebase باستخدام شبكة أو جهاز مختلفَين.
- إذا كنت تستخدم Chrome، راجِع وحدة تحكّم أدوات المطوّرين بحثًا عن أي أخطاء.
إذا لم تؤدِّ أي من خطوات تحديد المشاكل وحلّها أعلاه إلى حلّ المشكلة، يُرجى التواصل مع فريق دعم Firebase.
كيف يتم تحديد لغة وحدة تحكّم Firebase؟
تستند إعدادات اللغة في وحدة تحكّم Firebase إلى اللغة المحدّدة في إعدادات حسابك على Google.
لتغيير اللغة المفضّلة، يُرجى الاطّلاع على تغيير اللغة.
تتيح وحدة تحكّم Firebase اللغات التالية:
- الإنجليزية
- البرتغالية البرازيلية
- الفرنسية
- الألمانية
- الإندونيسية
- اليابانية
- الكورية
- الروسية
- الصينية المبسطة
- الإسبانية
- الصينية التقليدية
ما هي الأدوار والأذونات التي تتيحها وحدة تحكّم Firebase؟
تستخدم وحدة تحكّم Firebase ووحدة تحكّم Google Cloud الأدوار والأذونات الأساسية نفسها. يمكنك الاطّلاع على مزيد من المعلومات عن الأدوار والأذونات في مستندات إدارة الهوية وإمكانية الوصول في Firebase.
تتيح Firebase الأدوار الأساسية للمالك والمحرّر والمشاهد:
- يمكن لمالك المشروع إضافة أعضاء آخرين إلى المشروع وإعداد عمليات الدمج (ربط المشروع بخدمات مثل BigQuery أو Slack)، كما يمكنه تعديل المشروع بالكامل.
- يملك محرِّر المشروع إذنًا كاملاً بتعديل المشروع.
- لا يملك المشاهد في المشروع سوى إذن القراءة للمشروع. يُرجى العِلم أنّ وحدة تحكّم Firebase لا تخفي حاليًا عناصر التحكّم في واجهة مستخدم التعديل أو توقفها عن العمل بالنسبة إلى "المشاهدين" في المشروع، ولكن ستتعذّر هذه العمليات على أعضاء المشروع الذين تم تعيين دور "المشاهد" لهم.
تتيح Firebase أيضًا ما يلي:
- أدوار Firebase المحدّدة مسبقًا — أدوار مخصّصة في Firebase تتيح التحكّم في الوصول بشكل أكثر تفصيلاً مقارنةً بالأدوار الأساسية، مثل "المالك" و"المحرّر" و"المشاهد".
- الأدوار المخصّصة — أدوار "إدارة الهوية وإمكانية الوصول" المخصّصة بالكامل والتي تنشئها لتخصيص مجموعة من الأذونات التي تلبي المتطلبات المحدّدة لمؤسستك.
كيف تعمل "تجربة التطبيق النموذجية" على وحدة التحكّم؟ ماذا يحدث وما هي الإجراءات التي يمكنني اتّخاذها؟
توفّر لك وحدة تحكّم Firebase تجربة تطبيق نموذجي لتتمكّن من استكشاف Firebase وتجربته باستخدام تطبيق عملي حقيقي، بالإضافة إلى خدمات Google الأخرى (مثل Gemini API).
الإعداد التلقائي لـ Firebase ونشر نموذج التطبيق
عندما تنتقل إلى تجربة التطبيق النموذجي في وحدة تحكّم Firebase، ننفّذ تلقائيًا ما يلي:
- إنشاء مشروع جديد على Firebase لتطبيقك النموذجي
- تسجيل تطبيق ويب على Firebase في مشروع Firebase الجديد
- فعِّل الخدمات وواجهات برمجة التطبيقات التي يستخدمها التطبيق النموذجي (مثل Firebase Authentication وCloud Firestore وما إلى ذلك).
- توفير أي مراجع مطلوبة (مثل مثيلات قواعد البيانات وقواعد الأمان)
- إعداد Firebase AI Logic لاستخدام Gemini Developer API
- نشر التطبيق النموذجي على عنوان URL مؤقت للمعاينة باستخدام Firebase Hosting (ينتهي عنوان URL هذا تلقائيًا بعد 7 أيام)
استكشاف قاعدة الرموز البرمجية للتطبيق النموذجي
الخيار 1: فتح نسخة مخصّصة من قاعدة الرموز البرمجية لتطبيق العيّنة في Firebase Studio
توفّر تجربة التطبيق النموذجي مسارًا لفتح نسخة مخصّصة من قاعدة رموز التطبيق النموذجي في Firebase Studio (مساحة عمل Google المستندة إلى المتصفّح لتطوير التطبيقات المتكاملة). بعد إعداد مشروعك وتطبيقك (راجِع ما ورد أعلاه)، يمكنك العثور على روابط تؤدي إلى Firebase Studio في البانرات في وحدة تحكّم Firebase وفي أعلى التطبيق الذي تم نشره.
عند فتح تطبيقك النموذجي في Firebase Studio، ننفّذ تلقائيًا ما يلي:
- استخدام مشروع Firebase وتطبيق Firebase على الويب والموارد التي تم إنشاؤها في عملية الإعداد الأولية (راجِع ما ورد أعلاه)
- أدرِج إعدادات Firebase لتطبيقك النموذجي في قاعدة الرموز البرمجية (عادةً في
src/bootstrap.js
).
ضمن Firebase Studio، يمكنك استكشاف قاعدة الرموز البرمجية لمعرفة كيفية التفاعل مع خدمات Firebase وGoogle المختلفة.
الخيار 2: الاطّلاع على الإصدار العلني غير المخصّص من قاعدة رموز التطبيق النموذجي في GitHub
بدلاً من ذلك، يمكنك الاطّلاع على نسخة عامة وغير مخصّصة من الرمز البرمجي للتطبيق النموذجي في GitHub.
- "التخطيط باستخدام Gemini API" - مستودع GitHub
Firebase Local Emulator Suite
لماذا تعرض سجلّات Emulator Suite خطأً يبدأ بعبارة "لا يُنصح باستخدام عدة أرقام تعريف مشاريع في وضع المشروع الفردي"؟
تعني هذه الرسالة أنّ Emulator Suite رصدت احتمال تشغيل محاكي منتج معيّن باستخدام أرقام تعريف مختلفة للمشروع. قد يشير ذلك إلى خطأ في الضبط، ويمكن أن يتسبّب في حدوث مشاكل عندما تحاول المحاكيات التواصل مع بعضها البعض، وعندما تحاول التفاعل مع المحاكيات من الرمز البرمجي. إذا لم تتطابق أرقام تعريف المشاريع، سيظهر غالبًا أنّ البيانات غير متوفّرة، لأنّ البيانات المخزّنة في المحاكيات يتم ربطها برقم تعريف المشروع، وتعتمد إمكانية التشغيل التفاعلي على تطابق أرقام تعريف المشاريع.
وقد كان هذا الأمر مصدرًا شائعًا للالتباس بين المطوّرين، لذا لن يسمح Local Emulator Suite الآن بشكل تلقائي إلا بالتشغيل باستخدام رقم تعريف مشروع واحد، ما لم تحدّد خلاف ذلك في ملف الإعداد firebase.json
. إذا رصد المحاكي أكثر من رقم تعريف مشروع واحد، سيسجّل تحذيرًا وقد يعرض خطأ فادحًا.
راجِع بيانات تعريف رقم تعريف مشروعك بحثًا عن أي عدم تطابق في ما يلي:
-
المشروع التلقائي الذي تم ضبطه في سطر الأوامر سيتم تلقائيًا الحصول على رقم تعريف المشروع عند بدء التشغيل من المشروع الذي تم اختياره باستخدام
firebase init
أوfirebase use
. لعرض قائمة المشاريع (ومعرفة المشروع المحدّد)، استخدِمfirebase projects:list
. -
اختبارات الوحدات: يتم غالبًا تحديد رقم تعريف المشروع في طلبات
إلى طرق مكتبة اختبار وحدة القواعد
initializeTestEnvironment
أوinitializeTestApp
. قد تتم تهيئة رمز الاختبار الآخر باستخدامinitializeApp(config)
. -
العلامة
--project
في سطر الأوامر يؤدي تمرير العلامة Firebase CLI--project
إلى إلغاء المشروع التلقائي. عليك التأكّد من أنّ قيمة العلامة تتطابق مع معرّف المشروع في اختبارات الوحدات وعملية تهيئة التطبيق.
الأماكن التي يجب التحقّق منها على كل منصة:
الويب | السمة projectId في كائن JavaScript
firebaseConfig ، المستخدَمة في initializeApp
|
Android | السمة project_id داخل ملف الإعداد google-services.json
|
منصات Apple | السمة PROJECT_ID في ملف الإعداد GoogleService-Info.plist
|
لإيقاف وضع المشروع الفردي، عدِّل firebase.json
باستخدام المفتاح singleProjectMode
:
{ "firestore": { ... }, "functions": { ... }, "hosting": { ... }, "emulators": { "singleProjectMode": false, "auth": { "port": 9099 }, "functions": { "port": 5001 }, ... } }
الأسعار
للاطّلاع على الأسئلة الشائعة حول الأسعار الخاصة بمنتج معيّن، راجِع قسم المنتج على هذه الصفحة أو ضمن مستندات المنتج المخصّصة.
ما هي المنتجات المدفوعة؟ وما هي الخدمات التي لا تتطلّب أي تكلفة؟
للحصول على معلومات تفصيلية حول المنتجات المدفوعة مقابل المنتجات بدون تكلفة، اطّلِع على خطط أسعار Firebase.
هل تقدّم Firebase رصيدًا تجريبيًا بدون تكلفة للمنتجات المدفوعة؟
يمكن استخدام خدمات Firebase المدفوعة ضمن Google Cloud الفترة التجريبية المجانية. يمكن للمستخدمين الجدد في Google Cloud وFirebase الاستفادة من فترة تجريبية مدتها 90 يومًا تتضمّن رصيدًا مجانيًا بقيمة 300 دولار أمريكي في Cloud Billing لاستكشاف منتجات وخدمات Google Cloud وFirebase وتقييمها.
خلال Google Cloud الفترة التجريبية المجانية، سيتم تزويدك بحساب Cloud Billing الفترة التجريبية المجانية. أي مشروع على Firebase مرتبط بحساب الفوترة هذا سيخضع لخطة أسعار Blaze بنظام الدفع حسب الاستخدام خلال الفترة التجريبية المجانية.
لا داعي للقلق، فربط مشروع على Firebase بهذا الحساب التجريبي المجاني Cloud Billing لا يتيح لنا تحصيل رسوم منك مقابل الاستخدام بما يتجاوز هذه الرصيد. لن يتم تحصيل رسوم منك مقابل الاستخدام الذي يتجاوز هذه الرصيد إلا إذا فعّلت الفوترة بشكل صريح من خلال ترقية حسابك في "الفترة التجريبية المجانية" Cloud Billing إلى حساب مدفوع. يمكنك الترقية إلى حساب مدفوع في أي وقت خلال الفترة التجريبية. بعد الترقية إلى حساب مدفوع، سيظل بإمكانك استخدام أي رصيد متبقٍ (خلال فترة الـ 90 يومًا).
بعد انتهاء الفترة التجريبية المجانية، وفي حال عدم ترقية حساب Cloud Billing "الفترة التجريبية المجانية" إلى حساب مدفوع، سيتم تلقائيًا خفض مستوى مشروع Firebase المرتبط إلى خطة أسعار Spark. يُرجى العِلم أنّه يمكنك الترقية إلى خطة أسعار Blaze مجددًا في أي وقت.
مزيد من المعلومات حول الفترة التجريبية المجانية من Google Cloud
كيف يمكنني معرفة خطة الأسعار المناسبة لي؟
للحصول على معلومات مفصّلة حول خطط الأسعار، اطّلِع على خطط أسعار Firebase.
خطة أسعار Spark
تُعدّ خطة Spark مكانًا رائعًا لتطوير تطبيقك بدون أي تكلفة. يمكنك الاستفادة من جميع ميزات Firebase المجانية (Analytics وRemote Config وCrashlytics وما إلى ذلك) والاستفادة من كميات كبيرة من ميزات البنية الأساسية المدفوعة. ومع ذلك، إذا تجاوزت موارد خطة Spark خلال شهر تقويمي، سيتم إيقاف تطبيقك لبقية ذلك الشهر. بالإضافة إلى ذلك، لا تتوفّر ميزات Google Cloud عند استخدام خطة Spark.
خطة أسعار Blaze
تم تصميم خطة Blaze للتطبيقات الجاهزة للإصدار العلني. تتيح لك خطة Blaze أيضًا توسيع نطاق تطبيقك باستخدام Google Cloud ميزات مدفوعة. تدفع فقط مقابل الموارد التي تستهلكها، ما يتيح لك التوسّع حسب الطلب. نسعى جاهدين إلى أن تكون أسعار خطة Blaze تنافسية مقارنةً بأسعار مقدّمي الخدمات السحابية الرائدين في المجال.
هل يمكنني الترقية أو الرجوع إلى إصدار سابق أو الإلغاء في أي وقت؟
نعم، يمكنك الترقية أو الرجوع إلى إصدار سابق أو الإلغاء في أي وقت. يُرجى العِلم أنّنا لا نردّ جزءًا من الأموال المدفوعة عند خفض مستوى الاشتراك أو إلغائه. وهذا يعني أنّه إذا خفضت مستوى اشتراكك أو ألغيته قبل نهاية مدة الفوترة، سيظل عليك الدفع مقابل الفترة المتبقية من الشهر.
كيف يختلف الاستخدام بدون تكلفة في خطة Blaze عن الاستخدام بدون تكلفة في خطة Spark؟
يتم احتساب الاستخدام بدون تكلفة في خطة Blaze يوميًا. تختلف حدود الاستخدام أيضًا عن خطة Spark في ما يخص Cloud Functions، والمصادقة عبر الهاتف، وTest Lab.
بالنسبة إلى Cloud Functions، يتم احتساب الاستخدام بدون تكلفة في خطة Blaze على مستوى حساب Cloud Billing، وليس على مستوى المشروع، ويخضع للحدود التالية:
- مليونا عملية استدعاء في الشهر
- 400,000 غيغابايت في الثانية في الشهر
- 200,000 وحدة معالجة مركزية في الثانية/الشهر
- 5 غيغابايت من حركة الخروج من الشبكة في الشهر
بالنسبة إلى مصادقة الهاتف، يتم احتساب الاستخدام بدون تكلفة في خطة Blaze شهريًا.
بالنسبة إلى Test Lab، يخضع الاستخدام بدون تكلفة في خطة Blaze للحدود التالية:
- 30 دقيقة من استخدام الجهاز الفعلي في اليوم
- 60 دقيقة من وقت استخدام الجهاز الافتراضي في اليوم
هل تتم إعادة ضبط حصة الاستخدام المجاني عند التغيير من خطة Spark إلى خطة Blaze؟
يتم تضمين الاستخدام بدون تكلفة من خطة Spark في خطة Blaze. لا تتم إعادة ضبط الاستخدام بدون تكلفة عند الانتقال إلى خطة Blaze.
ماذا يحدث لمشروع Firebase إذا ربطتُ حساب فوترة بهذا المشروع في وحدة تحكّم Google Cloud؟
في حال ربط حساب Cloud Billing بمشروع في وحدة تحكّم Google Cloud، سيتم تلقائيًا ترقية المشروع نفسه إلى خطة Blaze للدفع حسب الاستخدام في Firebase (إذا كان المشروع حاليًا على خطة Spark).
في المقابل، إذا تم إلغاء ربط حساب نشط حالي Cloud Billing بمشروع في وحدة تحكّم Google Cloud، سيتم خفض مستوى هذا المشروع إلى خطة Spark المجانية من Firebase.
كيف يمكنني تتبُّع معدّل الاستخدام والفوترة؟
يمكنك تتبُّع استخدامك لموارد المشروع في وحدة تحكّم Firebase على أيّ من لوحات البيانات التالية:
هل يمكنني وضع حد أقصى للاستخدام في خطة Blaze؟
لا، لا يمكنك حاليًا وضع حدّ لاستخدام خطة Blaze. نحن بصدد تقييم خيارات لدعم وضع حدود قصوى لاستخدام خطة Blaze.
يمكن لمستخدمي Blaze تحديد ميزانية لمشاريعهم أو حساباتهم، وتلقّي تنبيهات عندما يقترب إنفاقهم من هذه الحدود. كيفية إعداد تنبيهات الميزانية
ما نوع الدعم الذي سأتلقّاه؟
تتوفّر لجميع تطبيقات Firebase، بما في ذلك تلك التي تستخدم خططًا بدون تكلفة، خدمة الدعم عبر البريد الإلكتروني من موظفي Firebase خلال ساعات العمل في منطقة المحيط الهادئ في الولايات المتحدة. تتوفّر لجميع الحسابات خدمة دعم غير محدودة بشأن المشاكل المتعلّقة بالفوترة والمشاكل المتعلّقة بالحساب والأسئلة الفنية (تحديد المشاكل وحلّها) وتقارير الحوادث.
هل تقدّمون خصومات للمؤسسات غير الربحية أو التعليمية أو المشاريع المفتوحة المصدر؟
يمكن لأي فرد أو مؤسسة استخدام خطة Spark، بما في ذلك المؤسسات غير الربحية والمدارس ومشاريع المصادر المفتوحة. بما أنّ هذه الخطط تتضمّن حصصًا سخية، لا نقدّم أي خصومات أو خطط خاصة للمشاريع مفتوحة المصدر أو غير الربحية أو التعليمية.
هل تقدّمون عقودًا أو أسعارًا أو دعمًا أو استضافة بنية تحتية مخصّصة للمؤسسات؟
تُعدّ خطة Blaze مناسبة للمؤسسات من جميع الأحجام، كما أنّ اتفاقية مستوى الخدمة تستوفي أو تتجاوز معايير المجال الخاصة بالبنية الأساسية السحابية. ومع ذلك، لا نوفّر حاليًا عقودًا أو أسعارًا أو دعمًا للمؤسسات، كما لا نوفّر استضافة مخصّصة للبنية التحتية (أي عمليات التثبيت المحلية) لخدمات مثل Realtime Database. ونحن نعمل جاهدين على إضافة بعض هذه الميزات.
هل تقدّم أسعارًا مخصّصة؟ أريد الدفع حسب الاستخدام لميزة واحدة أو اثنتين فقط.
نقدّم أسعارًا مخصّصة في خطة Blaze، حيث تدفع فقط مقابل الميزات التي تستخدمها.
كيف تعمل خطط Firebase المدفوعة مع Ads؟ هل تتضمّن الخطط المدفوعة أرصدة إعلانية بدون تكلفة؟
تختلف خطط أسعار Firebase عن Ads، وبالتالي لا تتوفّر أرصدة إعلانية بدون تكلفة. بصفتك مطوِّرًا على Firebase، يمكنك "ربط" حسابك على Ads بمنصة Firebase لتفعيل ميزة تتبُّع الإحالات الناجحة.
تتم إدارة جميع الحملات الإعلانية مباشرةً في Ads، وتتم إدارة فواتير Ads من وحدة تحكّم Ads.
ماذا حدث لخطة أسعار Flame؟
في كانون الثاني (يناير) 2020، تم إيقاف خطة Flame السعرية (25 دولارًا أمريكيًا شهريًا من الحصة الإضافية) كخيار للاشتراكات الجديدة. تم منح مستخدمي الخطة الحالية فترة سماح لنقل مشاريعهم من خطة Flame.
في شباط (فبراير) 2022، تم خفض مستوى المشاريع المتبقية في خطة أسعار Flame إلى خطة أسعار Spark.
وبناءً على ذلك،
- لم يعُد بإمكان المشاريع الحالية في خطتَي Spark وBlaze وأي مشاريع جديدة التبديل إلى خطة Flame أو الاشتراك فيها.
- إذا نقلت مشروعًا حاليًا من خطة Flame إلى خطة أسعار مختلفة، لن تتمكّن من إعادة المشروع إلى خطة Flame.
- يمكن ترقية المشاريع التي تم تخفيضها إلى خطة Spark إلى خطة Blaze لاستئناف الخدمات المدفوعة الإضافية.
- تمت إزالة الإشارات إلى خطة Flame من المستندات.
هل لديك أسئلة إضافية حول إيقاف خطة Flame نهائيًا؟ يمكنك الاطّلاع على بعض الأسئلة الشائعة الإضافية أدناه.
هل تريد معرفة المزيد عن خطط الأسعار الأخرى التي تقدّمها Firebase؟ يمكنك الانتقال إلى صفحة أسعار Firebase. إذا أردت بدء نقل أي مشاريع حالية إلى خطة أسعار أخرى، يمكنك إجراء ذلك في وحدة تحكّم Firebase الخاصة بمشروعك.
أسئلة شائعة إضافية حول إيقاف خطة Flame
لديّ مشروع أو عملية أو نموذج نشاط تجاري يعتمد على تكلفة ثابتة في Firebase. ماذا يجب أن أفعل؟
اشترِك في خطة أسعار Blaze، وتأكَّد من ضبط تنبيهات الميزانية.
هل يمكنني الحصول على إذن خاص لإنشاء مشاريع جديدة في خطة Flame؟
لا، لا يوفّر Firebase إذن وصول خاصًا للمشاريع للتبديل إلى خطة Flame أو الاشتراك فيها.
لقد غيّرتُ مشروع خطة Flame إلى خطة أسعار مختلفة. كيف يمكنني تغييرها مجددًا؟
لم يعُد من الممكن التبديل إلى خطة Flame. للوصول إلى الخدمات التي توفّرها خطة Flame، تأكَّد من استخدام خطة أسعار Blaze، وننصحك بإعداد تنبيهات الميزانية لمشروعك.
تم تلقائيًا تبديل مشروعي إلى خطة أسعار مختلفة كجزء من إيقاف خطة Flame. ماذا يجب أن أفعل؟
إذا كان مشروعك يتطلّب حصة إضافية تتجاوز ما يوفّره خطة Spark، عليك ترقية مشروعك إلى خطة أسعار Blaze.
لماذا سيتم إيقاف خطة Flame؟
لاحظنا خلال السنوات الماضية انخفاضًا في استخدام "خطة Flame"، ومعظم المشاريع التي تستخدم هذه الخطة لا تستفيد من قيمتها الكاملة. وبشكل عام، لا تكون المحافظة على خطة الأسعار هذه فعّالة من حيث التكلفة، ونعتقد أنّه يمكننا تقديم خدمة أفضل للجميع إذا تم توجيه الموارد إلى مبادرات Firebase الأخرى.
الخصوصية
أين يمكنني العثور على معلومات حول الخصوصية والأمان في Firebase؟
يمكنك الاطّلاع على الصفحة الخصوصية والأمان في Firebase.
هل تسجّل حِزم تطوير البرامج (SDK) في Firebase أي معلومات عن الاستخدام أو التشخيص خارج نطاق "إحصاءات Google"؟
نعم. تتوفّر هذه الميزة حاليًا على أجهزة iOS فقط، ولكن قد يتغيّر ذلك في المستقبل. تتضمّن حزمة تطوير البرامج (SDK) لمنصة Firebase على أجهزة Apple إطار عمل FirebaseCoreDiagnostics
تلقائيًا. تستخدم Firebase هذا الإطار لجمع معلومات حول استخدام حزمة تطوير البرامج (SDK) وبيانات التشخيص للمساعدة في تحديد أولويات تحسينات المنتج المستقبلية. FirebaseCoreDiagnostics
هو خيار غير إلزامي، لذا إذا أردت إيقاف إرسال سجلّات بيانات التشخيص إلى Firebase، يمكنك إجراء ذلك من خلال إلغاء ربط المكتبة بتطبيقك. يمكنك تصفّح المصدر الكامل، بما في ذلك القيم المسجّلة، على GitHub.
A/B Testing
A/B Testing: كم عدد التجارب التي يمكنني إنشاؤها وإجراؤها؟
يُسمح لك بإجراء ما يصل إلى 300 تجربة لكل مشروع، ويمكن أن يتضمّن ذلك ما يصل إلى 24 تجربة نشطة، مع بقاء التجارب الأخرى كمسودّة أو مكتملة.
A/B Testing: لماذا لا يمكنني الاطّلاع على تجاربي بعد إلغاء ربط مشروعي بحسابي على "إحصاءات Google" ثم إعادة ربطه؟
سيؤدي الربط بموقع Google Analytics مختلف إلى فقدان إمكانية الوصول إلى التجارب التي تم إنشاؤها مسبقًا. لاستعادة إمكانية الوصول إلى تجربة سابقة، أعِد ربط مشروعك بموقع Google Analytics الذي تم ربطه عند إنشاء التجربة.
A/B Testing: لماذا تظهر لي الرسالة "لم يتم ربط المشروع بحساب على "إحصاءات Google" عند إنشاء تجربة في Remote Config؟
إذا كنت قد ربطت Firebase بخدمة "إحصاءات Google"، ولكن ما زلت ترى رسالة تفيد بأنّ "إحصاءات Google" غير مرتبطة، تأكَّد من توفّر مصدر بيانات في "إحصاءات Google" لجميع التطبيقات في مشروعك. في الوقت الحالي، يجب ربط جميع التطبيقات في المشروع بمصدر بيانات على "إحصاءات Google" لاستخدام ميزة "اختبار A/B".
يمكنك العثور على قائمة بجميع مصادر البيانات النشطة في صفحة تفاصيل دمج "إحصاءات Google" ضمن وحدة تحكّم Firebase، والتي يمكن الوصول إليها من settingsإعدادات المشروع chevron_right عمليات الدمج chevron_right إحصاءات Google chevron_right إدارة.
يجب أن يؤدي إنشاء مصدر بيانات على "إحصاءات Google" لأي تطبيق لا يتضمّن مصدر بيانات إلى حلّ المشكلة. تتوفّر بضع طرق لإنشاء أحداث بث للتطبيقات غير المتوفّرة:
-
إذا كان لديك تطبيق واحد أو تطبيقان فقط لا يتضمّنان مصدر بيانات مرتبطًا على "إحصاءات Google"، يمكنك اختيار إحدى الطريقتَين التاليتَين لإضافة مصدر بيانات على "إحصاءات Google":
- احذف أي تطبيق لا يتضمّن بثًا نشطًا وأعِد إضافته في "وحدة تحكّم Firebase".
- من وحدة تحكّم "إحصاءات Google"، اختَر المشرف، ثم انقر على مصادر البيانات، ثم على إضافة مصدر بيانات، وأضِف تفاصيل التطبيق الناقصة، ثم انقر على تسجيل التطبيق.
-
إذا كان لديك أكثر من بضعة مصادر بيانات تطبيقات غير متوفّرة، فإنّ إلغاء ربط موقعك على "إحصاءات Google" وإعادة ربطه هو الطريقة الأسرع والأكثر فعالية لإنشاء مصادر بيانات التطبيقات غير المتوفّرة:
- من settings إعدادات المشروع، اختَر عمليات الدمج.
- ضمن بطاقة إحصاءات Google، انقر على إدارة للوصول إلى إعدادات Firebase و"إحصاءات Google".
- دوِّن معرّف الموقع في "إحصاءات Google" وحساب "إحصاءات Google" المرتبط.
- انقر على more_vert المزيد واختَر إلغاء ربط "إحصاءات Google" بهذا المشروع.
-
راجِع التحذير الذي يظهر (لا تقلق، ستعيد ربط الموقع نفسه في الخطوة التالية)، ثم انقر على إلغاء ربط "إحصاءات Google".
عند اكتمال عملية إلغاء الربط، ستتم إعادة توجيهك إلى صفحة عمليات الدمج. - ضمن بطاقة إحصاءات Google، انقر على تفعيل لبدء عملية إعادة الربط.
- اختَر حسابك على "إحصاءات Google" من قائمة اختيار الحساب.
-
بجانب إنشاء موقع جديد تلقائيًا في هذا الحساب، انقر على
edit تعديل، ثم اختَر معرّف موقعك من قائمة
موقع "إحصاءات Google" التي تظهر.
ستظهر قائمة بجميع التطبيقات في مشروعك. يتم عرض عمليات ربط مصادر البيانات الحالية لكل تطبيق، وسيتم إنشاء مصدر بيانات للتطبيقات التي ليس لديها مصدر بيانات. - انقر على تفعيل "إحصاءات Google" لإعادة ربط الموقع.
- انقر على إنهاء.
إذا استمرّ ظهور خطأ عند إنشاء اختبارات A/B باستخدام ميزة "الإعداد عن بُعد" بعد تنفيذ هذه الخطوات، يُرجى التواصل مع فريق الدعم في Firebase.
AdMob
AdMob: هل يمكنني ربط تطبيقات Windows بمنصّة Firebase؟
لا، لا تتوفّر تطبيقات Windows حاليًا.
AdMob: لماذا لا يمكنني ربط تطبيقي بـ "AdMob" من وحدة تحكّم Firebase؟
يمكنك ربط تطبيق AdMob بتطبيق Firebase من خلال وحدة تحكّم AdMob. كيفية إجراء ذلك
AdMob: ما هي الأذونات أو أذونات الوصول التي أحتاج إليها لربط تطبيق Firebase بتطبيق AdMob؟
لإجراء عملية الربط هذه، يجب أن يتوفّر لك إذن الوصول التالي:
- AdMob: يجب أن تكون مشرفًا في AdMob.
- Firebase: يجب أن يتوفّر لك الإذن
firebase.links.create
، وهو مُدرَج في دور المالك ودور مشرف Firebase. - Google Analytics: يجب أن يكون لديك الدور "تعديل" أو الدور "إدارة المستخدمين" للموقع المرتبط بمشروع Firebase. مزيد من المعلومات
AdMob: هل يمكن لعدة مستخدمين في حساب AdMob نفسه ربط تطبيقات AdMob وتطبيقات Firebase؟
بالنسبة إلى حسابات AdMob متعددة المستخدمين، فإنّ المستخدم الذي أنشأ أول رابط بمنصة Firebase ووافق على بنود خدمة Firebase هو المستخدم الوحيد الذي يمكنه إنشاء روابط جديدة بين تطبيقات AdMob وتطبيقات Firebase.
AdMob: ما هي حِزم SDK التي يجب استخدامها للاستفادة من AdMob؟
لاستخدام AdMob، عليك دائمًا استخدام حزمة تطوير البرامج (SDK) Google Mobile Ads كما هو موضّح في الأسئلة الشائعة هذه. بالإضافة إلى ذلك، يمكنك اختياريًا تضمين حزمة تطوير البرامج (SDK) لمنصة Firebase الخاصة بـ Google Analytics في تطبيقك إذا كنت تريد جمع مقاييس سلوك المستخدِمين لتطبيق AdMob.
- لمشاريع iOS:
استورِد حزمة تطوير البرامج Google Mobile Ads باتّباع التعليمات الواردة في AdMob مستندات iOS. - بالنسبة إلى مشاريع Android:
أضِف العنصر التابع لحزمة تطوير البرامج (SDK) Google Mobile Ads إلى ملفbuild.gradle
:
implementation 'com.google.android.gms:play-services-ads:24.4.0'
- بالنسبة إلى مشاريع C++ و مشاريع Unity: اتّبِع التعليمات الواردة في المستندات ذات الصلة.
إحصاءات Google
Analytics: لماذا يُنصح باستخدام "إحصاءات Google" كجزء من منتجات Firebase؟
Google Analytics هي خدمة مجانية وغير محدودة لتحليلات البيانات، وتعمل مع ميزات Firebase لتقديم إحصاءات فعّالة. تتيح لك هذه الخدمة الاطّلاع على سجلّات الأحداث في Crashlytics وفعالية الإشعارات في FCM وأداء الروابط لصفحات معيّنة في Dynamic Links وبيانات عمليات الشراء داخل التطبيق من Google Play. وتتيح هذه الميزة استهداف الجمهور المتقدّم في Remote Config وتخصيص الإعلانات في Remote Config وغير ذلك.
تعمل Google Analytics كطبقة ذكاء في Firebase لتزويدك بإحصاءات أكثر قابلية للاستخدام حول كيفية تطوير تطبيق عالي الجودة وتنمية قاعدة المستخدمين وتحقيق المزيد من الأرباح.
للبدء، اطّلِع على المستندات.
Analytics: كيف يمكنني التحكّم في طريقة مشاركة بيانات Analytics مع بقية Firebase؟
بشكل تلقائي، يتم استخدام بيانات Google Analytics لتحسين ميزات Firebase وGoogle الأخرى. يمكنك التحكّم في كيفية مشاركة بيانات Google Analytics في إعدادات مشروعك في أي وقت. مزيد من المعلومات عن إعدادات مشاركة البيانات
Analytics: كيف يمكنني تعديل إعدادات موقعي على "إحصاءات Google"؟
من صفحة المشرف في موقعك على "إحصاءات Google"، يمكنك تعديل إعدادات الموقع، على سبيل المثال:
- إعدادات مشاركة البيانات
- إعدادات الاحتفاظ بالبيانات
- إعدادات المنطقة الزمنية والعملة
لتعديل إعدادات موقعك، اتّبِع الخطوات التالية:
- في وحدة تحكّم Firebase، انتقِل إلى settings > إعدادات المشروع.
- انتقِل إلى علامة التبويب عمليات الدمج، ثمّ انقر على إدارة أو عرض الرابط في بطاقة "إحصاءات Google".
- انقر على رابط حسابك على "إحصاءات Google" من أجل فتح إعدادات الحساب والموقع.
Analytics القياس على الجهاز في تطبيق iOS: كيف تم تعديل حزمة تطوير البرامج (SDK) لخدمة "إحصاءات Google" لتوفير ميزة قياس الإحالات الناجحة على الجهاز فقط، وهل يجب الترقية إلى أحدث إصدار؟
قبل طرح التحديث الذي يتيح قياس الإحالات الناجحة على الجهاز فقط باستخدام بيانات الأحداث، كان على المطوّرين تضمين وحدات متعدّدة من حزمة SDK يدويًا للاستفادة من إمكانات القياس على الجهاز فقط، وهي عملية تستغرق وقتًا طويلاً. نتيجةً لذلك، عدّلنا وحدة حزمة تطوير البرامج (SDK) التلقائية الحالية (FirebaseAnalytics
) لتشمل أيضًا إمكانات قياس الإحالات الناجحة على الجهاز في "إعلانات Google".
في حال تثبيت Google Analytics التلقائي لحزمة تطوير البرامج (SDK) لنظام التشغيل iOS من Firebase، يمكن أن يستفيد تطبيقك أيضًا من إمكانات قياس الإحالات الناجحة على الجهاز فقط.
إذا كنت قد ثبّت حزمة SDK على إصدار معيّن، عليك التحديث إلى الإصدار 11.14.0 أو إصدار أحدث وطرح إصدار جديد من تطبيقك.
إمكانات الاستهداف | الوحدات القديمة (إصدارات حزمة SDK الأقدم من 11.14.0) |
وحدات جديدة (إصدارات حزمة تطوير البرامج (SDK) الأحدث من 11.14.0 أو تساويه) |
---|---|---|
إحصاءات Google معرّف المعلِن (IDFA) قياس الإحالات الناجحة على الجهاز فقط (بيانات الطرف الأول) قياس الإحالات الناجحة على الجهاز فقط (بيانات الأحداث) |
لا ينطبق | FirebaseAnalytics |
الإحصاءات معرّف المعلِن (IDFA) |
FirebaseAnalytics | FirebaseAnalytics/Core FirebaseAnalytics/IdentitySupport |
إحصاءات Google | FirebaseAnalytics/WithoutAdIdSupport (تم إيقافه نهائيًا) | FirebaseAnalytics/Core |
Analytics
قياس الإحالات الناجحة على الجهاز فقط (بيانات الطرف الأول) |
FirebaseAnalytics/WithoutAdIdSupport (تم إيقافه نهائيًا) FirebaseAnalyticsOnDeviceConversion (تم إيقافه نهائيًا) |
FirebaseAnalytics/Core GoogleAdsOnDeviceConversion* |
إحصاءات Google معرّف المعلِنات على أجهزة Apple (IDFA) قياس الإحالات الناجحة على الجهاز فقط (بيانات الطرف الأول) |
FirebaseAnalytics (تم إيقافه نهائيًا) FirebaseAnalyticsOnDeviceConversion (تم إيقافه نهائيًا) |
FirebaseAnalytics* |
إحصاءات Google معرّف المعلِن (IDFA) قياس الإحالات الناجحة على الجهاز فقط (بيانات الأحداث) |
لا ينطبق | FirebaseAnalytics |
* - سيتضمّن هذا الإعداد أيضًا ميزة "قياس الإحالات الناجحة على الجهاز فقط" (بيانات الأحداث). إذا لزم الأمر، يمكنك مواصلة استخدام وحدة FirebaseAnalyticsOnDeviceConversion
المستقلة المتوقّفة نهائيًا.
Analytics في تطبيق iOS: هل يمكنني تثبيت Analytics بدون ميزات تحديد مصدر الإعلان وجمع معرّف المعلِنين (IDFA)؟
نعم. لمزيد من التفاصيل، يُرجى الاطّلاع على صفحة ضبط جمع البيانات واستخدامها.
Analytics: ما هي التغييرات التي طرأت على قسم "إحصاءات Google" مع التعديل الذي تم إجراؤه في تشرين الأول (أكتوبر) 2021؟
يمكنك الاطّلاع على ملخّص لهذه التغييرات في مقالة مركز مساعدة Firebase بعنوان وظيفة "إحصاءات Google 4" الجديدة في "إحصاءات Google لبرنامج Firebase".
Analytics: لماذا لا تظهر لي أي بيانات Analytics في وحدة تحكّم Firebase بعد إلغاء ربط Firebase بـ "إحصاءات Google"؟
تتوفّر بيانات Analytics ضمن موقع "إحصاءات Google"، وليس ضمن مشروع Firebase. في حال حذف الموقع أو إلغاء ربطه، لن يتمكّن Firebase من الوصول إلى بيانات Analytics، وستظهر لك لوحة بيانات Analytics فارغة في وحدة تحكّم Firebase. يُرجى العِلم أنّه بما أنّ البيانات تظل محفوظة في الموقع المرتبط سابقًا، يمكنك دائمًا إعادة ربط الموقع بـ Firebase والاطّلاع على بيانات Analytics في وحدة تحكّم Firebase.
سيؤدي ربط حساب جديد تمامًا على "إحصاءات Google" (وبالتالي موقع جديد على "إحصاءات Google") بمشروعك على Firebase إلى ظهور لوحة بيانات Analytics فارغة في وحدة تحكّم Firebase. ومع ذلك، إذا كان موقعك المرتبط سابقًا لا يزال متوفّرًا، يمكنك نقل البيانات الحالية من الموقع القديم إلى الموقع الجديد.
Analytics: إذا تم حذف موقعي على Analytics وبياناته، هل يمكنني استعادتهما؟
لا، فإذا تم حذف موقعك، لن يكون من الممكن التراجع عن الحذف أو استرداد بيانات Analytics التي تم جمعها سابقًا والمخزّنة في ذلك الموقع.
إذا أردت البدء في استخدام "إحصاءات Google" مرة أخرى، يمكنك ربط موقع جديد أو موقع حالي بمشروعك على Firebase. يمكنك إجراء عملية الربط هذه في Firebase أو واجهة مستخدم "إحصاءات Google". مزيد من المعلومات حول ربط موقع على "إحصاءات Google" بمشروعك على Firebase
Analytics: إذا تم حذف موقعي على "إحصاءات Google"، هل يمكنني ربط موقع جديد على "إحصاءات Google" بمشروعي على Firebase والبدء في استخدام Analytics مرة أخرى؟
إذا أردت البدء في استخدام "إحصاءات Google" مرة أخرى، يمكنك ربط موقع جديد أو موقع حالي بمشروعك على Firebase. يمكنك إجراء عملية الربط هذه في Firebase أو واجهة مستخدم "إحصاءات Google". مزيد من المعلومات حول ربط موقع على "إحصاءات Google" بمشروعك على Firebase
يُرجى العِلم أنّه بما أنّ جميع بيانات Analytics يتم تخزينها في الموقع (وليس في مشروع Firebase)، لا يمكن استرداد بيانات Analytics التي تم جمعها سابقًا.
Analytics: كيف ستتأثّر منتجات Firebase أو منتجات Google المدمجة بحذف موقعي على "إحصاءات Google"؟
تعتمد العديد من منتجات Firebase على عملية دمج "إحصاءات Google". في حال حذف موقعك على "إحصاءات Google" وبياناته، سيحدث ما يلي إذا كنت تستخدم المنتجات التالية:
- Crashlytics — لم يعُد بإمكانك الاطّلاع على المستخدمين الذين لم تحدث أعطال في أجهزتهم و/أو سجلات مسار التنفيذ و/أو تنبيهات السرعة.
- Cloud Messaging وIn-App Messaging: لم يعُد بإمكانك استخدام الاستهداف ومقاييس الحملات وتقسيم الجمهور إلى شرائح وتصنيفات الإحصاءات.
- Remote Config — لم يعُد بإمكانك استخدام الإعدادات المستهدَفة أو التخصيص.
- A/B Testing: لم يعُد بإمكانك استخدام A/B Testing لأنّ قياس التجربة يتم توفيره من خلال "إحصاءات Google".
- Dynamic Links — سيتم إيقاف أي ميزة تعتمد على بيانات من "إحصاءات Google".
بالإضافة إلى ذلك، ستتأثر عمليات الدمج التالية:
- لم يعُد بإمكانك تصدير Analytics البيانات إلى BigQuery.
- لن يعود بإمكانك الاستفادة من عمليات الدمج مع Google Ads أو Google AdMob.
Analytics: كيف يمكنني تقسيم المستخدمين الذين لم يستوفوا بعض المعايير؟
يمكنك إعادة صياغة المشكلة من خلال "استهداف سلبي" لهؤلاء المستخدمين. على سبيل المثال، يمكنك إعادة صياغة المشكلة على النحو التالي: "عدم عرض الإعلانات للمستخدمين الذين اشتروا منتجًا"، ثم إنشاء شريحة جمهور من هؤلاء المستخدمين لاستهدافهم.
Analytics: هل تتوفّر شرائح الجمهور و/أو الأحداث المحدّدة في واجهة "إحصاءات Google" أيضًا في وحدة تحكّم Firebase؟
ستتم مزامنة شرائح الجمهور وخصائص المستخدِمين. بالنسبة إلى بعض الميزات، عليك استخدام واجهة "إحصاءات Google"، مثل تقسيم المستخدمين إلى شرائح ومسارات الإحالة الناجحة المغلقة. يمكنك الوصول إلى واجهة "إحصاءات Google" مباشرةً من خلال الروابط لصفحات معيّنة من Firebase.
يمكن أيضًا إجراء أي تغييرات من وحدة تحكّم Firebase في "إحصاءات Google"، وستظهر هذه التغييرات في Firebase.
Authentication
Firebase Authentication: ما هي المناطق التي تتوفّر فيها ميزة المصادقة عبر الهاتف؟
تتيح Firebase Authentication إمكانية إثبات ملكية رقم الهاتف على مستوى العالم، ولكن لا يمكن لبعض الشبكات إرسال رسائل إثبات الملكية بشكل موثوق. تحقّق المناطق التالية معدّلات تسليم جيدة، ومن المتوقّع أن تعمل بشكل جيد مع ميزة مصادقة الهاتف. في بعض المناطق، لا تتوفّر خدمات بعض شركات النقل بسبب انخفاض معدّلات نجاح التسليم.
الإقليم | الرمز |
---|---|
م | أندورا |
AE | الإمارات العربية المتحدة |
AF | أفغانستان |
AG | أنتيغوا وبربودا |
AL | ألبانيا |
صباحا | أرمينيا |
AO | أنغولا |
تنسيق بتكنولوجيا الواقع المعزّز | الأرجنتين |
AS | ساموا الأمريكية |
AT | النمسا |
AU | أستراليا |
AW | أروبا |
AZ | أذربيجان |
BA | البوسنة والهرسك |
BB | بربادوس |
BD | بنغلاديش |
BE | بلجيكا |
BF | بوركينا فاسو |
BG | بلغاريا |
BJ | بنين |
BM | برمودا |
BN | بروناي (دار السلام) |
BO | بوليفيا |
BR | البرازيل |
BS | جزر البهاما |
BT | بوتان |
BW | بتسوانا |
بواسطة | بيلاروس |
BZ | بليز |
CA | كندا |
CD | الكونغو (كينشاسا) |
CF | جمهورية أفريقيا الوسطى |
CG | الكونغو (برازافيل) |
CH | سويسرا |
CI | ساحل العاج |
CK | جزر كوك |
CL | تشيلي |
مدير الحملة | الكاميرون |
CO | كولومبيا |
رد جاهز | كوستاريكا |
CV | كيب فيرد |
CW | كوراساو |
CY | قبرص |
CZ | جمهورية التشيك |
DE | ألمانيا |
منسّق الموسيقى | جيبوتي |
الدانمرك | الدانمرك |
DM | دومينيكا |
DO | جمهورية الدومينيكان |
DZ | الجزائر |
EC | الإكوادور |
مصر | مصر |
ES | إسبانيا |
ET | إثيوبيا |
FI | فنلندا |
FJ | فيجي |
FK | جزر فوكلاند (مالفيناس) |
FM | ولايات ميكرونيسيا المتحدة |
FO | جزر فارو |
FR | فرنسا |
GA | الغابون |
غيغابايت | المملكة المتحدة |
GD | غرينادا |
GE | جورجيا |
GF | غويانا الفرنسية |
GG | غيرنزي |
GH | غانا |
GI | جبل طارق |
GL | غرينلاند |
GM | غامبيا |
GP | غوادلوب |
GQ | غينيا الاستوائية |
GR | اليونان |
GT | غواتيمالا |
GY | غيانا |
HK | هونغ كونغ، منطقة إدارية خاصة تابعة للصين |
HN | هندوراس |
HR | كرواتيا |
الشوط الأول | هايتي |
الوحدة الرئيسية (HU) | المجر |
رقم التعريف | إندونيسيا |
IE | أيرلندا |
IL | إسرائيل |
IM | جزيرة مان |
IN | الهند |
IQ | العراق |
تكنولوجيا المعلومات | إيطاليا |
JE | جيرسي |
JM | جامايكا |
JO | الأردن |
اليابان | اليابان |
KE | كينيا |
KG | قرغيزستان |
KH | كمبوديا |
KM | جزر القمر |
KN | سانت كيتس ونيفيس |
KR | كوريا (الجنوبية) |
KW | الكويت |
KY | جزر كايمان |
KZ | كازاخستان |
LA | جمهورية لاو الديمقراطية الشعبية |
نقاط بسبب اصطدام الكرة بجسم ضارب الكرة | لبنان |
LC | سانت لوشيا |
LI | ليشتنشتاين |
LK | سريلانكا |
LS | ليسوتو |
LT | ليتوانيا |
LU | لكسمبورغ |
LV | لاتفيا |
LY | ليبيا |
MA | المغرب |
MD | مولدوفا |
ME | الجبل الأسود |
MF | سانت مارتن (الجزء الفرنسي) |
MG | مدغشقر |
MK | جمهورية مقدونيا |
MM | ميانمار |
MN | منغوليا |
MO | ماكاو، منطقة إدارية خاصة في الصين |
MS | مونتسيرات |
MT | مالطا |
MU | موريشيوس |
ميغاواط | ملاوي |
MX | المكسيك |
MY | ماليزيا |
MZ | موزمبيق |
غير متاح | ناميبيا |
NC | كاليدونيا الجديدة |
شمال شرق | النيجر |
NF | جزيرة نورفولك |
NG | نيجيريا |
NI | نيكاراغوا |
NL | هولندا |
لا | النرويج |
NP | نيبال |
NZ | نيوزيلندا |
OM | عُمان |
PA | بنما |
PE | بيرو |
PG | بابوا غينيا الجديدة |
PH | الفلبين |
PK | باكستان |
PL | بولندا |
مساءً | سان بيير وميكلون |
PR | بورتوريكو |
ضربات الجزاء | فلسطين |
PT | البرتغال |
PY | باراغواي |
QA | قطر |
RE | جزيرة ريونيون |
RO | رومانيا |
RS | صربيا |
RU | روسيا الاتحادية |
RW | رواندا |
SA | المملكة العربية السعودية |
SC | سيشيل |
جنوب شرق | السويد |
SG | سنغافورة |
ركلات الترجيح | سانت هلينا |
SI | سلوفينيا |
SK | سلوفاكيا |
SL | سيراليون |
SN | السنغال |
SR | سورينام |
ST | سان تومي وبرينسيبي |
SV | السلفادور |
SZ | سوازيلند |
TC | جزر توركس وكايكوس |
TG | توغو |
تايلاند | تايلاند |
قائد فريق | تيمور الشرقية |
TM | تركمانستان |
إلى | تونغا |
TR | تركيا |
TT | ترينيداد وتوباغو |
تايوان | تايوان، جمهورية الصين |
TZ | حمهورية تنزانيا المتحدة |
UA | أوكرانيا |
UG | أوغندا |
الولايات المتحدة | United States of America |
UY | أوروغواي |
UZ | أوزباكستان |
VC | سانت فنسنت وجزر غرينادين |
VE | فنزويلا (جمهورية بوليفارية) |
VG | جزر فيرجن البريطانية |
VI | جزر فيرجن الأمريكية |
VN | فيتنام |
WS | ساموا |
YE | اليمن |
YT | مايوت |
ZA | جنوب أفريقيا |
ZM | زامبيا |
ZW | زيمبابوي |
Firebase Authentication: ماذا حدث للرسائل القصيرة المجانية في "خطة Spark"؟
اعتبارًا من سبتمبر 2024، ولتحسين أمان خدمة "المصادقة عبر الهاتف" وجودتها، يجب ربط مشاريع Firebase بحساب على Cloud Billing لتفعيل خدمة الرسائل القصيرة واستخدامها.
Firebase Authentication: كيف يمكنني منع إساءة استخدام الرسائل القصيرة عند استخدام ميزة إثبات الهوية عبر الهاتف؟
للمساعدة في حماية مشروعك من زيادة عدد الزيارات إلى الرسائل القصيرة وإساءة استخدام واجهة برمجة التطبيقات، اتّخِذ الخطوات التالية:
ننصحك بضبط سياسة منطقة الرسائل القصيرة
الاطّلاع على استخدام الرسائل القصيرة SMS على مستوى منطقة معيّنة
ابحث عن المناطق التي تم فيها إرسال عدد كبير جدًا من رسائل SMS وعدد قليل جدًا (أو صفر) من رسائل SMS التي تم التحقّق منها. نسبة الرسائل التي تم التحقّق منها إلى الرسائل المُرسَلة هي معدّل النجاح. تتراوح معدّلات النجاح الجيدة عادةً بين %70 و%85، لأنّ الرسائل القصيرة ليست بروتوكول تسليم مضمونًا، وقد تحدث إساءة استخدام في بعض المناطق. تشير معدّلات النجاح التي تقل عن% 50 إلى إرسال العديد من الرسائل القصيرة ولكن تسجيل الدخول بنجاح مرات قليلة، وهذا مؤشر شائع على الجهات المسيئة وعمليات تضخيم عدد الزيارات إلى الرسائل القصيرة.
استخدِم سياسة المناطق التي يمكن إرسال الرسائل القصيرة إليها إما لرفض المناطق التي تسجّل معدلات نجاح منخفضة في إرسال الرسائل القصيرة، أو للسماح بمناطق معيّنة فقط إذا كان تطبيقك مخصّصًا للتوزيع في أسواق معيّنة.
الحدّ من نطاقات المصادقة المسموح بها
استخدِم
لوحة بيانات إعدادات المصادقة
لإدارة النطاقات المسموح بها. يتم تلقائيًا إضافة النطاق localhost
إلى نطاقات المصادقة الموافَق عليها لتسهيل عملية التطوير. ننصحك بإزالة
localhost
من النطاقات المسموح بها في مشروعك العلني
لمنع الجهات المسيئة من تنفيذ الرمز البرمجي على localhost
الخاص بها للوصول إلى مشروعك العلني.
تفعيل App Check وفرضه
فعِّل خدمة App Check للمساعدة في حماية مشروعك من إساءة استخدام واجهة برمجة التطبيقات من خلال إثبات أنّ الطلبات لا تأتي إلا من التطبيقات المرتبطة بمشروعك.
لاستخدام App Check مع Firebase Authentication، يجب الترقية إلى Firebase Authentication with Identity Platform.
تذكَّر أنّه عليك فرض استخدام App Check في خدمة المصادقة من خلال وحدة تحكّم Firebase (ننصحك بمراقبة عدد الزيارات قبل فرض الاستخدام). عليك أيضًا التحقّق من قائمة المواقع الإلكترونية المعتمدة في reCAPTCHA Enterprise للتأكّد من أنّها لا تحتوي إلا على مواقعك الإلكترونية المباشرة، ومن أنّ قائمة التطبيقات المسجّلة في مشروعك في App Check دقيقة.
يُرجى العِلم أنّ خدمة App Check تساعد في الحماية من الهجمات الآلية من خلال التأكّد من أنّ الطلب وارد من أحد تطبيقاتك المسجّلة. ولا يمنع المستخدمين من استخدام تطبيقك بطرق غير مقصودة (على سبيل المثال، بدء عمليات تسجيل الدخول وعدم إكمالها مطلقًا بهدف إنشاء رسائل SMS مُرسَلة).
Firebase Authentication: هل يمكن استخدام أرقام الهواتف التي تم نقلها إلى مشغّل شبكة جوّال جديد في ميزة "مصادقة الهاتف"؟
في الوقت الحالي، سيؤدي نقل الأرقام بين شركات الاتصالات إلى تعذُّر إرسال جميع الرسائل القصيرة إلى هؤلاء المستخدمين النهائيين. ليس هناك حل بديل، ويعمل فريق Firebase على حلّ هذه المشكلة.
Firebase Authentication: لماذا تظهر لي رسالة الخطأ التالية في تطبيق Android الخاص بي:
Google sign in failed
؟
Google sign in failed
اتّبِع خطوات تحديد المشاكل وحلّها الواردة في الأسئلة الشائعة هذه إذا ظهر لك الخطأ التالي:
GoogleFragment: Google sign in failed
com.google.android.gms.common.api.ApiException: 13: Unable to get token.
at
com.google.android.gms.internal.auth-api.zbay.getSignInCredentialFromIntent(com.google.android.gms:play-services-auth@@20.3.0:6)
تأكَّد من تفعيل تسجيل الدخول باستخدام حساب Google بشكل صحيح كموفّر مصادقة باتّباع الخطوات التالية:
في وحدة تحكّم Firebase، افتح القسم Authentication.
ضمن علامة التبويب طريقة تسجيل الدخول، أوقِف طريقة تسجيل الدخول باستخدام Google ثم أعِد تفعيلها (حتى إذا كانت مفعَّلة):
افتح طريقة تسجيل الدخول باستخدام Google وأوقِفها، ثم انقر على حفظ.
أعِد فتح طريقة تسجيل الدخول باستخدام Google وفعِّلها، ثم انقر على حفظ.
تأكَّد من أنّ تطبيقك يستخدم ملف الإعداد الحالي في Firebase (
google-services.json
).
الحصول على ملف الإعداد الخاص بتطبيقكتحقَّق مما إذا كان الخطأ لا يزال يظهر. إذا كان الأمر كذلك، انتقِل إلى خطوة تحديد المشاكل وحلّها التالية.
تأكَّد من توفّر برامج OAuth 2.0 الأساسية المطلوبة.
في صفحة بيانات الاعتماد ضمن وحدة تحكّم Google Cloud، ابحث في قسم معرّفات عميل OAuth 2.0.
إذا لم تكن برامج OAuth 2.0 متوفّرة (وكنت قد اتّبعت جميع خطوات تحديد المشاكل وحلّها المذكورة أعلاه)، يُرجى التواصل مع فريق الدعم.
Firebase Authentication: في تطبيق منصة Apple، لماذا تظهر لي رسالة الخطأ التالية:
You must specify <clientID> in <GIDConfiguration>
؟
You must specify <clientID> in <GIDConfiguration>
اتّبِع خطوات تحديد المشاكل وحلّها الواردة في الأسئلة الشائعة هذه إذا ظهر لك الخطأ التالي:
You must specify |clientID| in |GIDConfiguration|
تأكَّد من تفعيل تسجيل الدخول باستخدام Google بشكل صحيح كموفّر مصادقة باتّباع الخطوات التالية:
في وحدة تحكّم Firebase، افتح القسم Authentication.
ضمن علامة التبويب طريقة تسجيل الدخول، أوقِف طريقة تسجيل الدخول باستخدام Google ثم أعِد تفعيلها (حتى إذا كانت مفعَّلة):
افتح طريقة تسجيل الدخول باستخدام Google وأوقِفها، ثم انقر على حفظ.
أعِد فتح طريقة تسجيل الدخول باستخدام Google وفعِّلها، ثم انقر على حفظ.
تأكَّد من أنّ تطبيقك يستخدم ملف الإعداد الحالي في Firebase (
GoogleService-Info.plist
).
الحصول على ملف الإعداد الخاص بتطبيقكتحقَّق مما إذا كان الخطأ لا يزال يظهر. إذا كان الأمر كذلك، انتقِل إلى خطوة تحديد المشاكل وحلّها التالية.
تأكَّد من توفّر برامج OAuth 2.0 الأساسية المطلوبة.
في صفحة بيانات الاعتماد ضمن وحدة تحكّم Google Cloud، ابحث في قسم معرّفات عميل OAuth 2.0.
إذا لم تكن برامج OAuth 2.0 متوفّرة (وكنت قد اتّبعت جميع خطوات تحديد المشاكل وحلّها المذكورة أعلاه)، يُرجى التواصل مع فريق الدعم.
Firebase Authentication: لماذا تظهر لي رسالة الخطأ التالية في تطبيق الويب الخاص بي:
AuthErrorCode.INVALID_OAUTH_CLIENT_ID
؟
AuthErrorCode.INVALID_OAUTH_CLIENT_ID
اتّبِع خطوات تحديد المشاكل وحلّها الواردة في الأسئلة الشائعة هذه إذا ظهر لك الخطأ التالي:
AuthErrorCode.INVALID_OAUTH_CLIENT_ID
تأكَّد من تفعيل تسجيل الدخول باستخدام حساب Google بشكل صحيح كموفّر مصادقة باتّباع الخطوات التالية:
في وحدة تحكّم Firebase، افتح القسم Authentication.
ضمن علامة التبويب طريقة تسجيل الدخول، أوقِف طريقة تسجيل الدخول باستخدام Google ثم أعِد تفعيلها (حتى إذا كانت مفعَّلة):
افتح طريقة تسجيل الدخول باستخدام Google وأوقِفها، ثم انقر على حفظ.
أعِد فتح طريقة تسجيل الدخول باستخدام Google وفعِّلها، ثم انقر على حفظ.
في إعدادات موفّر تسجيل الدخول Google ضمن القسم Authentication، تأكَّد أيضًا من تطابق معرّف العميل وسر العميل لبروتوكول OAuth مع عميل الويب المعروض في صفحة بيانات الاعتماد في وحدة تحكّم Google Cloud (ابحث في القسم معرّفات العميل لبروتوكول OAuth 2.0).
Firebase Authentication: في تطبيق الويب الخاص بي، لماذا يتعذّر تسجيل الدخول باستخدام عمليات إعادة التوجيه
ويظهر الخطأ التالي:
This domain YOUR_REDIRECT_DOMAIN is not
authorized to run this operation
؟
This domain YOUR_REDIRECT_DOMAIN is not
authorized to run this operation
اتّبِع خطوات تحديد المشاكل وحلّها الواردة في الأسئلة الشائعة هذه إذا ظهر لك الخطأ التالي:
This domain YOUR_REDIRECT_DOMAIN is not authorized to run this operation.
من المرجّح أنّ سبب هذا الخطأ هو أنّ نطاق إعادة التوجيه غير مدرَج كنطاق معتمَد لخدمة Firebase Authentication، أو أنّ مفتاح واجهة برمجة التطبيقات الذي تستخدمه مع خدمة Firebase Authentication غير صالح.
عليك أولاً التأكّد من أنّ YOUR_REDIRECT_DOMAIN مدرَج في قائمة النطاقات المسموح بها في مشروعك على Firebase. إذا كان نطاق إعادة التوجيه مُدرَجًا هناك، تابِع تحديد المشاكل وحلّها المتعلّقة بمفتاح واجهة برمجة التطبيقات غير الصالح.
تعتمد حزمة تطوير البرامج (SDK) في Firebase Authentication JavaScript تلقائيًا على مفتاح واجهة برمجة التطبيقات لمشروعك على Firebase الذي يحمل التصنيف Browser key
، وتستخدم هذا المفتاح للتحقّق من أنّ عنوان URL لإعادة التوجيه عند تسجيل الدخول صالح وفقًا لقائمة النطاقات المسموح بها.
تحصل Authentication على مفتاح واجهة برمجة التطبيقات هذا استنادًا إلى طريقة وصولك إلى حزمة تطوير البرامج (SDK) الخاصة بـ Authentication:
إذا كنت تستخدم أدوات مساعدة Auth التي توفّرها Hosting لتسجيل دخول المستخدمين باستخدام حزمة تطوير البرامج (SDK) بلغة JavaScript الخاصة بـ Authentication، يحصل Firebase تلقائيًا على مفتاح واجهة برمجة التطبيقات مع بقية إعدادات Firebase في كل مرة تنشر فيها على Firebase Hosting. تأكَّد من أنّ
authDomain
في تطبيق الويبfirebaseConfig
تم ضبطه بشكل صحيح لاستخدام أحد النطاقات الخاصة بموقع Hosting الإلكتروني. يمكنك التأكّد من ذلك من خلال الانتقال إلىhttps://authDomain__/firebase/init.json
، ثم التأكّد من أنّprojectId
يتطابق معfirebaseConfig
.إذا كنت تستضيف رمز تسجيل الدخول بنفسك، يمكنك استخدام ملف
__/firebase/init.json
لتوفير إعدادات Firebase لأداة المساعدة في إعادة التوجيه Authentication JS SDK المستضافة ذاتيًا. يجب أن يتطابق مفتاح واجهة برمجة التطبيقات وprojectId
المدرَجان في ملف الإعداد هذا مع تطبيق الويبfirebaseConfig
.
تأكَّد من عدم حذف مفتاح واجهة برمجة التطبيقات هذا: انتقِل إلى لوحة واجهات برمجة التطبيقات والخدمات > بيانات الاعتماد في وحدة تحكّم Google Cloud حيث يتم إدراج جميع مفاتيح واجهة برمجة التطبيقات لمشروعك.
إذا لم يتم حذف
Browser key
، يُرجى التحقّق مما يلي:تأكَّد من أنّ واجهة برمجة التطبيقات Firebase Authentication مدرَجة في قائمة واجهات برمجة التطبيقات المسموح لمفتاح الواجهة بالوصول إليها (مزيد من المعلومات حول قيود واجهة برمجة التطبيقات لمفاتيح الواجهة).
إذا كنت تستضيف رمز تسجيل الدخول بنفسك، تأكَّد من أنّ مفتاح واجهة برمجة التطبيقات المُدرَج في ملف
__/firebase/init.json
يتطابق مع مفتاح واجهة برمجة التطبيقات في Cloud Console. صحِّح المفتاح في الملف إذا لزم الأمر، ثم أعِد نشر تطبيقك.إذا تم حذف
Browser key
، يمكنك أن تطلب من Firebase إنشاء مفتاح جديد لواجهة برمجة التطبيقات: في وحدة تحكّم Firebase، انتقِل إلى settings > إعدادات المشروع، ثم انقر على تطبيق الويب في قسم تطبيقاتك. يؤدي هذا الإجراء إلى إنشاء مفتاح لواجهة برمجة التطبيقات تلقائيًا يمكنك الاطّلاع عليه في قسم إعداد حزمة تطوير البرامج (SDK) وضبطها لتطبيق الويب.
يُرجى العِلم أنّه في Cloud Console، لن يُطلق على مفتاح واجهة برمجة التطبيقات الجديد هذا الاسم
Browser key
، بل سيكون له الاسم نفسه الذي يحمله الاسم المستعار لتطبيق الويب على Firebase. إذا قررت إضافة قيود على واجهة برمجة التطبيقات إلى مفتاح واجهة برمجة التطبيقات الجديد هذا، تأكَّد من أنّ واجهة برمجة التطبيقات Firebase Authentication مدرَجة في قائمة واجهات برمجة التطبيقات المسموح بها.بعد إنشاء مفتاح واجهة برمجة التطبيقات الجديد، أكمِل الخطوات التالية:
في حال استخدام عناوين URL Hostingمحجوزة، أعِد نشر تطبيقك على Firebase ليتمكّن من الحصول تلقائيًا على مفتاح واجهة برمجة التطبيقات الجديد مع بقية إعدادات Firebase.
إذا كنت تستضيف رمز تسجيل الدخول بنفسك، انسخ مفتاح واجهة برمجة التطبيقات الجديد وأضِفه إلى ملف
__/firebase/init.json
، ثم أعِد نشر تطبيقك.
Firebase Authentication: كيف يمكنني إنشاء عميل OAuth على الويب يدويًا؟
افتح صفحة بيانات الاعتماد في وحدة تحكّم Google Cloud.
في أعلى الصفحة، انقر على إنشاء بيانات اعتماد > معرّف عميل OAuth.
إذا طُلب منك ضبط شاشة الموافقة، اتّبِع التعليمات الظاهرة على الشاشة، ثم واصِل تنفيذ الخطوات التالية في هذا السؤال الشائع.
إنشاء عميل OAuth على الويب:
في حقل نوع التطبيق، اختَر تطبيق الويب.
في الحقل مصادر JavaScript المسموح بها، أضِف ما يلي:
http://localhost
http://localhost:5000
https://PROJECT_ID.firebaseapp.com
https://PROJECT_ID.web.app
بالنسبة إلى معرِّفات الموارد المنتظمة (URI) المعتمَدة لإعادة التوجيه، أضِف ما يلي:
https://PROJECT_ID.firebaseapp.com/__/auth/handler
https://PROJECT_ID.web.app/__/auth/handler
احفظ عميل OAuth.
انسخ معرّف عميل OAuth الجديد وسر العميل إلى الحافظة.
في وحدة تحكّم Firebase، افتح القسم Authentication.
ضمن علامة التبويب طريقة تسجيل الدخول، افتح موفّر تسجيل الدخول باستخدام Google، ثم الصِق رقم تعريف العميل وسرّه اللذين أنشأتهما ونسختهما للتو من وحدة تحكّم Google Cloud. انقر على حفظ.
Firebase Authentication: كيف يتم تحديد %APP_NAME%
لنموذج الرسالة الإلكترونية المخصّص لرسالة التأكيد الإلكترونية التي يمكن إرسالها إلى
مستخدم عند الاشتراك باستخدام عنوان بريد إلكتروني وكلمة مرور؟
قبل كانون الأول (ديسمبر) 2022، كانت تتم تعبئة %APP_NAME%
في نموذج الرسالة الإلكترونية باسم العلامة التجارية لبروتوكول OAuth الذي تم توفيره تلقائيًا عند تسجيل تطبيق Android في مشروع Firebase. بما أنّ العلامة التجارية OAuth يتم توفيرها فقط عند تفعيل ميزة "تسجيل الدخول باستخدام حساب Google"، يوضّح ما يلي كيفية تحديد قيمة %APP_NAME%
:
إذا كان اسم العلامة التجارية لبروتوكول OAuth متاحًا، سيتم عرض
%APP_NAME%
في نموذج البريد الإلكتروني كاسم العلامة التجارية لبروتوكول OAuth (كما كان يحدث قبل كانون الأول (ديسمبر) 2022).إذا كان اسم العلامة التجارية الخاصة ببروتوكول OAuth غير متاح، إليك كيفية تحديد
%APP_NAME%
في نموذج الرسالة الإلكترونية:بالنسبة إلى تطبيقات الويب، سيكون
%APP_NAME%
هو اسم الموقع الإلكتروني Firebase Hosting التلقائي (القيمة التي تسبق.firebaseapp.com
و.web.app
، وهي عادةً معرّف مشروع Firebase).بالنسبة إلى التطبيقات المتوافقة مع الأجهزة الجوّالة:
إذا كان اسم حزمة Android أو معرّف حزمة iOS متوفّرًا في الطلب، سيكون
%APP_NAME%
هو اسم التطبيق المستخدَم في "متجر Play" أو App Store (على التوالي).في الحالات الأخرى، سيكون
%APP_NAME%
هو اسم الموقع الإلكتروني Firebase Hostingالتلقائي (القيمة التي تسبق.firebaseapp.com
و.web.app
، وهي عادةً رقم تعريف مشروع Firebase).
يُرجى العِلم أنّه في حال تعذُّر البحث عن اسم الموقع الإلكتروني التلقائي Firebase Hosting، سيتم استخدام رقم تعريف مشروع Firebase كاسم احتياطي نهائي
%APP_NAME%
.
Cloud Functions
Cloud Functions التوافق مع وقت التشغيل
كيف يمكنني الترقية إلى أحدث إصدار متوافق من Node.js؟
- تأكَّد من أنّك تستخدم خطة أسعار Blaze.
- تأكَّد من استخدام أحدث إصدار من واجهة سطر الأوامر Firebase.
- عدِّل الحقل
engines
فيpackage.json
الخاص بالدوال. - اختياريًا، اختبِر التغييرات باستخدام Firebase Local Emulator Suite.
- أعِد نشر جميع الدوال.
كيف يمكنني التأكّد من أنّني نشرتُ وظائفي في وقت تشغيل Node.js معيّن؟
في وحدة تحكّم Firebase، انتقِل إلى لوحة بيانات الدوال، واختَر دالة، واطّلِع على لغة الدالة ضمن تفاصيل إضافية.
أستخدم إضافات Firebase. هل سأتأثر بتعديلات وقت تشغيل Cloud Functions؟
نعم. بما أنّ الإضافات تستخدم Cloud Functions، يجب تعديل وقت تشغيل الإضافات وفقًا للجدول الزمني نفسه الذي يخص Cloud Functions.
ننصحك بالتحديث بشكل دوري إلى أحدث إصدار من كل إضافة مثبّتة في مشروعك. يمكنك ترقية إضافات مشاريعك من خلال Firebase وحدة التحكّم أو Firebase واجهة سطر الأوامر.
أسعار Cloud Functions
لماذا أحتاج إلى حساب فوترة لاستخدام Cloud Functions for Firebase؟
تعتمد Cloud Functions for Firebase على بعض خدمات Google المدفوعة. تعتمد عمليات نشر الدوال الجديدة باستخدام الإصدار 11.2.0 من Firebase CLI والإصدارات الأحدث على Cloud Build وArtifact Registry. تستخدم عمليات النشر في الإصدارات القديمة Cloud Build بالطريقة نفسها، ولكنها تعتمد على Container Registry وCloud Storage للتخزين بدلاً من Artifact Registry. وسيتم إصدار فواتير مقابل استخدام هذه الخدمات بالإضافة إلى الأسعار الحالية.
مساحة التخزين للإصدار 11.2.0 من Firebase CLI والإصدارات الأحدث
توفّر Artifact Registry الحاويات التي يتم فيها تشغيل الدوال. توفّر Artifact Registry أول 500 ميغابايت بدون أي تكلفة، لذا قد لا تتكبّد أي رسوم عند نشر وظائفك للمرة الأولى. وبعد تجاوز هذا الحد، يتم تحصيل 0.10 دولار أمريكي شهريًا مقابل كل غيغابايت إضافي من مساحة التخزين.
مساحة التخزين في الإصدار 11.1.x والإصدارات الأقدم من واجهة سطر الأوامر Firebase
بالنسبة إلى الدوال التي تم نشرها في إصدارات قديمة، يوفّر Container Registry الحاويات التي يتم تشغيل الدوال فيها. سيتم تحصيل رسوم منك مقابل كل حاوية مطلوبة لنشر إحدى الدوال. قد تلاحظ رسومًا صغيرة مقابل كل حاوية مخزّنة، على سبيل المثال، تتم فوترة مساحة التخزين البالغة 1 غيغابايت بمبلغ 0.026 دولار أمريكي شهريًا.
لمعرفة المزيد حول التغييرات المحتملة في فاتورتك، يُرجى الاطّلاع على ما يلي:
- أسعار Cloud Functions: لن يتغيّر المستوى الحالي بدون تكلفة.
- أسعار Cloud Build: يوفّر Cloud Build مستوى بدون تكلفة.
- Artifact Registry التسعير
- Container Registry التسعير
هل ما زال بإمكانك استخدام Cloud Functions for Firebase بدون تكلفة؟
نعم. في خطة Blaze، يوفّر Cloud Functions فئة بدون تكلفة لعمليات الاستدعاء ووقت الحوسبة وحركة بيانات الإنترنت. يتم توفير أول 2,000,000 عملية استدعاء و400,000 غيغابايت في الثانية و200,000 وحدة معالجة مركزية في الثانية و5 غيغابايت من حركة بيانات الخروج من الإنترنت بدون أي تكلفة كل شهر. ولن يتم تحصيل رسوم منك إلا مقابل الاستخدام الذي يتجاوز هذه الحدود.
بعد أول 500 ميغابايت من مساحة التخزين بدون أي تكلفة، سيتم تحصيل رسوم صغيرة النطاق مقابل كل عملية نشر، وذلك مقابل مساحة التخزين المستخدَمة لحاوية الدالة. إذا كانت عملية التطوير تعتمد على نشر الدوال للاختبار، يمكنك تقليل التكاليف بشكل أكبر باستخدام Firebase Local Emulator Suite أثناء التطوير.
راجِع خطط أسعار Firebase وسيناريوهات الأمثلة في Cloud Functions الأسعار.
هل تخطّط Firebase لزيادة الحصص والحدود المسموح بها في Cloud Functions for Firebase؟
لا، ليس لدينا أي خطط لتغيير الحصص باستثناء إزالة الحد الأقصى لوقت الإنشاء. وبدلاً من تلقّي أخطاء أو تحذيرات عند بلوغ حصة الإنشاء اليومية البالغة 120 دقيقة، سيتم تحصيل الرسوم منك بموجب بنود خطة أسعار Blaze. الحصص والحدود
هل يمكنني الحصول على الرصيد البالغ Google Cloud$300؟
نعم، يمكنك إنشاء حساب Cloud Billing في وحدة تحكّم Google Cloud للحصول على رصيد بقيمة 300 دولار أمريكي، ثم ربط حساب Cloud Billing هذا بمشروع على Firebase.
يمكنك الاطّلاع على مزيد من المعلومات حول Google Cloudالرصيد هنا.
يُرجى العِلم أنّه في حال اتّخاذ هذا الإجراء، عليك إعداد خطة أسعار Blaze في وحدة تحكّم Firebase لكي يستمر مشروعك في العمل بعد استنفاد رصيد الـ 300 دولار أمريكي.
أريد اتّباع برنامج تعليمي للتعرّف على Firebase. هل يمكنكم تزويدي بحساب فوترة مؤقت؟
لا، عذرًا. يمكنك استخدام محاكي Firebase للتطوير بدون الحاجة إلى حساب Cloud Billing. يمكنك بدلاً من ذلك تقديم طلب للحصول على فترة تجريبية مجانية لمدة Google Cloud يوم. إذا كنت لا تزال تواجه مشكلة في دفع فاتورتك بسبب هذا التغيير، يُرجى التواصل مع فريق دعم Firebase.
أخشى أن تتراكم عليّ فاتورة كبيرة.
يمكنك إعداد تنبيهات بشأن الميزانية في وحدة تحكّم Google Cloud للمساعدة في التحكّم في التكاليف. يمكنك أيضًا ضبط حدود على عدد المثيلات التي يتم تحصيل رسوم مقابلها والتي تم إنشاؤها لكل وظيفة من وظائفك. للحصول على فكرة عن التكاليف في السيناريوهات النموذجية، اطّلِع على أمثلة أسعار Cloud Functions.
كيف يمكنني الاطّلاع على رسوم الفوترة الحالية؟
اطّلِع على لوحة بيانات الاستخدام والفوترة في وحدة تحكّم Firebase.
أستخدم إضافات Firebase. هل أحتاج إلى حساب فوترة؟
نعم. بما أنّ الإضافات تستخدم Cloud Functions، ستخضع الإضافات للرسوم نفسها التي تخضع لها الدوال الأخرى.
لاستخدام الإضافات، عليك الترقية إلى خطة أسعار Blaze. سيتم تحصيل مبلغ صغير منك (عادةً حوالي 0.01 دولار أمريكي شهريًا) مقابل موارد Firebase التي تتطلّبها كل إضافة تثبّتها (حتى إذا لم يتم استخدامها)، بالإضافة إلى أي رسوم مرتبطة باستخدامك لخدمات Firebase.
Cloud Messaging
Cloud Messaging: ما الفرق بين أداة إنشاء الإشعارات وCloud Messaging؟
توفّر Firebase Cloud Messaging مجموعة كاملة من إمكانات المراسلة من خلال حِزم تطوير البرامج (SDK) الخاصة بالعملاء وبروتوكول خادم HTTP. إذا كانت عمليات النشر تتضمّن متطلبات أكثر تعقيدًا بشأن الرسائل، فإنّ FCM هو الخيار المناسب.
"أداة إنشاء الإشعارات" هي حلّ خفيف الوزن لإرسال الرسائل بدون خادم، وهو مبني على Firebase Cloud Messaging. من خلال وحدة تحكّم رسومية سهلة الاستخدام ومتطلبات ترميز أقل، تتيح أداة إنشاء الإشعارات للمستخدمين إرسال الرسائل بسهولة لإعادة جذب المستخدمين والاحتفاظ بهم وتعزيز نمو التطبيق ودعم الحملات التسويقية.
الإمكانات | منشئ الإشعارات | Cloud Messaging | |
---|---|---|---|
الهدف | جهاز واحد | ||
العملاء المشتركون في مواضيع (مثل الطقس) | |||
العملاء في شريحة المستخدمين المحدّدة مسبقًا (التطبيق والإصدار واللغة) | |||
العملاء في شرائح جمهور محدّدة في "إحصاءات Google" | |||
العملاء في مجموعات الأجهزة | |||
التحميل من العميل إلى الخادم | |||
نوع الرسالة | الإشعارات التي يصل حجمها إلى 2 كيلوبايت | ||
رسائل البيانات التي تصل إلى 4 كيلوبايت | |||
التسليم | فوري | ||
التوقيت المحلي لجهاز العميل المستقبلي | |||
الإحصاءات | جمع إحصاءات "الإشعارات المضمّنة" وتحليل مسار الإحالة الناجحة |
Cloud Messaging: أعلنت شركة Apple أنّها ستتوقف عن استخدام بروتوكول APNs الثنائي القديم. هل يجب اتّخاذ أي إجراء؟
لا، تم التبديل إلى بروتوكول APNs المستند إلى HTTP/2 في عام 2017.Firebase Cloud Messaging إذا كنت تستخدم FCM لإرسال الإشعارات إلى أجهزة iOS، ليس عليك اتّخاذ أي إجراء.
Cloud Messaging: هل يجب استخدام خدمات أخرى من Firebase لاستخدام FCM؟
يمكنك استخدام Firebase Cloud Messaging كمكوّن مستقل، بالطريقة نفسها التي استخدمت بها GCM، بدون استخدام خدمات Firebase الأخرى.
Cloud Messaging: أنا مطوّر حالي في خدمة المراسلة عبر السحابة الإلكترونية من Google (GCM). هل يجب الانتقال إلى Firebase Cloud Messaging؟
FCM هو الإصدار الجديد من GCM ضمن علامة Firebase التجارية. وتستند إلى البنية الأساسية لخدمة GCM، مع توفير حِزم SDK جديدة لتسهيل عملية تطوير Cloud Messaging.
تشمل مزايا الترقية إلى حزمة تطوير البرامج (SDK) لخدمة FCM ما يلي:
- تطوير أسهل للعملاء لن تحتاج بعد الآن إلى كتابة منطق إعادة المحاولة الخاص بالتسجيل أو الاشتراك.
- حلّ جاهز للإشعارات يمكنك استخدام "أداة إنشاء الإشعارات"، وهي حلّ لإرسال الإشعارات بدون خادم يتضمّن وحدة تحكّم على الويب تتيح لأي شخص إرسال إشعارات إلى شرائح جمهور معيّنة استنادًا إلى إحصاءات من "إحصاءات Google".
لترقية حِزم تطوير البرامج (SDK) من GCM إلى حِزم FCM، يُرجى الاطّلاع على أدلة نقل البيانات لتطبيقات Android وiOS.
Cloud Messaging: لماذا يبدو أنّ الأجهزة المستهدَفة لا تتلقّى الرسائل؟
عندما يبدو أنّ الأجهزة لم تتلقَّ الرسائل بنجاح، تحقَّق أولاً من هذين السببَين المحتملَين:
معالجة الرسائل في المقدّمة لرسائل الإشعارات يجب أن تضيف تطبيقات العميل منطق معالجة الرسائل للتعامل مع رسائل الإشعارات عندما يكون التطبيق في المقدّمة على الجهاز. اطّلِع على التفاصيل الخاصة بأجهزة iOS و Android.
القيود المفروضة على جدار حماية الشبكة إذا كانت مؤسستك تستخدم جدار حماية يقيّد الزيارات من الإنترنت أو إليه، عليك ضبطه للسماح بالاتصال بـ FCM كي تتمكّن تطبيقات عميل Firebase Cloud Messaging من تلقّي الرسائل. المنافذ التي يجب فتحها هي:
- 5228
- 5229
- 5230
يستخدم FCM عادةً المنفذ 5228، ولكنّه يستخدم أحيانًا المنفذَين 5229 و5230. لا تقدّم FCM عناوين IP محددة، لذا عليك السماح لجدار الحماية بقبول الاتصالات الصادرة لجميع عناوين IP المضمّنة في مجموعات عناوين IP الواردة في رقم النظام المستقل (ASN) 15169 الخاص بـ Google.
Cloud Messaging: لقد نفّذتُ
onMessageReceived
في تطبيق Android، ولكن لم يتم استدعاؤه.
عندما يكون تطبيقك يعمل في الخلفية، يتم عرض
رسائل الإشعارات في علبة النظام، ولا يتم استدعاء onMessageReceived
. بالنسبة إلى رسائل الإشعارات التي تتضمّن حمولة بيانات، يتم عرض رسالة الإشعار في لوحة النظام، ويمكن استرداد البيانات التي تم تضمينها في رسالة الإشعار من الغرض الذي تم إطلاقه عندما ينقر المستخدم على الإشعار.
لمزيد من المعلومات، يُرجى الاطّلاع على تلقّي الرسائل والتعامل معها.
Cloud Messaging: لماذا يتلقّى تطبيقي الخطأ "Invalid argument for the given fid" عند التسجيل في خدمة "المراسلة عبر السحابة الإلكترونية من Firebase"؟
معرّف التثبيت في Firebase (FID) هو معرّف لنسخة افتراضية من التطبيق. إذا تمت استعادة بيانات التثبيت لنسخة تطبيق من نسخة احتياطية، تعرض خدمة FCM هذا الخطأ للإشارة إلى أنّ رقم التعريف FID قد تم استخدامه من قِبل نسخة تطبيق مختلفة، وبالتالي لا يمكن لنسخة التطبيق الحالية استخدام رقم التعريف FID للتسجيل في خدمة FCM.
ننصح المطوّرين باتّخاذ الإجراءات التالية في تطبيقاتهم:
- استبعاد
بيانات تثبيت Firebase في النسخة الاحتياطية يتم تخزين بيانات تثبيت Firebase في ملف
PersistedInstallation....json
. اسم الملف هو قيمة ثابتة للتطبيق، مثل<exclude domain="file" path="PersistedInstallation....json" />
- احذف الملف
PersistedInstallation....json
عند تلقّي الأخطاء "وسيطة غير صالحة لمعرّف الجهاز المحدّد". في المرة التالية التي يسجّل فيها تطبيقك لدى خدمة FCM، سيتم إنشاء معرّف جديد.
أداة إنشاء الإشعارات: أنا مطوّر حالي في خدمة Google Cloud Messaging (GCM)، وأريد استخدام أداة إنشاء الإشعارات. ماذا يجب أن أفعل؟
"أداة إنشاء الإشعارات" هي حلّ جاهز للاستخدام يتيح لأي شخص إرسال إشعارات إلى شرائح جمهور محدّدة استنادًا إلى إحصاءات من "إحصاءات Google". بالإضافة إلى ذلك، يوفّر منشئ الإشعارات تحليل المسار لكل رسالة، ما يتيح تقييم فعالية الإشعارات بسهولة.
إذا كنت من مطوّري GCM الحاليين، عليك الترقية من حِزم تطوير البرامج (SDK) في GCM إلى حِزم تطوير البرامج (SDK) في FCM لاستخدام "أداة إنشاء الإشعارات". اطّلِع على أدلة نقل بيانات تطبيقات Android وiOS.
حصص وحدود FCM
كيف يمكنني إرسال إشعار إلى قاعدة كبيرة من العملاء في غضون دقيقتَين؟
لا يمكننا توفير هذه الحالة من الاستخدام. يجب توزيع عدد الزيارات على مدار 5 دقائق.
يُرسل تطبيقي إشعارات للمستخدمين بشأن الأحداث، ويجب إرسال هذه الرسائل على الفور لدعم نموذج عملي. هل يمكنني الحصول على حصة أكبر؟
لا يمكننا الموافقة على طلبات زيادة الحصة لهذا السبب. يجب توزيع عدد الزيارات على مدار 5 دقائق.
تتعلّق رسائلي بفعاليات مُجدوَلة. كيف يمكنني إرسال كل الزيارات في بداية الساعة؟
ننصحك ببدء إرسال الإشعارات قبل 5 دقائق على الأقل من موعد الحدث.
ما هي المدة التي يستغرقها تنفيذ طلب الحصة؟
يعتمد ذلك إلى حدّ ما على استخدامك لخدمة FCM. في أي حال، يمكنك توقّع الحصول على ردّ خلال بضعة أيام عمل. في بعض الحالات، قد يكون هناك بعض المراسلات ذهابًا وإيابًا بشأن استخدامك لخدمة FCM والظروف المختلفة، ما قد يؤدي إلى إطالة العملية. في حال استيفاء جميع المتطلبات، ستتم معالجة معظم الطلبات في غضون أسبوعَين.
كيف يمكنني تتبُّع معدّل استخدام الحصة؟
اطّلِع على إرشادات Google Cloud حول كيفية إنشاء رسوم بيانية لمقاييس الحصة ومراقبتها.
يصعب عليّ أو على نشاطي التجاري التعامل مع رموز الحالة 429. هل يمكنني الحصول على إعفاء أو حصة أكبر لتجنُّب تلقّي الرموز 429؟
ندرك أنّ حدود الحصة قد تكون صعبة، ولكنّ الحصص ضرورية للحفاظ على موثوقية الخدمة، ولا يمكننا منح استثناءات.
هل يمكنني الحصول على حصة أكبر لحدث مؤقت؟
يمكنك طلب حصة إضافية لاستيعاب حدث يستمر لمدة تصل إلى شهر واحد. يجب تقديم الطلب قبل شهر واحد على الأقل من موعد الحدث مع توفير تفاصيل واضحة حول وقت بدء الحدث وانتهائه، وسيبذل FCM كل جهد ممكن لتلبية الطلب (لا يمكن ضمان حدوث زيادة). سيتم إلغاء هذه الزيادات في الحصة بعد تاريخ انتهاء الحدث.
هل يمكن أن تتغيّر حصتي الحالية؟
مع أنّ Google لن تتخذ هذا الإجراء إلا عند الضرورة، قد يتم تغيير الحصص حسب الحاجة لحماية سلامة النظام. وسترسل لك Google إشعارًا مسبقًا بهذه التغييرات، إذا أمكن ذلك.
Cloud Storage for Firebase
Cloud Storage for Firebase: ما هي التغييرات التي تم الإعلان عنها في سبتمبر 2024 بشأن المجموعة التلقائية؟
انتقِل إلى مستندات Cloud Storage لمعرفة المزيد عن التغييرات في حزمة Cloud Storage التلقائية.
Cloud Storage for Firebase: لماذا لا يمكنني استخدام Cloud Storage for Firebase؟
تنشئ Cloud Storage for Firebase حزمة تلقائية في App Engine الفئة بدون تكلفة. يتيح لك ذلك البدء بسرعة في استخدام Firebase وCloud Storage for Firebase بدون الحاجة إلى إدخال بطاقة ائتمان أو تفعيل حساب Cloud Billing. ويتيح لك أيضًا مشاركة البيانات بسهولة بين Firebase ومشروع Google Cloud.
ومع ذلك، هناك حالتان معروفتان لا يمكن فيهما إنشاء هذه الحزمة، ولن تتمكّن من استخدام Cloud Storage for Firebase:
- مشروع تم استيراده من Google Cloud وكان يتضمّن تطبيق App Engine Master/Slave Datastore
-
مشروع تم استيراده من Google Cloud ويتضمّن مشاريع مسبوقة بالنطاق على سبيل المثال:
domain.com:project-1234
.
لا تتوفّر حاليًا حلول بديلة لهذه المشاكل، وننصحك بإنشاء مشروع جديد في وحدة تحكّم Firebase وتفعيل Cloud Storage for Firebase في هذا المشروع.
Cloud Storage for Firebase: لماذا أتلقّى الردود التي تتضمّن رمز الخطأ 412 بشأن أذونات حساب الخدمة وعمليات حساب الخدمة التي تعذّر إجراؤها عند استخدام واجهة برمجة التطبيقات Cloud Storage for Firebase؟
من المحتمل أن تظهر لك رموز الخطأ 412 لأنّ واجهة برمجة التطبيقات Cloud Storage for Firebase غير مفعّلة في مشروعك أو لأنّ حساب خدمة ضروريًا لا يملك الأذونات المطلوبة.
يمكنك الاطّلاع على الأسئلة الشائعة ذات الصلة.
Cloud Storage for Firebase: هل يمكنني تخزين ملفات قابلة للتنفيذ في مشاريع خطة Spark؟
بالنسبة إلى المشاريع التي تستخدم خطة Spark المجانية، تحظر Firebase تحميل واستضافة أنواع معيّنة من الملفات التنفيذية لأنظمة التشغيل Windows وAndroid وApple من خلال Cloud Storage for Firebase وFirebase Hosting. تهدف هذه السياسة إلى منع إساءة الاستخدام على منصتنا.
سيتم حظر عرض الملفات غير المسموح بها واستضافتها وتحميلها في جميع مشاريع Spark التي تم إنشاؤها في 28 أيلول (سبتمبر) 2023 أو بعد هذا التاريخ. بالنسبة إلى مشاريع Spark الحالية التي تم تحميل الملفات فيها قبل هذا التاريخ، سيظل بإمكانك تحميل هذه الملفات واستضافتها.
ينطبق هذا القيد على مشاريع خطة Spark. لا تتأثر المشاريع التي تستخدم خطة الدفع حسب الاستخدام (Blaze).
لا يمكن استضافة أنواع الملفات التالية على Firebase Hosting وCloud Storage for Firebase:
- ملفات Windows التي تحمل الامتدادات
.exe
و.dll
و.bat
- ملفات Android ذات الامتداد
.apk
- ملفات نظام التشغيل Apple ذات الامتداد
.ipa
ما هي الإجراءات التي عليّ اتّخاذها؟
إذا كنت لا تزال تريد استضافة أنواع الملفات هذه بعد 28 سبتمبر 2023، عليك اتّباع الخطوات التالية:
- بالنسبة إلى Hosting، عليك الترقية إلى خطة Blaze قبل أن تتمكّن من نشر أنواع الملفات هذه إلى Firebase Hosting باستخدام الأمر
firebase deploy
. - بالنسبة إلى Storage، يمكنك الترقية إلى خطة Blaze لتحميل أنواع الملفات هذه إلى الحزمة التي تختارها باستخدام واجهة سطر الأوامر (CLI) في GCS أو وحدة تحكّم Firebase أو وحدة تحكّم Google Cloud.
استخدِم أدوات Firebase لإدارة موارد Firebase Hosting وCloud Storage.
- لإدارة الموارد في Firebase Hosting، استخدِم وحدة تحكّم Firebase لحذف الإصدارات وفقًا لهذا الدليل.
- لإدارة الموارد في Cloud Storage، انتقِل إلى صفحة منتج Storage في مشروعك.
- في علامة التبويب الملفات، ابحث عن الملفات غير المسموح بها لحذفها في التسلسل الهرمي للمجلدات، ثم اختَرها باستخدام مربّع الاختيار بجانب أسماء الملفات على الجانب الأيمن من اللوحة.
- انقر على حذف، وأكِّد أنّه تم حذف الملفات.
يُرجى الرجوع إلى مستنداتنا للحصول على معلومات إضافية حول إدارة موارد الاستضافة باستخدام أدوات Firebase و مجموعات بيانات Cloud Storage for Firebase باستخدام مكتبات البرامج.
Cloud Storage for Firebase: لماذا ألاحظ زيادة غير متوقّعة في عمليات التحميل والتنزيل؟
في السابق، لم يتم احتساب طلبات التنزيل والتحميل إلى واجهة برمجة التطبيقات Cloud Storage for Firebase بشكل صحيح. لقد اتّخذنا خطوات لحلّ هذه المشكلة، اعتبارًا من 15 أيلول (سبتمبر) 2023.
بالنسبة إلى مستخدمي Blaze، سيبدأ احتساب عمليات التحميل والتنزيل ضمن فاتورتك الشهرية. بالنسبة إلى مستخدمي Spark، سيتم احتسابهم ضمن الحد الأقصى الشهري المجاني.
ننصحك بمراقبة صفحة "الاستخدام" لمعرفة أي زيادات قد يتم احتسابها ضمن الحدود القصوى.
Cloud Storage for Firebase: لماذا تظهر لي أرقام تعريف جديدة لحسابات الخدمة مرتبطة بمشاريعي على Firebase التي تستخدم Cloud Storage for Firebase؟
تستخدم Firebase حسابات الخدمة لتشغيل الخدمات وإدارتها بدون مشاركة بيانات اعتماد المستخدمين. عند إنشاء مشروع على Firebase، قد تلاحظ أنّ عددًا من حسابات الخدمة متوفّرة في مشروعك.
يتم تحديد نطاق حساب الخدمة الذي تستخدمه Cloud Storage for Firebase ليقتصر على مشروعك، ويُطلق عليه الاسم service-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com
.
إذا كنت قد استخدمت Cloud Storage for Firebase قبل 19 أيلول (سبتمبر) 2022، قد يظهر لك حساب خدمة إضافي في حِزم Cloud Storage المرتبطة سابقًا باسم firebase-storage@system.gserviceaccount.com
. اعتبارًا من 19 سبتمبر 2022، لن يعود حساب الخدمة هذا متاحًا.
يمكنك الاطّلاع على جميع حسابات الخدمة المرتبطة بمشروعك في Firebase Console، وذلك في علامة التبويب "حسابات الخدمة".
إضافة حساب الخدمة الجديد
إذا سبق لك إزالة حساب الخدمة أو إذا لم يكن حساب الخدمة متوفّرًا في مشروعك، يمكنك اتّخاذ أحد الإجراءَين التاليَين لإضافة الحساب.
- (يُنصح به) تلقائي: استخدِم نقطة نهاية REST AddFirebase لإعادة استيراد الحزمة إلى Firebase. ما عليك سوى استدعاء نقطة النهاية هذه مرة واحدة، وليس مرة واحدة لكل مجموعة مرتبطة.
-
يدويًا: اتّبِع الخطوات الواردة في إنشاء حسابات الخدمة وإدارتها.
باتّباع هذا الدليل، أضِف حساب خدمة يتضمّن دور IAM
Cloud Storage for Firebase Service Agent
واسم حساب الخدمةservice-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com
.
إزالة حساب الخدمة الجديد
ننصحك بشدة بعدم إزالة حساب الخدمة لأنّ ذلك قد يمنع تطبيقاتك من الوصول إلى حِزم Cloud Storage. لإزالة حساب الخدمة من مشروعك، اتّبِع التعليمات الواردة في إيقاف حساب خدمة.
أسعار Cloud Storage for Firebase
Cloud Storage for Firebase: ما هي التغييرات التي تم الإعلان عنها في سبتمبر 2024 بشأن متطلبات خطة الأسعار في Cloud Storage؟
انتقِل إلى مستندات Cloud Storage لمعرفة المزيد حول التغييرات في متطلبات خطة الأسعار في Cloud Storage.
كيف يمكنني توقّع المبلغ الذي سيتم تحصيله مني مقابل عمليات التحميل والتنزيل؟
انتقِل إلى صفحة أسعار Firebase واستخدِم حاسبة خطة Blaze. تسرد الآلة الحاسبة جميع أنواع الاستخدام لـ Cloud Storage for Firebase.
استخدِم أشرطة التمرير لإدخال الاستخدام المتوقّع لحزمة التخزين. ستقدّر الآلة الحاسبة فاتورتك الشهرية.
ماذا يحدث إذا تجاوزتُ حدود التحميل أو التنزيل أو التخزين في خطة Spark الخاصة بـ Cloud Storage for Firebase؟
عند تجاوز حدود Cloud Storage في مشروع ضمن خطة Spark، تعتمد النتيجة على نوع الحد الذي تجاوزته:
- في حال تجاوزت الحد الأقصى لغيغابايت المخزّنة، لن تتمكّن من تخزين المزيد من البيانات في هذا المشروع إلا إذا أزلت بعض البيانات المخزّنة أو رقّيت إلى خطة توفّر مساحة تخزين أكبر أو مساحة تخزين غير محدودة.
- في حال تجاوزت الحدّ الأقصى لعدد غيغابايت التي تم تنزيلها، لن يتمكّن تطبيقك من تنزيل المزيد من البيانات حتى اليوم التالي (بدءًا من منتصف الليل بتوقيت المحيط الهادئ في الولايات المتحدة)، ما لم تتم الترقية إلى خطة ذات حدود أقل صرامة أو بدون حدود.
- في حال تجاوزت الحد الأقصى لعمليات التحميل أو التنزيل، لن يتمكّن تطبيقك من تحميل المزيد من البيانات أو تنزيلها حتى اليوم التالي (بدءًا من منتصف الليل بتوقيت المحيط الهادئ في الولايات المتحدة)، إلا إذا تمت الترقية إلى خطة ذات حدود أقل تقييدًا أو بدون حدود.
Crashlytics
يمكنك الانتقال إلى صفحة Crashlytics تحديد المشاكل وحلّها والأسئلة الشائعة للحصول على نصائح مفيدة وإجابات عن المزيد من الأسئلة الشائعة.
Dynamic Links
Dynamic Links: ما هي خطط Firebase المستقبلية بشأن Dynamic Links؟
يُرجى الاطّلاع على Dynamic Links الأسئلة الشائعة.
Dynamic Links: لماذا يصل تطبيق Android إلى كل رابط ديناميكي مرتين؟
تمحو واجهة برمجة التطبيقات getInvitation
الرابط الديناميكي المحفوظ
لمنع الوصول إليه مرتين. احرص على طلب واجهة برمجة التطبيقات هذه مع ضبط المَعلمة autoLaunchDeepLink
على false
في كل أنشطة الروابط لصفحات في التطبيق لإزالتها في حال تم تشغيل النشاط خارج النشاط الرئيسي.
Hosting
Hosting: هل يمكنني تخزين ملفات قابلة للتنفيذ في مشاريع خطة Spark؟
بالنسبة إلى المشاريع التي تستخدم خطة Spark المجانية، تحظر Firebase تحميل واستضافة أنواع معيّنة من الملفات التنفيذية لأنظمة التشغيل Windows وAndroid وApple من خلال Cloud Storage for Firebase وFirebase Hosting. تهدف هذه السياسة إلى منع إساءة الاستخدام على منصتنا.
سيتم حظر عرض الملفات غير المسموح بها واستضافتها وتحميلها في جميع مشاريع Spark التي تم إنشاؤها في 28 أيلول (سبتمبر) 2023 أو بعد هذا التاريخ. بالنسبة إلى مشاريع Spark الحالية التي تم تحميل الملفات فيها قبل هذا التاريخ، سيظل بإمكانك تحميل هذه الملفات واستضافتها.
ينطبق هذا القيد على مشاريع خطة Spark. لا تتأثر المشاريع التي تستخدم خطة الدفع حسب الاستخدام (Blaze).
لا يمكن استضافة أنواع الملفات التالية على Firebase Hosting وCloud Storage for Firebase:
- ملفات Windows التي تحمل الامتدادات
.exe
و.dll
و.bat
- ملفات Android ذات الامتداد
.apk
- ملفات نظام التشغيل Apple ذات الامتداد
.ipa
ما هي الإجراءات التي عليّ اتّخاذها؟
إذا كنت لا تزال تريد استضافة أنواع الملفات هذه بعد 28 سبتمبر 2023، عليك اتّباع الخطوات التالية:
- بالنسبة إلى Hosting، عليك الترقية إلى خطة Blaze قبل أن تتمكّن من نشر أنواع الملفات هذه إلى Firebase Hosting باستخدام الأمر
firebase deploy
. - بالنسبة إلى Storage، يمكنك الترقية إلى خطة Blaze لتحميل أنواع الملفات هذه إلى الحزمة التي تختارها باستخدام واجهة سطر الأوامر (CLI) في GCS أو وحدة تحكّم Firebase أو وحدة تحكّم Google Cloud.
استخدِم أدوات Firebase لإدارة موارد Firebase Hosting وCloud Storage.
- لإدارة الموارد في Firebase Hosting، استخدِم وحدة تحكّم Firebase لحذف الإصدارات وفقًا لهذا الدليل.
- لإدارة الموارد في Cloud Storage، انتقِل إلى صفحة منتج Storage في مشروعك.
- في علامة التبويب الملفات، ابحث عن الملفات غير المسموح بها لحذفها في التسلسل الهرمي للمجلدات، ثم اختَرها باستخدام مربّع الاختيار بجانب أسماء الملفات على الجانب الأيمن من اللوحة.
- انقر على حذف، وأكِّد أنّه تم حذف الملفات.
يُرجى الرجوع إلى مستنداتنا للحصول على معلومات إضافية حول إدارة موارد الاستضافة باستخدام أدوات Firebase و مجموعات بيانات Cloud Storage for Firebase باستخدام مكتبات البرامج.
Hosting: لماذا يعرض جدول سجلّ إصدارات Hosting في وحدة تحكّم Firebase عدد ملفات أكبر من عدد الملفات المتوفرة في مشروعي المحلي؟
يضيف Firebase تلقائيًا ملفات إضافية تحتوي على بيانات وصفية حول الموقع الإلكتروني Hosting، ويتم تضمين هذه الملفات في إجمالي عدد الملفات للإصدار.
Hosting: ما هو الحد الأقصى لحجم الملف الذي يمكنني نشره على Firebase Hosting؟
يفرض Hosting حدًا أقصى لحجم الملفات الفردية يبلغ 2 غيغابايت.
ننصحك بتخزين الملفات الأكبر حجمًا باستخدام Cloud Storage، الذي يوفّر حدًا أقصى للحجم ضمن نطاق التيرابايت للكائنات الفردية.
Hosting: كم عدد المواقع الإلكترونية Hosting التي يمكنني الحصول عليها لكل مشروع على Firebase؟
تتيح ميزة Firebase Hosting المتعددة المواقع استخدام 36 موقعًا إلكترونيًا كحد أقصى لكل مشروع.
Performance Monitoring
يمكنك الانتقال إلى صفحة Performance Monitoring تحديد المشاكل وحلّها والأسئلة الشائعة للحصول على نصائح مفيدة وإجابات عن المزيد من الأسئلة الشائعة.
Performance Monitoring: كم عدد أنماط عناوين URL المخصّصة التي يمكنني إنشاؤها؟
يمكنك إنشاء ما يصل إلى 400 نمط عنوان URL مخصّص إجمالاً لكل تطبيق، وما يصل إلى 100 نمط عنوان URL مخصّص لكل نطاق لهذا التطبيق.
Performance Monitoring: لماذا لا تظهر لي بيانات الأداء في الوقت الفعلي؟
لعرض بيانات الأداء في الوقت الفعلي، تأكَّد من أنّ تطبيقك يستخدم Performance Monitoring إصدارًا من حزمة SDK متوافقًا مع معالجة البيانات في الوقت الفعلي.
- iOS: الإصدار 7.3.0 أو إصدار أحدث
- tvOS: الإصدار 8.9.0 أو إصدار أحدث
- Android: الإصدار 19.0.10 أو إصدار أحدث (أو الإصدار 26.1.0 أو إصدار أحدث من Firebase Android BoM)
- الويب: الإصدار 7.14.0 أو إصدار أحدث
يُرجى العِلم أنّنا ننصح دائمًا باستخدام أحدث إصدار من حزمة تطوير البرامج (SDK)، ولكن أي إصدار مُدرَج أعلاه سيتيح لخدمة Performance Monitoring معالجة بياناتك في الوقت الفعلي تقريبًا.
Realtime Database
Realtime Database: ما المقصود بـ "اتصال قاعدة بيانات متزامن"؟
ويعادل الاتصال المتزامن جهازًا جوّالاً واحدًا أو علامة تبويب متصفّح أو تطبيق خادم متصل بقاعدة البيانات. تفرض Firebase حدودًا صارمة على عدد الاتصالات المتزامنة بقاعدة بيانات تطبيقك. تم وضع هذه الحدود لحماية كل من Firebase والمستخدمين من إساءة الاستخدام.
الحد الأقصى لخطة Spark هو 100 ولا يمكن زيادته. تتضمّن خطتا Flame وBlaze حدًا أقصى يبلغ 200,000 اتصال متزامن لكل قاعدة بيانات.
لا يشبه هذا الحدّ إجمالي عدد مستخدمي تطبيقك، لأنّ المستخدمين لا يتصلون جميعًا في الوقت نفسه. إذا كنت بحاجة إلى أكثر من 200,000 اتصال متزامن، يُرجى قراءة مقالة التوسّع باستخدام قواعد بيانات متعددة.
Realtime Database: ما هي قيود التوسّع في Realtime Database؟
يفرض كل مثيل من Realtime Database حدودًا على عدد عمليات الكتابة في الثانية. بالنسبة إلى عمليات الكتابة الصغيرة، يبلغ هذا الحدّ 1, 000 عملية كتابة في الثانية تقريبًا. إذا كنت على وشك بلوغ هذا الحدّ الأقصى، يمكن أن يساعدك تجميع العمليات باستخدام تعديلات متعددة المسارات في تحقيق معدل نقل بيانات أعلى.
بالإضافة إلى ذلك، لكل نسخة من قاعدة البيانات حد أقصى لعدد اتصالات قاعدة البيانات المتزامنة. تكون الحدود التلقائية كبيرة بما يكفي لمعظم التطبيقات. إذا كنت بصدد إنشاء تطبيق يتطلّب توسيع نطاق إضافيًا، قد تحتاج إلى تقسيم تطبيقك إلى عدة مثيلات من قواعد البيانات لتوسيع نطاق إضافي. يمكنك أيضًا استخدام Cloud Firestore كقاعدة بيانات بديلة.
Realtime Database: ماذا يمكنني أن أفعل إذا تجاوزت حدود استخدام Realtime Database؟
إذا تلقّيت تنبيهًا أو إشعارًا عبر البريد الإلكتروني في Firebase يفيد بأنّك تجاوزت حدود استخدام Realtime Database، يمكنك معالجة المشكلة استنادًا إلى حدّ الاستخدام الذي تجاوزته. للاطّلاع على استخدامك لـ Realtime Database، انتقِل إلى لوحة بيانات Realtime Database الاستخدام في وحدة تحكّم Firebase.
إذا تجاوزت الحدّ الأقصى للتنزيل، يمكنك ترقية خطة أسعار Firebase أو الانتظار إلى أن تتم إعادة ضبط الحدّ الأقصى للتنزيل في بداية دورة الفوترة التالية. لتقليل عدد عمليات التنزيل، جرِّب الخطوات التالية:
- أضِف طلبات بحث للحدّ من البيانات التي تعرضها عمليات الاستماع.
- البحث عن طلبات البحث غير المفهرسة
- استخدِم أدوات معالجة تستقبل فقط التعديلات على البيانات، مثل
on()
بدلاً منonce()
. - استخدِم قواعد الأمان لحظر عمليات التنزيل غير المصرّح بها.
إذا تجاوزت الحد الأقصى المسموح به لمساحة التخزين، عليك ترقية خطة الأسعار لتجنُّب انقطاع الخدمة. لتقليل حجم البيانات في قاعدة البيانات، جرِّب الخطوات التالية:
- تنفيذ مهام التنظيف الدورية
- قلِّل أي بيانات مكرّرة في قاعدة البيانات.
يُرجى العِلم أنّ ظهور أي عمليات حذف للبيانات في مساحة التخزين المخصّصة لك قد يستغرق بعض الوقت.
إذا تجاوزت الحدّ الأقصى لعدد اتصالات قواعد البيانات المتزامنة، عليك ترقية خطتك لتجنُّب أي انقطاع في الخدمة. لإدارة عمليات الربط المتزامنة بقاعدة البيانات، جرِّب الربط من خلال المستخدمين عبر واجهة REST API إذا لم يكونوا بحاجة إلى اتصال في الوقت الفعلي.
Realtime Database: ماذا يحدث إذا تجاوزت حدود مساحة التخزين أو التنزيل في خطة Spark لـ Realtime Database؟
ولتقديم سعر يمكن توقّعه، يتم وضع حد أقصى للموارد المتاحة لك في خطط Spark. وهذا يعني أنّه عند تجاوز أي حد من حدود الخطة في أي شهر، سيتم إيقاف تطبيقك لمنع أي استخدام إضافي للموارد أو تحصيل رسوم إضافية.
Realtime Database: ماذا يحدث إذا تجاوزت حدود الاتصال المتزامن في خطة Spark لـ Realtime Database؟
عندما يصل تطبيقك إلى الحد الأقصى للاستخدام المتزامن في خطة Spark، سيتم رفض أي اتصالات لاحقة إلى أن يتم إغلاق بعض الاتصالات الحالية. سيستمر التطبيق في العمل لدى المستخدمين الذين تم ربط حساباتهم.
Realtime Database: ما هي النسخ الاحتياطية التلقائية؟ هل تقدّم نُسخًا احتياطية كل ساعة لـ Realtime Database؟
عمليات النسخ الاحتياطي المبرمَجة هي ميزة متقدّمة للعملاء المشتركين في خطة أسعار Blaze، وتعمل على إجراء نسخ احتياطي لبيانات Firebase Realtime Database مرة واحدة في اليوم وتحميلها إلى Google Cloud Storage.
لا نوفّر نُسخًا احتياطية كل ساعة.
Realtime Database: لماذا كان معدّل نقل البيانات الذي تم تسجيله في Realtime Database أقل من المتوسط بين سبتمبر 2016 ومارس 2017؟
بالنسبة إلى عمليات احتساب معدل نقل البيانات، نضمِّن عادةً النفقات العامة لترميز SSL (استنادًا إلى الطبقة 5 من نموذج OSI). ومع ذلك، في أيلول (سبتمبر) 2016، رصدنا خطأً تسبّب في تجاهل تقاريرنا عن معدل نقل البيانات للوقت الإضافي اللازم للتشفير. وقد أدّى ذلك إلى انخفاض مصطنع في معدل نقل البيانات والفواتير في حسابك لعدّة أشهر.
لقد أصلحنا الخطأ في أواخر آذار (مارس) 2017، وأعدنا إعداد التقارير عن النطاق الترددي والفوترة إلى مستوياتهما العادية.
Remote Config
Remote Config: لماذا لا تؤدي القيم التي تم جلبها إلى تغيير سلوك تطبيقي ومظهره؟
ما لم تسترجع القيم باستخدام
fetchAndActivate()
،
سيتم تخزين القيم محليًا ولكن لن يتم تفعيلها. لتفعيل القيم التي تم استرجاعها كي تصبح سارية، استدعِ الدالة activate
. يتيح لك هذا التصميم التحكّم في وقت تغيير سلوك تطبيقك ومظهره، لأنّه يمكنك اختيار وقت استدعاء activate
. بعد استدعاء
activate
، يحدّد رمز مصدر تطبيقك وقت استخدام قيم المَعلمات المعدَّلة.
على سبيل المثال، يمكنك جلب القيم ثم تفعيلها في المرة التالية التي يبدأ فيها المستخدم تطبيقك، ما يغنيك عن تأخير بدء تشغيل التطبيق أثناء انتظار تطبيقك للقيم التي تم جلبها من الخدمة. بعد ذلك، تحدث تغييرات في سلوك تطبيقك ومظهره عندما يستخدم تطبيقك قيم المَعلمات المعدَّلة.
لمزيد من المعلومات حول واجهة برمجة التطبيقات الخاصة بميزة "الإعداد عن بُعد" ونموذج الاستخدام، اطّلِع على نظرة عامة حول واجهة برمجة التطبيقات الخاصة بميزة "الإعداد عن بُعد".
Remote Config: أُجري الكثير من طلبات الجلب أثناء تطوير تطبيقي. لماذا لا يحصل تطبيقي دائمًا على أحدث القيم من الخدمة عند إرسال طلبات الجلب؟
أثناء تطوير التطبيق، قد تحتاج إلى جلب الإعدادات وتفعيلها بشكل متكرر جدًا (عدة مرات في الساعة) لتتمكّن من تكرار عملية التطوير والاختبار بسرعة. ولتسهيل عملية التكرار السريع في مشروع يضم ما يصل إلى 10 مطوّرين، يمكنك ضبط عنصر FirebaseRemoteConfigSettings
مؤقتًا بحد أدنى منخفض لفاصل الجلب (setMinimumFetchIntervalInSeconds
) في تطبيقك.
Remote Config: ما هي سرعة استجابة خدمة Remote Config لطلبات جلب البيانات التي يرسلها تطبيقي؟
تتلقّى الأجهزة عادةً القيم التي تم جلبها في أقل من ثانية، وفي كثير من الأحيان، تتلقّى القيم التي تم جلبها في غضون أجزاء من الثانية. تتعامل خدمة Remote Config مع طلبات الجلب في غضون أجزاء من الثانية، ولكن يعتمد الوقت اللازم لإكمال طلب الجلب على سرعة شبكة الجهاز ووقت استجابة اتصال الشبكة الذي يستخدمه الجهاز.
إذا كان هدفك هو تطبيق القيم التي تم جلبها في تطبيقك في أقرب وقت ممكن، ولكن بدون إحداث تجربة مستخدم غير سارة، ننصحك بإضافة طلبات إلى fetchAndActivate
في كل مرة يحدّث فيها تطبيقك الشاشة بالكامل.
Test Lab
يُرجى الانتقال إلى صفحة تحديد المشاكل وحلّها في Test Lab للحصول على نصائح مفيدة وإجابات عن الأسئلة الشائعة.
مساحة تخزين تصنيف المستخدمين في Firebase
ما هي خدمة "تخزين شرائح مستخدمي Firebase"؟
يخزّن Firebase User Segmentation Storage Firebase معرّفات التثبيت والسمات والشرائح ذات الصلة، بالإضافة إلى قوائم المستخدِمين التي أنشأتها، وذلك لتوفير معلومات الاستهداف لخدمات Firebase الأخرى التي تستخدمها، مثل تخصيص Crashlytics وFCM وRemote Config وغير ذلك.