مشروع Firebase هو الكيان ذو المستوى الأعلى لـ Firebase. في المشروع، يمكنك تسجيل تطبيقات Apple أو Android أو الويب الخاصة بك. بعد تسجيل تطبيقاتك في Firebase، يمكنك إضافة حزم Firebase SDK الخاصة بالمنتج إلى تطبيقك، مثل 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 (بما في ذلك مشاريع Firebase). يتيح هذا التسلسل الهرمي تنظيمًا أفضل وإدارة الوصول والمراجعة لمشروعات Google Cloud وFirebase. لمزيد من المعلومات، راجع إنشاء وإدارة المنظمات .
كيف أقوم بإضافة Firebase إلى مشروع Google Cloud موجود؟
لماذا يحمل مشروع Google Cloud الخاص بي علامة firebase:enabled ؟
في صفحة التصنيفات الخاصة بمشروعك في وحدة تحكم Google Cloud، قد ترى تصنيفًا لـ firebase:enabled (على وجه التحديد، KeyfirebaseValueenabled ).
أضاف 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
في الرد من تشغيل أمر Firebase CLI firebase projects:list
جرّب خطوات استكشاف الأخطاء وإصلاحها هذه:
أولاً، حاول الوصول إلى مشروعك عن طريق زيارة عنوان URL الخاص بالمشروع مباشرةً. استخدم التنسيق التالي: https://console.firebase.google.com/project/ PROJECT-ID /overview
إذا لم تتمكن من الوصول إلى المشروع أو تلقيت أخطاء في الأذونات، فتحقق مما يلي:
تأكد من تسجيل الدخول إلى Firebase باستخدام نفس حساب Google الذي لديه حق الوصول إلى المشروع. يمكنك تسجيل الدخول والخروج من وحدة تحكم Firebase عبر الصورة الرمزية لحسابك في الزاوية العلوية اليمنى من وحدة التحكم.
تأكد من أن مشروعك يحتوي على التصنيف firebase:enabled في صفحة التصنيفات لمشروعك في وحدة تحكم Google Cloud. يستخدم Firebase وGoogle Cloud هذا التصنيف لإدراج مشاريع Firebase الخاصة بك. إذا كنت لا ترى هذه التسمية ولكن تم تمكين Firebase Management API لمشروعك، فقم بإضافة التسمية يدويًا (على وجه التحديد، KeyfirebaseValueenabled ).
تأكد من تعيين أحد أدوار IAM الأساسية (المالك، المحرر، العارض) أو دور يحتوي على أذونات متعلقة بـ Firebase، على سبيل المثال دور Firebase المحدد مسبقًا . يمكنك عرض دورك (أدوارك) في صفحة IAM الخاصة بوحدة تحكم Google Cloud.
إذا كان مشروعك ينتمي إلى مؤسسة Google Cloud، فقد تحتاج إلى أذونات إضافية لرؤية المشروع مدرجًا في وحدة تحكم Firebase. اتصل بالشخص الذي يدير مؤسسة Google Cloud الخاصة بك ليمنحك الدور المناسب لعرض المشروع، على سبيل المثال دور المتصفح.
إذا لم تمكنك أي من خطوات استكشاف الأخطاء وإصلاحها المذكورة أعلاه من رؤية مشروعك في قائمة مشاريع Firebase، فاتصل بدعم Firebase .
كم عدد المشاريع التي يمكنني الحصول عليها لكل حساب؟
خطة تسعير Spark - تقتصر حصة مشروعك على عدد صغير من المشاريع (عادةً حوالي 5-10).
خطة تسعير Blaze - تزداد حصة مشروعك لكل حساب Cloud Billing بشكل كبير طالما أن حساب Cloud Billing الخاص بك في وضع جيد.
نادرًا ما يشكل الحد الأقصى لحصة المشروع مصدر قلق لمعظم المطورين، ولكن إذا لزم الأمر، يمكنك طلب زيادة في حصة مشروعك .
لاحظ أن الحذف الكامل للمشروع يتطلب 30 يومًا ويتم احتسابه ضمن حصتك حتى يتم حذفه بالكامل.
ما عدد تطبيقات Firebase التي يمكنني الحصول عليها في مشروع Firebase؟
مشروع Firebase عبارة عن حاوية لتطبيقات Firebase عبر Apple وAndroid والويب. يقيد Firebase العدد الإجمالي لتطبيقات Firebase ضمن مشروع Firebase إلى 30.
بعد هذا الرقم، يبدأ الأداء في التدهور (خاصة بالنسبة لبرنامج 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 المطلوب لعرض معلومات التطبيق، بما في ذلك معرف التطبيق الخاص به.
أي من أدوار Firebase التالية: المالك أو مسؤول Firebase و
أي من مستويات الوصول إلى Google Play التالية: مالك الحساب أو المشرف
لربط تطبيق AdMob ، يجب أن تكون مالكًا لمشروع Firebase ومشرفًا في AdMob.
لربط حسابك في AdWords ، يجب أن تكون مالكًا لمشروع Firebase ومسؤولًا في AdWords.
لربط مشروع BigQuery الخاص بك، يجب أن تكون مالك مشروع Firebase.
ما هي الإشعارات مفتوحة المصدر التي يجب أن أدرجها في تطبيقي؟
على منصات Apple، تحتوي حجرة Firebase على ملف إشعارات يتضمن الإدخالات ذات الصلة. يحتوي Firebase Android SDK على Activity مساعد لعرض معلومات الترخيص.
الأذونات والوصول إلى مشاريع Firebase
كيف أقوم بتعيين دور لأحد أعضاء المشروع، مثل دور المالك؟
لإدارة الدور (الأدوار) المعين لكل عضو في المشروع، يجب أن تكون مالكًا لمشروع Firebase (أو يتم تعيين دور لك بإذن resourcemanager.projects.setIamPolicy ).
فيما يلي الأماكن التي يمكنك من خلالها تعيين الأدوار وإدارتها:
توفر وحدة تحكم Google Cloud مجموعة موسعة من الأدوات لتعيين الأدوار لأعضاء المشروع في صفحة IAM . في وحدة التحكم السحابية، يمكنك أيضًا إنشاء أدوار مخصصة وإدارتها، بالإضافة إلى منح حسابات الخدمة حق الوصول إلى مشروعك.
لاحظ أنه في وحدة تحكم Google Cloud، يُطلق على أعضاء المشروع اسم المديرين .
إذا لم يعد مالك مشروعك قادرًا على أداء مهام المالك (على سبيل المثال، ترك الشخص شركتك) ولا تتم إدارة مشروعك عبر مؤسسة Google Cloud (راجع الفقرة التالية)، فيمكنك الاتصال بدعم Firebase للحصول على تم تعيين مالك مؤقت.
لاحظ أنه إذا كان مشروع Firebase جزءًا من مؤسسة Google Cloud، فقد لا يكون له مالك. إذا لم تتمكن من العثور على مالك لمشروع Firebase الخاص بك، فاتصل بالشخص الذي يدير مؤسسة Google Cloud الخاصة بك لتعيين مالك للمشروع.
كيف يمكنني العثور على مالك مشروع Firebase؟
يمكنك عرض أعضاء المشروع وأدوارهم في الأماكن التالية:
إذا كان لديك حق الوصول إلى المشروع في وحدة تحكم Firebase، فيمكنك عرض قائمة أعضاء المشروع، بما في ذلك المالكين، في صفحة المستخدمين والأذونات في وحدة تحكم Firebase.
إذا لم يكن لديك حق الوصول إلى المشروع في وحدة تحكم Firebase، فتحقق مما إذا كان لديك حق الوصول إلى المشروع في وحدة تحكم Google Cloud. يمكنك عرض قائمة أعضاء المشروع، بما في ذلك المالكين، في صفحة IAM الخاصة بوحدة تحكم 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 من الإصدارات الحديثة من متصفحات سطح المكتب الشائعة مثل Chrome وFirefox وSafari وEdge. متصفحات الجوال غير مدعومة بشكل كامل حاليًا.
يمكنني تحميل وحدة تحكم Firebase، ولكن لماذا لا يمكنني العثور على مشروع Firebase الخاص بي أو الوصول إليه؟
تنطبق هذه الأسئلة الشائعة إذا كنت تواجه أيًا من المشكلات التالية:
تعرض وحدة تحكم Firebase صفحة خطأ تفيد بأن مشروعك قد لا يكون موجودًا أو أنه لا يمكنك الوصول إلى المشروع.
لا تعرض وحدة تحكم Firebase مشروعك حتى عند إدخال معرف المشروع أو اسم المشروع في حقل البحث بوحدة التحكم.
جرّب خطوات استكشاف الأخطاء وإصلاحها هذه:
أولاً، حاول الوصول إلى مشروعك عن طريق زيارة عنوان URL الخاص بالمشروع مباشرةً. استخدم التنسيق التالي: https://console.firebase.google.com/project/ PROJECT-ID /overview
إذا كنت لا تزال غير قادر على الوصول إلى المشروع أو تلقي أخطاء الأذونات، فتحقق مما يلي:
تأكد من تسجيل الدخول إلى Firebase باستخدام نفس حساب Google الذي لديه حق الوصول إلى المشروع. يمكنك تسجيل الدخول والخروج من وحدة تحكم Firebase عبر الصورة الرمزية لحسابك في الزاوية العلوية اليمنى من وحدة التحكم.
تأكد من تعيين أحد أدوار IAM الأساسية (المالك، المحرر، العارض) أو دور يحتوي على أذونات متعلقة بـ Firebase، على سبيل المثال دور Firebase المحدد مسبقًا . يمكنك عرض دورك (أدوارك) في صفحة IAM الخاصة بوحدة تحكم Google Cloud.
إذا كان مشروعك ينتمي إلى مؤسسة Google Cloud، فقد تحتاج إلى أذونات إضافية لرؤية المشروع مدرجًا في وحدة تحكم Firebase. اتصل بالشخص الذي يدير مؤسسة Google Cloud الخاصة بك ليمنحك الدور المناسب لعرض المشروع، على سبيل المثال دور المتصفح.
إذا لم تمكنك أي من خطوات استكشاف الأخطاء وإصلاحها المذكورة أعلاه من العثور على مشروعك أو الوصول إليه، فاتصل بدعم Firebase .
لماذا لا يتم تحميل وحدة تحكم Firebase بالنسبة لي؟
تنطبق هذه الأسئلة الشائعة إذا كنت تواجه أيًا من المشكلات التالية:
لا تنتهي الصفحة في وحدة تحكم Firebase مطلقًا من التحميل.
لا يتم تحميل البيانات الموجودة داخل الصفحة كما هو متوقع.
تتلقى رسائل خطأ في المتصفح عند تحميل وحدة تحكم Firebase.
يمكن لمالك المشروع إضافة أعضاء آخرين إلى المشروع، وإعداد عمليات التكامل (ربط المشروع بخدمات مثل BigQuery أو Slack)، كما يتمتع بحق الوصول الكامل لتحرير المشروع.
يتمتع محرر المشروع بحق الوصول الكامل لتحرير المشروع.
يمتلك عارض المشروع حق الوصول للقراءة فقط للمشروع. لاحظ أن وحدة تحكم Firebase لا تقوم حاليًا بإخفاء/تعطيل عناصر تحكم واجهة المستخدم الخاصة بالتحرير من عارضي المشروع، ولكن ستفشل هذه العمليات بالنسبة لأعضاء المشروع الذين تم تعيين دور العارض لهم.
يدعم Firebase أيضًا:
أدوار Firebase المحددة مسبقًا - أدوار منسقة خاصة بـ Firebase تتيح التحكم في الوصول بشكل أكثر دقة من الأدوار الأساسية للمالك والمحرر والعارض.
الأدوار المخصصة — أدوار IAM مخصصة بالكامل تقوم بإنشائها لتخصيص مجموعة من الأذونات التي تلبي المتطلبات المحددة لمؤسستك.
التسعير
ما هي المنتجات التي يتم دفعها؟ والتي هي بلا تكلفة؟
منتجات البنية التحتية المدفوعة لـ Firebase هي قاعدة بيانات Realtime، والتخزين السحابي لـ Firebase، والوظائف السحابية، والاستضافة، ومختبر الاختبار، ومصادقة الهاتف. نحن نقدم طبقة مجانية لجميع هذه الميزات.
يحتوي Firebase أيضًا على العديد من المنتجات المجانية: التحليلات، والمراسلة السحابية، وملحن الإشعارات، والتكوين عن بعد، وفهرسة التطبيقات، والارتباطات الديناميكية، وإعداد تقارير الأعطال. يخضع استخدام هذه المنتجات فقط لسياسات التحكم في حركة المرور الخاصة بالمنتج (على سبيل المثال، الحصص والوصول العادل ووسائل حماية الخدمة الأخرى) في جميع الخطط، بما في ذلك خطة Spark المجانية الخاصة بنا. بالإضافة إلى ذلك، فإن جميع ميزات المصادقة بخلاف مصادقة الهاتف مجانية.
هل يقدم Firebase أرصدة تجريبية مجانية للمنتجات المدفوعة؟
يمكن استخدام خدمات Firebase المدفوعة ضمن الإصدار التجريبي المجاني من Google Cloud . يمكن لمستخدمي Google Cloud وFirebase الجدد الاستفادة من فترة تجريبية مدتها 90 يومًا تتضمن 300 دولار أمريكي من أرصدة الفوترة السحابية المجانية لاستكشاف وتقييم منتجات وخدمات Google Cloud وFirebase.
خلال فترة الإصدار التجريبي المجاني من Google Cloud، سيتم تزويدك بحساب فوترة Cloud تجريبي مجاني. سيكون أي مشروع Firebase يستخدم حساب الفوترة هذا مدرجًا في خطة تسعير Blaze خلال الفترة التجريبية المجانية.
لا تقلق، فإن إعداد حساب الفوترة السحابية التجريبي المجاني هذا لا يمكننا من تحصيل الرسوم منك. لن يتم تحصيل رسوم منك إلا إذا قمت بتمكين الفوترة بشكل صريح عن طريق ترقية حساب الفوترة السحابية للتجربة المجانية إلى حساب مدفوع. يمكنك الترقية إلى حساب مدفوع في أي وقت أثناء الفترة التجريبية. بعد الترقية، لا يزال بإمكانك استخدام أي أرصدة متبقية (خلال فترة 90 يومًا).
بمجرد انتهاء الفترة التجريبية المجانية، ستحتاج إما إلى الرجوع إلى إصدار سابق من مشروعك إلى خطة تسعير Spark أو إعداد خطة تسعير Blaze في وحدة تحكم Firebase لمواصلة استخدام مشروع Firebase الخاص بك.
تعد خطة Spark الخاصة بنا مكانًا رائعًا لتطوير تطبيقك دون أي تكلفة. يمكنك الحصول على جميع ميزات Firebase المجانية (Analytics، ومؤلف الإشعارات، وCrashlytics، وما إلى ذلك) وكميات كبيرة من ميزات البنية التحتية المدفوعة لدينا. ومع ذلك، إذا تجاوزت موارد خطة Spark الخاصة بك في شهر تقويمي واحد، فسيتم إيقاف تطبيقك لبقية ذلك الشهر. بالإضافة إلى ذلك، لا تتوفر ميزات Google Cloud عند استخدام خطة Spark.
خطة التسعير الحريق
تم تصميم خطة Blaze الخاصة بنا لتطبيقات الإنتاج. تسمح لك خطة Blaze أيضًا بتوسيع تطبيقك بميزات Google Cloud المدفوعة. أنت تدفع فقط مقابل الموارد التي تستهلكها، مما يسمح لك بالتوسع حسب الطلب. نحن نسعى جاهدين لجعل أسعار خطة Blaze الخاصة بنا تنافسية مع موفري الخدمات السحابية الرائدين في الصناعة.
كيف يمكنني مراقبة استخدامي وفواتيرتي؟
يمكنك تتبع استخدامك لموارد المشروع في وحدة تحكم Firebase على أي من لوحات المعلومات التالية:
في يناير 2020، تمت إزالة خطة تسعير Flame (25 دولارًا شهريًا من الحصة الإضافية) كخيار لعمليات الاشتراك الجديدة. تم منح مستخدمي الخطة الحاليين فترة سماح لترحيل مشاريعهم من خطة Flame. في فبراير 2022، تم تخفيض المشاريع المتبقية في خطة تسعير Flame إلى خطة تسعير Spark. وفقاً لذلك،
لم يعد بإمكان مشاريع خطة Spark and Blaze الحالية وأي مشاريع جديدة التبديل إلى خطة Flame أو الاشتراك فيها.
إذا قمت بنقل مشروع خطة Flame موجود إلى خطة تسعير مختلفة، فلن يتمكن المشروع من العودة إلى خطة Flame.
يمكن ترقية المشاريع التي تم تخفيض رتبتها إلى خطة Spark إلى خطة Blaze لاستئناف الخدمات الإضافية المدفوعة.
هل تريد التعرف على خطط التسعير الأخرى التي تقدمها Firebase؟ تفضل بزيارة صفحة تسعير Firebase الخاصة بنا! إذا كنت ترغب في بدء نقل أي مشاريع حالية إلى خطة تسعير أخرى، فيمكنك القيام بذلك في وحدة تحكم Firebase لمشروعك.
أسئلة متكررة إضافية حول التقاعد في خطة Flame
لدي مشروع أو عملية أو نموذج عمل يعتمد على تكلفة Firebase ثابتة. ماذا علي أن أفعل؟
هل يمكنني منحي وصولًا خاصًا لإنشاء مشاريع خطة Flame جديدة؟
لا، لا يوفر Firebase وصولاً خاصًا للمشاريع للتبديل إلى خطة Flame أو الاشتراك فيها.
لقد قمت بتغيير مشروع خطة Flame الخاصة بي إلى خطة تسعير مختلفة. كيف يمكنني تغييره مرة أخرى؟
لم يعد التبديل إلى خطة Flame ممكنًا. للوصول إلى الخدمات التي تقدمها خطة Flame، تأكد من أنك تستخدم خطة تسعير Blaze، وفكر في إعداد تنبيهات الميزانية لمشروعك.
تم تحويل مشروعي تلقائيًا إلى خطة تسعير مختلفة كجزء من إيقاف خطة Flame. ماذا علي أن أفعل؟
إذا كان مشروعك يتطلب حصة إضافية تتجاوز ما توفره خطة Spark، فستحتاج إلى ترقية مشروعك إلى خطة تسعير Blaze.
لماذا تم إيقاف خطة Flame؟
على مر السنين، شهدنا انخفاضًا في استخدام خطة Flame، ومعظم المشاريع التي تستخدم الخطة لا تستهلك قيمتها الكاملة. لا يعد الحفاظ على خطة التسعير هذه فعالاً من حيث التكلفة بشكل عام، ونشعر أنه يمكننا خدمة الجميع بشكل أفضل إذا تم توجيه الموارد إلى مبادرات Firebase الأخرى.
كيف يختلف الاستخدام بدون تكلفة في خطة Blaze عن الاستخدام بدون تكلفة في خطة Spark؟
يتم حساب الاستخدام بدون تكلفة في خطة Blaze يوميًا. تختلف حدود الاستخدام أيضًا عن خطة Spark للوظائف السحابية ومصادقة الهاتف ومعمل الاختبار.
بالنسبة لوظائف السحابة، يتم حساب الاستخدام بدون تكلفة في خطة Blaze على مستوى حساب الفوترة السحابية، وليس على مستوى المشروع وله الحدود التالية:
2 مليون دعوة/شهر
400 كيلو جيجا بايت في الثانية/الشهر
200 ألف وحدة المعالجة المركزية في الثانية/الشهر
5 جيجا بايت من خروج الشبكات / الشهر
بالنسبة لمصادقة الهاتف، يتم حساب الاستخدام المجاني لخطة Blaze شهريًا.
بالنسبة إلى Test Lab، فإن الاستخدام بدون تكلفة في خطة Blaze له الحدود التالية:
30 دقيقة على الأجهزة الفعلية/اليوم
60 دقيقة على الأجهزة الافتراضية/اليوم
هل تتم إعادة تعيين حصة الاستخدام بدون تكلفة عندما أقوم بالتغيير من خطة Spark إلى خطة Blaze؟
يتم تضمين الاستخدام بدون تكلفة من خطة Spark في خطة Blaze. لا تتم إعادة ضبط الاستخدام بدون تكلفة عند الانتقال إلى خطة Blaze.
ما هو "الاتصال المتزامن بقاعدة البيانات"؟
يعادل الاتصال المتزامن جهازًا محمولاً واحدًا أو علامة تبويب متصفح أو تطبيق خادم متصل بقاعدة البيانات. يفرض Firebase حدودًا صارمة على عدد الاتصالات المتزامنة بقاعدة بيانات تطبيقك. تم وضع هذه الحدود لحماية كل من Firebase ومستخدمينا من إساءة الاستخدام.
الحد الأقصى لخطة Spark هو 100 ولا يمكن رفعه. تتضمن خطط Flame وBlaze حدًا يبلغ 200000 اتصال متزامن لكل قاعدة بيانات.
هذا الحد لا يماثل إجمالي عدد مستخدمي تطبيقك، لأن المستخدمين لا يتصلون جميعًا في وقت واحد. إذا كنت بحاجة إلى أكثر من 200000 اتصال متزامن، فيرجى قراءة مقياس مع قواعد بيانات متعددة .
ماذا يحدث إذا تجاوزت حدود تخزين خطة Spark أو حدود التنزيل لقاعدة بيانات Realtime؟
لتزويدك بسعر يمكن التنبؤ به، تم وضع حد أقصى للموارد المتاحة لك في خطط Spark. وهذا يعني أنه عند تجاوز أي حد للخطة في أي شهر، سيتم إيقاف تشغيل تطبيقك لمنع أي استخدام إضافي للموارد ورسوم إضافية.
ماذا يحدث إذا تجاوزت حدود الاتصال المتزامن لخطة Spark لقاعدة بيانات Realtime؟
عندما يصل تطبيقك إلى حد التزامن الخاص به في خطة Spark، سيتم رفض أي اتصالات لاحقة حتى يتم إغلاق بعض الاتصالات الحالية. سيستمر التطبيق في العمل للمستخدمين المتصلين.
كيف يعمل تكامل 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 لمزيد من التفاصيل.
ماذا يحدث لمشروع Firebase الخاص بي إذا قمت بإضافة أو إزالة حسابات الفوترة لهذا المشروع في وحدة تحكم Google Cloud؟
إذا تمت إضافة حساب Cloud Billing إلى مشروع في Google Cloud Console، فستتم ترقية المشروع نفسه تلقائيًا إلى خطة Firebase Blaze إذا كان هذا المشروع مدرجًا حاليًا في خطة Spark.
في المقابل، إذا تمت إزالة حساب فوترة Cloud نشط حالي من مشروع في وحدة تحكم Google Cloud، فسيتم إرجاع هذا المشروع إلى خطة Firebase Spark.
هل يمكنني الترقية أو الرجوع إلى إصدار سابق أو الإلغاء في أي وقت؟
نعم، يمكنك الترقية أو الرجوع إلى إصدار سابق أو الإلغاء في أي وقت. لاحظ أننا لا نقدم مبالغ مستردة بشكل تناسبي لتخفيضات التصنيف أو الإلغاءات. وهذا يعني أنه إذا قمت بالرجوع إلى إصدار سابق أو الإلغاء قبل نهاية فترة الفاتورة الخاصة بك، فستظل تدفع ثمن بقية الشهر.
ما نوع الدعم الذي سأتلقاه؟
تأتي جميع تطبيقات Firebase، بما في ذلك تلك التي تستخدم خططًا مجانية، مع دعم عبر البريد الإلكتروني من موظفي Firebase خلال ساعات العمل في الولايات المتحدة والمحيط الهادئ. تتمتع جميع الحسابات بدعم غير محدود للمشكلات المتعلقة بالفواتير، والمشكلات المتعلقة بالحساب، والأسئلة الفنية (استكشاف الأخطاء وإصلاحها)، وتقارير الحوادث.
هل يمكنني تحديد الاستخدام في خطة Blaze؟
لا، لا يمكنك حاليًا تحديد استخدام خطة Blaze الخاصة بك. نحن نقوم بتقييم الخيارات لدعم الحدود القصوى لاستخدام خطة Blaze.
يمكن لمستخدمي Blaze تحديد ميزانية لمشروعهم أو حسابهم، وتلقي تنبيهات عندما يقترب إنفاقهم من تلك الحدود. تعرف على كيفية إعداد تنبيهات الميزانية .
ما هي النسخ الاحتياطية الآلية؟ هل تقدمون نسخًا احتياطية كل ساعة؟
تعد النسخ الاحتياطية التلقائية ميزة متقدمة للعملاء في خطة تسعير Blaze الخاصة بنا والتي تقوم بعمل نسخة احتياطية لبيانات Firebase Realtime Database الخاصة بك مرة واحدة يوميًا وتحميلها إلى Google Cloud Storage .
نحن لا نقدم النسخ الاحتياطية كل ساعة.
هل تقدمون خصومات مفتوحة المصدر أو غير ربحية أو تعليمية؟
يمكن استخدام خطة Spark الخاصة بنا من قبل أي نوع من الأفراد أو المؤسسات، بما في ذلك المنظمات غير الربحية والمدارس والمشاريع مفتوحة المصدر. وبما أن هذه الخطط تتضمن بالفعل حصصًا سخية، فإننا لا نقدم أي خصومات أو خطط خاصة للمشاريع مفتوحة المصدر أو غير الربحية أو التعليمية.
هل تقدمون عقودًا مؤسسية أو تسعيرًا أو دعمًا أو استضافة بنية تحتية مخصصة؟
تعد خطة Blaze الخاصة بنا مناسبة للمؤسسات من جميع الأحجام، كما أن اتفاقية مستوى الخدمة (SLA) الخاصة بنا تلبي أو تتجاوز معايير الصناعة الخاصة بالبنية التحتية السحابية. ومع ذلك، فإننا لا نقدم حاليًا عقودًا مؤسسية أو تسعيرًا أو دعمًا، ولا نقدم استضافة بنية تحتية مخصصة (أي عمليات التثبيت المحلية) لخدمات مثل قاعدة بيانات الوقت الحقيقي الخاصة بنا. نحن نعمل بجد لإضافة بعض هذه الميزات.
هل تقدمون أسعارًا مخصصة؟ أريد فقط الدفع أولاً بأول مقابل ميزة واحدة أو اثنتين.
نحن نقدم أسعارًا مخصصة في خطة Blaze، حيث تدفع فقط مقابل الميزات التي تستخدمها.
كيف تعمل خطط Firebase المدفوعة مع الإعلانات؟ هل توجد أرصدة إعلانية مجانية مع الخطط المدفوعة؟
تعد خطط تسعير Firebase منفصلة عن الإعلانات، لذلك لا توجد أرصدة إعلانية بدون تكلفة. باعتبارك أحد مطوري Firebase، يمكنك "ربط" حساب الإعلانات الخاص بك بـ Firebase لدعم تتبع التحويل.
تتم إدارة جميع الحملات الإعلانية مباشرةً في الإعلانات، كما تتم إدارة فواتير الإعلانات من وحدة تحكم الإعلانات.
تسعير الوظائف السحابية
لماذا أحتاج إلى حساب فوترة لاستخدام Cloud Functions لـ Firebase؟
تعتمد Cloud Functions for Firebase على بعض خدمات Google المدفوعة. تعتمد عمليات نشر الوظائف الجديدة باستخدام Firebase CLI 11.2.0 والإصدارات الأحدث على Cloud Build و Artifact Registry . تستخدم عمليات النشر إلى الإصدارات الأقدم Cloud Build بنفس الطريقة، ولكنها تعتمد على Container Registry و Cloud Storage للتخزين بدلاً من Artifact Registry. سيتم فرض رسوم على استخدام هذه الخدمات بالإضافة إلى الأسعار الحالية.
مساحة تخزين لـ Firebase CLI 11.2.0 والإصدارات الأحدث
يوفر Artifact Registry الحاويات التي تعمل فيها الوظائف. يوفر Artifact Registry أول 500 ميجابايت مجانًا، لذلك قد لا تتحمل عمليات نشر الوظيفة الأولى أي رسوم. وفوق هذا الحد، تتم محاسبة كل جيجابايت إضافية من مساحة التخزين بمبلغ 0.10 دولارًا أمريكيًا شهريًا.
مساحة تخزين لـ Firebase CLI 11.1.x والإصدارات السابقة
هل لا تزال وظائف السحابة في Firebase تتمتع بإمكانية الاستخدام بدون تكلفة؟
نعم. في خطة Blaze، توفر Cloud Functions طبقة مجانية للاستدعاءات وحساب الوقت وحركة المرور على الإنترنت. يتم توفير أول 2,000,000 استدعاء، و400,000 جيجابايت في الثانية، و200,000 وحدة المعالجة المركزية في الثانية، و5 جيجابايت من حركة مرور الخروج عبر الإنترنت مجانًا كل شهر. سيتم محاسبتك فقط مقابل الاستخدام الذي يتجاوز تلك الحدود.
بعد أول 500 ميجابايت من التخزين المجاني، ستتحمل كل عملية نشر رسومًا صغيرة الحجم مقابل مساحة التخزين المستخدمة لحاوية الوظيفة. إذا كانت عملية التطوير الخاصة بك تعتمد على نشر وظائف للاختبار، فيمكنك تقليل التكاليف بشكل أكبر باستخدام Firebase Local Emulator Suite أثناء التطوير.
هل يخطط Firebase لرفع الحصص والحدود للوظائف السحابية لـ Firebase؟
لا. لا توجد خطط لتغيير الحصص باستثناء إزالة الحد الأقصى لوقت البناء؛ بدلاً من تلقي أخطاء أو تحذيرات عند الوصول إلى حصة البناء اليومية البالغة 120 دقيقة، ستتم محاسبتك بموجب شروط خطة تسعير Blaze. راجع الحصص والحدود .
هل يمكنني الحصول على رصيد Google Cloud بقيمة 300 دولار؟
نعم، يمكنك إنشاء حساب Cloud Billing في Google Cloud Console للحصول على رصيد بقيمة 300 دولار، ثم ربط حساب Cloud Billing هذا بمشروع Firebase.
لاحظ أنه إذا قمت بذلك، فسيتعين عليك بعد ذلك إعداد خطة تسعير Blaze في وحدة تحكم Firebase حتى يستمر مشروعك في العمل بعد استنفاد الرصيد البالغ 300 دولار.
أريد متابعة درس تدريبي حول التعليمات البرمجية للتعرف على Firebase. هل يمكنك أن تعطيني حساب فواتير مؤقت؟
لا آسف. يمكنك استخدام محاكي Firebase للتطوير دون الحاجة إلى حساب Cloud Billing. وبدلاً من ذلك، حاول التقدم بطلب للحصول على نسخة تجريبية مجانية من Google Cloud . إذا كنت لا تزال تواجه مشكلة في دفع فاتورتك بسبب هذا التغيير، فاتصل بدعم Firebase.
أنا قلق من أنني سأتحمل فاتورة ضخمة.
يمكنك إعداد تنبيهات الميزانية في وحدة تحكم Google Cloud للمساعدة في التحكم في التكاليف. يمكنك أيضًا تعيين حدود لعدد المثيلات التي تم إصدار فاتورة بها والتي تم إنشاؤها لكل وظيفة من وظائفك. للحصول على فكرة عن تكلفة السيناريوهات النموذجية، راجع أمثلة تسعير الوظائف السحابية .
لاستخدام الملحقات، ستحتاج إلى الترقية إلى خطة تسعير Blaze. سيتم تحصيل مبلغ صغير منك (عادةً حوالي 0.01 دولار أمريكي شهريًا مقابل موارد Firebase المطلوبة لكل ملحق تقوم بتثبيته (حتى لو لم يتم استخدامه)، بالإضافة إلى أي رسوم مرتبطة باستخدامك لخدمات Firebase.
التخزين السحابي لتسعير Firebase
كيف يمكنني التنبؤ بالمبلغ الذي سيتم محاسبتي عليه مقابل عمليات التحميل والتنزيل؟
تفضل بزيارة صفحة تسعير Firebase واستخدم حاسبة خطة Blaze . تسرد الآلة الحاسبة جميع أنواع الاستخدام للتخزين السحابي لـ Firebase.
استخدم أشرطة التمرير لإدخال الاستخدام المتوقع لحاوية التخزين الخاصة بك. ستقوم الآلة الحاسبة بتقدير فاتورتك الشهرية.
ماذا يحدث إذا تجاوزت حدود التحميل أو التنزيل أو التخزين لخطة Spark لـ Cloud Storage for Firebase؟
عندما تتجاوز حدود التخزين السحابي في مشروع في خطة Spark، تعتمد النتيجة على نوع الحد الذي تجاوزته:
إذا تجاوزت حد الجيجابايت المخزن ، فلن تتمكن من تخزين المزيد من البيانات في هذا المشروع إلا إذا قمت بإزالة بعض البيانات المخزنة أو الترقية إلى خطة توفر مساحة تخزين أكبر، أو مساحة تخزين غير محدودة.
إذا تجاوزت الحد الأقصى للتنزيل بالجيجابايت ، فلن يتمكن تطبيقك من تنزيل المزيد من البيانات حتى اليوم التالي (بدءًا من منتصف الليل بتوقيت المحيط الهادئ للولايات المتحدة)، إلا إذا قمت بالترقية إلى خطة ذات حدود أقل تقييدًا، أو بدون حدود.
إذا تجاوزت حد عمليات التحميل أو التنزيل ، فلن يتمكن تطبيقك من تحميل أو تنزيل المزيد من البيانات حتى اليوم التالي (بدءًا من منتصف الليل بتوقيت المحيط الهادئ للولايات المتحدة)، إلا إذا قمت بالترقية إلى خطة ذات حدود أقل تقييدًا، أو بدونها حدود.
خصوصية
أين يمكنني العثور على معلومات حول الخصوصية والأمان في Firebase؟
هل تسجل حزم Firebase SDK أي معلومات استخدام/تشخيص خارج Analytics؟
نعم. هذا حاليًا مخصص لنظام التشغيل iOS فقط، ولكنه قد يتغير في المستقبل. تشتمل حزمة SDK الخاصة بأنظمة Firebase Apple على إطار عمل FirebaseCoreDiagnostics بشكل افتراضي. يتم استخدام إطار العمل هذا بواسطة Firebase لجمع معلومات استخدام وتشخيص SDK للمساعدة في تحديد أولويات تحسينات المنتج المستقبلية. يعد FirebaseCoreDiagnostics اختياريًا، لذا إذا كنت ترغب في إلغاء الاشتراك في إرسال سجلات تشخيص Firebase، فيمكنك القيام بذلك عن طريق إلغاء ربط المكتبة بالتطبيق الخاص بك. يمكنك تصفح المصدر الكامل، بما في ذلك القيم المسجلة، على GitHub
اختبار أ/ب
اختبار أ/ب: ما عدد التجارب التي يمكنني إنشاؤها وتشغيلها؟
يُسمح لك بما يصل إلى 300 تجربة لكل مشروع، والتي يمكن أن تتكون من ما يصل إلى 24 تجربة جارية، والباقي كمسودة أو مكتملة.
اختبار أ/ب: لماذا لا يمكنني عرض تجاربي بعد إلغاء ربط مشروعي وإعادة ربطه ببرنامج Google Analytics؟
سيؤدي الارتباط بموقع مختلف في Google Analytics إلى فقدان إمكانية الوصول إلى التجارب التي تم إنشاؤها مسبقًا. لاستعادة إمكانية الوصول إلى تجربة سابقة، أعد ربط مشروعك بموقع Google Analytics الذي تم ربطه عند إنشاء التجربة.
اختبار أ/ب: لماذا أتلقى رسالة "المشروع غير مرتبط ببرنامج Google Analytics" عند إنشاء تجربة التكوين عن بُعد؟
إذا كنت قد ربطت بالفعل بين Firebase وGoogle Analytics ، ولكنك لا تزال ترى رسالة تفيد بأن Google Analytics غير مرتبط، فتأكد من وجود تدفق Analytics لجميع التطبيقات في مشروعك. في الوقت الحالي، يجب أن تكون جميع التطبيقات في المشروع مرتبطة بتدفق Google Analytics لاستخدام اختبار A/B.
يمكنك العثور على قائمة بجميع التدفقات النشطة في صفحة تفاصيل تكامل Google Analytics ضمن وحدة تحكم Firebase، والتي يمكن الوصول إليها من settingsإعدادات المشروعchevron_rightعمليات التكاملchevron_rightGoogle Analyticschevron_rightManage .
من المفترض أن يؤدي إنشاء تدفق Google Analytics لأي تطبيق لا يحتوي على تطبيق إلى حل المشكلة. هناك عدة طرق لإنشاء تدفقات للتطبيقات المفقودة:
إذا كان لديك تطبيق واحد أو تطبيقان فقط يفتقدان تدفق Google Analytics مرتبطًا، فيمكنك اختيار إحدى الطرق التالية لإضافة تدفق Google Analytics:
احذف أي تطبيق وأعد إضافته بدون دفق نشط في وحدة تحكم Firebase.
من وحدة تحكم Google Analytics ، حدد المسؤول ، وانقر على مصادر البيانات ، ثم انقر على إضافة مصدر ، وأضف تفاصيل التطبيق المفقود، ثم انقر على تسجيل التطبيق .
إذا كان لديك أكثر من عدد قليل من مصادر بيانات التطبيق المفقودة، فإن إلغاء ربط موقعك في Google Analytics وإعادة ربطه هو الطريقة الأسرع والأكثر فعالية لإنشاء مصادر بيانات التطبيق المفقودة:
AdMob: لاستخدام AdMob، ما هي حزم SDK التي يجب أن أستخدمها؟
لاستخدام AdMob، استخدم دائمًا Google Mobile Ads SDK كما هو موضح في هذه الأسئلة الشائعة. بالإضافة إلى ذلك وبشكل اختياري، إذا كنت تريد جمع مقاييس المستخدم لـ AdMob، فقم بتضمين Firebase SDK لبرنامج Google Analytics في تطبيقك.
التحليلات: لماذا يعد Google Analytics جزءًا موصى به لاستخدام منتجات Firebase؟
Google Analytics عبارة عن حل تحليلي مجاني وغير محدود يعمل مع ميزات Firebase لتقديم رؤى قوية. فهو يمكّنك من عرض سجلات الأحداث في Crashlytics، وفعالية الإشعارات في FCM، وأداء الارتباط العميق للروابط الديناميكية، وبيانات الشراء داخل التطبيق من Google Play. إنه يدعم استهداف الجمهور المتقدم في التكوين عن بعد، وتخصيص التكوين عن بعد، والمزيد.
يعمل Google Analytics كطبقة من الذكاء في وحدة تحكم Firebase لتزويدك بمزيد من الرؤى القابلة للتنفيذ حول كيفية تطوير تطبيق عالي الجودة، وتنمية قاعدة المستخدمين، وكسب المزيد من المال.
التحليلات: كيف أتحكم في كيفية مشاركة بيانات Analytics مع بقية Firebase؟
افتراضيًا، يتم استخدام بيانات Google Analytics لتحسين ميزات Firebase وGoogle الأخرى. يمكنك التحكم في كيفية مشاركة بيانات Google Analytics الخاصة بك في إعدادات مشروعك في أي وقت. تعرف على المزيد حول إعدادات مشاركة البيانات .
التحليلات: كيف يمكنني تحديث إعدادات موقع Analytics؟
من صفحة "المسؤول" في موقعك على Google Analytics، يمكنك تحديث إعدادات موقعك، مثل:
إعدادات مشاركة البيانات
إعدادات الاحتفاظ بالبيانات
المنطقة الزمنية وإعدادات العملة
لتحديث إعدادات مكان الإقامة الخاص بك، اتبع الخطوات التالية:
في وحدة تحكم Firebase، انتقل إلى settings > إعدادات المشروع .
انتقل إلى علامة التبويب عمليات التكامل ، ثم في بطاقة Google Analytics، انقر فوق إدارة أو عرض الرابط .
التحليلات: لماذا لا أرى أي بيانات تحليلية في وحدة تحكم Firebase بعد إلغاء ربط Firebase ببرنامج Google Analytics؟
توجد بيانات Analytics ضمن موقع Google Analytics، وليس ضمن مشروع Firebase. إذا قمت بحذف الموقع أو إلغاء ربطه، فلن يتمكن Firebase من الوصول إلى بيانات Analytics وسترى لوحة تحكم Analytics فارغة في وحدة تحكم Firebase. لاحظ أنه نظرًا لأن البيانات لا تزال موجودة في الموقع المرتبط سابقًا، يمكنك دائمًا إعادة ربط الموقع بـ Firebase والاطلاع على بيانات Analytics في وحدة تحكم Firebase.
سيؤدي ربط حساب Google Analytics جديد تمامًا (وبالتالي موقع Google Analytics جديد) بمشروع Firebase الخاص بك إلى ظهور لوحة تحكم Analytics فارغة في وحدة تحكم Firebase. ومع ذلك، إذا كان موقعك المرتبط مسبقًا لا يزال موجودًا، فيمكنك نقل البيانات الموجودة من الموقع القديم إلى الموقع الجديد.
التحليلات: إذا تم حذف موقعي في Analytics وبياناته، فهل هناك أي طريقة لاستعادتها؟
لا. إذا تم حذف موقعك، فلن يكون من الممكن إلغاء حذف الموقع أو استرداد بيانات Analytics التي تم جمعها مسبقًا والمخزنة في ذلك الموقع.
إذا كنت ترغب في البدء في استخدام Google Analytics مرة أخرى، يمكنك ربط موقع جديد أو موقع موجود بمشروع Firebase الخاص بك. يمكنك إجراء هذا الربط إما في وحدة تحكم Firebase أو واجهة مستخدم Google Analytics. تعرف على المزيد حول ربط موقع Google Analytics بمشروع Firebase الخاص بك.
التحليلات: إذا تم حذف موقع Analytics الخاص بي، فهل يمكنني ربط موقع Google Analytics جديد بمشروع Firebase الخاص بي والبدء في استخدام Analytics مرة أخرى؟
إذا كنت ترغب في البدء في استخدام Google Analytics مرة أخرى، يمكنك ربط موقع جديد أو موقع موجود بمشروع Firebase الخاص بك. يمكنك إجراء هذا الربط إما في وحدة تحكم Firebase أو واجهة مستخدم Google Analytics. تعرف على المزيد حول ربط موقع Google Analytics بمشروع Firebase الخاص بك.
لاحظ أنه بما أن جميع بيانات Analytics مخزنة في الموقع (وليس مشروع Firebase)، فلا يمكن استرداد بيانات Analytics التي تم جمعها مسبقًا.
التحليلات: كيف ستتأثر منتجات Firebase أو منتجات Google المدمجة بحذف موقع Analytics الخاص بي؟
تعتمد العديد من منتجات Firebase على تكامل Google Analytics. إذا تم حذف موقعك في Analytics وبياناته، فسيحدث ما يلي إذا كنت تستخدم المنتجات التالية:
Crashlytics — لم يعد بإمكانك رؤية المستخدمين الخاليين من الأعطال، وسجلات التنقل، و/أو تنبيهات السرعة.
المراسلة السحابية والمراسلة داخل التطبيق - لم يعد بإمكانك استخدام الاستهداف ومقاييس الحملة وتقسيم الجمهور وتسميات التحليلات.
التكوين عن بعد - لم يعد بإمكانك استخدام التكوينات المستهدفة أو التخصيص.
اختبار أ/ب — لم يعد بإمكانك استخدام اختبار أ/ب نظرًا لأن قياس التجربة يتم توفيره بواسطة Google Analytics.
الروابط الديناميكية - سيتم تعطيل أي ميزة تعتمد على البيانات من Google Analytics.
التحليلات: كيف يمكنني تقسيم المستخدمين الذين لم يستوفوا بعض المعايير؟
يمكنك إعادة صياغة المشكلة عن طريق "الاستهداف السلبي" لهؤلاء المستخدمين. على سبيل المثال، أعد صياغة المشكلة لتصبح "لا تعرض الإعلانات للأشخاص الذين اشتروا شيئًا ما"، وقم بتكوين جمهور من هؤلاء المستخدمين لاستهدافه.
التحليلات: هل الجماهير و/أو الأحداث المحددة في واجهة Google Analytics متاحة أيضًا في وحدة تحكم Firebase؟
ستتم مزامنة الجماهير وخصائص المستخدم الخاصة بك. بالنسبة لبعض الميزات، ستحتاج إلى استخدام واجهة Google Analytics، مثل التجزئة ومسارات التحويل المغلقة. يمكنك الوصول إلى واجهة Google Analytics مباشرةً عبر الروابط العميقة من وحدة تحكم Firebase.
يمكن أيضًا تنفيذ أي تغييرات تجريها من وحدة تحكم Firebase في Google Analytics، وستنعكس هذه التغييرات في Firebase.
المصادقة
مصادقة Firebase: ما هي الدول المدعومة لمصادقة الهاتف؟
تدعم مصادقة Firebase التحقق من رقم الهاتف في جميع أنحاء العالم، ولكن لا تقوم جميع الشبكات بتوصيل رسائل التحقق الخاصة بنا بشكل موثوق. تتمتع البلدان التالية بمعدلات تسليم جيدة، ومن المتوقع أن تعمل بشكل جيد لتسجيل الدخول برقم الهاتف.
دولة
شفرة
إعلان
أندورا
إ
الإمارات العربية المتحدة
بالعربية
أفغانستان
اي جي
أنتيغوا وبربودا
ال
ألبانيا
أكون
أرمينيا
آو
أنغولا
AR
الأرجنتين
مثل
ساموا الأمريكية
في
النمسا
الاتحاد الأفريقي
أستراليا
فصيل عبد الواحد
أروبا
من الألف إلى الياء
أذربيجان
بكالوريوس
البوسنة والهرسك
ب
بربادوس
دينار بحريني
بنغلاديش
يكون
بلجيكا
فرنك بلجيكي
بوركينا فاسو
بي جي
بلغاريا
بي جيه
بنين
بي ام
برمودا
بن
بروناي دار السلام
بو
بوليفيا
ر
البرازيل
بكالوريوس
جزر البهاما
بي تي
بوتان
الأسلحة البيولوجية
بوتسوانا
بواسطة
بيلاروسيا
بي زد
بليز
كاليفورنيا
كندا
قرص مضغوط
الكونغو (كينشاسا)
قوات التحالف
جمهورية افريقيا الوسطى
سي جي
الكونغو (برازافيل)
الفصل
سويسرا
سي آي
كوت ديفوار
سي كيه
جزر كوك
كل
شيلي
سم
الكاميرون
شركة
كولومبيا
سجل تجاري
كوستا ريكا
السيرة الذاتية
الرأس الأخضر
الأسلحة الكيميائية
كوراساو
قبرصي
قبرص
تشيكوسلوفاكيا
الجمهورية التشيكية
دي
ألمانيا
دي جي
جيبوتي
لا أعرف
الدنمارك
مارك ألماني
دومينيكا
يفعل
جمهورية الدومينيكان
دي زي
الجزائر
المفوضية الأوروبية
الاكوادور
على سبيل المثال
مصر
إس
إسبانيا
إت
أثيوبيا
FI
فنلندا
إف جي
فيجي
FK
جزر فوكلاند (مالفيناس)
FM
ولايات ميكرونيزيا الموحدة
فو
جزر فاروس
الاب
فرنسا
جا
الجابون
غيغابايت
المملكة المتحدة
جي دي
غرينادا
جنرال إلكتريك
جورجيا
فرنك غيني
غيانا الفرنسية
جي جي
غيرنسي
جي إتش
غانا
جي
جبل طارق
جي إل
الأرض الخضراء
جنرال موتورز
غامبيا
جي بي
جوادلوب
جي كيو
غينيا الإستوائية
غرام
اليونان
جي تي
غواتيمالا
جي
غيانا
هونج كونج
هونغ كونغ، المنطقة الإدارية الخاصة للصين
HN
هندوراس
الموارد البشرية
كرواتيا
إتش تي
هايتي
هو
هنغاريا
بطاقة تعريف
إندونيسيا
أي
أيرلندا
انا
إسرائيل
أنا
جزيرة آيل أوف مان
في
الهند
معدل الذكاء
العراق
هو - هي
إيطاليا
جي
جيرسي
جي إم
جامايكا
جو
الأردن
جي بي
اليابان
ك
كينيا
كلغ
قيرغيزستان
خ
كمبوديا
كم
جزر القمر
كن
سانت كيتس ونيفيس
ك ر
كوريا، جنوب)
كيلوواط
الكويت
كنتاكي
جزر كايمان
ك.ز
كازاخستان
لوس أنجلوس
جمهورية لاو الديمقراطية الشعبية
رطل
لبنان
إل سي
القديسة لوسيا
لي
ليختنشتاين
إل كيه
سيريلانكا
إل إس
ليسوتو
إل تي
ليتوانيا
لو
لوكسمبورغ
LV
لاتفيا
LY
ليبيا
ماجستير
المغرب
دكتوراه في الطب
مولدوفا
أنا
الجبل الأسود
مف
سانت مارتن (الجزء الفرنسي)
ملغ
مدغشقر
عضو الكنيست
جمهورية مقدونيا
مم
ميانمار
مينيسوتا
منغوليا
شهر
ماكاو، منطقة الصين الإدارية الخاصة
آنسة
مونتسيرات
طن متري
مالطا
مو
موريشيوس
ميغاواط
ملاوي
مكس
المكسيك
لي
ماليزيا
MZ
موزمبيق
غير متوفر
ناميبيا
نورث كارولاينا
كاليدونيا الجديدة
شمال شرق
النيجر
نف
جزيرة نورفولك
نانوغرام
نيجيريا
ني
نيكاراغوا
NL
هولندا
لا
النرويج
NP
نيبال
نيوزيلندي
نيوزيلندا
أوم
سلطنة عمان
السلطة الفلسطينية
بنما
بي
بيرو
ص
بابوا غينيا الجديدة
الرقم الهيدروجيني
فيلبيني
بي كيه
باكستان
بل
بولندا
مساءً
سانت بيير وميكلون
العلاقات العامة
بورتوريكو
ملاحظة
الأراضي الفلسطينية
حزب العمال
البرتغال
السنة التحضيرية
باراجواي
ضمان الجودة
دولة قطر
يكرر
جمع شمل
ريال عماني
رومانيا
روبية
صربيا
رو
الاتحاد الروسي
رو
رواندا
سا
المملكة العربية السعودية
SC
سيشيل
SE
السويد
سان جرمان
سنغافورة
ش
سانت هيلانة
سي
سلوفينيا
كورونا
سلوفاكيا
إس إل
سيرا ليون
SN
السنغال
ريال سعودى
سورينام
شارع
سان تومي وبرينسيبي
SV
السلفادور
سز
سوازيلاند
ح
جزر تركس وكايكوس
تي جي
توجو
ذ
تايلاند
ليرة تركية
تيمور الشرقية
TM
تركمانستان
ل
تونغا
تر
ديك رومى
تي تي
ترينداد وتوباغو
تي دبليو
تايوان، جمهورية الصين
TZ
تنزانيا، جمهورية المتحدة
تعميم الوصول إلى الخدمات
أوكرانيا
UG
أوغندا
نحن
الولايات المتحدة الأمريكية
UY
أوروغواي
UZ
أوزبكستان
VC
سانت فنسنت وجزر غرينادين
هاء
فنزويلا (الجمهورية البوليفارية)
VG
جزر فيرجن البريطانية
السادس
جزر فيرجن الأمريكية
VN
فيتنام
دبليو اس
ساموا
أنتم
اليمن
يوتيوب
مايوت
ZA
جنوب أفريقيا
ZM
زامبيا
ZW
زيمبابوي
مصادقة Firebase: كيف يمكنني منع إساءة استخدام الرسائل القصيرة عند استخدام مصادقة الهاتف؟
للمساعدة في حماية مشروعك من ضخ حركة مرور الرسائل القصيرة وإساءة استخدام واجهة برمجة التطبيقات، اتبع الخطوات التالية:
ابحث عن المناطق التي بها عدد كبير جدًا من الرسائل النصية القصيرة المرسلة وعدد منخفض جدًا (أو صفر) من الرسائل النصية القصيرة التي تم التحقق منها. نسبة التحقق/الإرسال هي معدل نجاحك. تتراوح معدلات النجاح الصحي عادةً بين 70 و85% نظرًا لأن الرسائل النصية القصيرة ليست بروتوكول توصيل مضمونًا، وقد تتعرض بعض المناطق لإساءة الاستخدام. تشير معدلات النجاح التي تقل عن 50% إلى وجود العديد من الرسائل النصية القصيرة المرسلة ولكن عدد قليل من عمليات تسجيل الدخول الناجحة، وهو مؤشر شائع على الجهات الفاعلة السيئة وضخ حركة مرور الرسائل النصية القصيرة.
استخدم سياسة منطقة الرسائل القصيرة إما لرفض مناطق الرسائل القصيرة ذات معدلات النجاح المنخفضة، أو السماح بمناطق معينة فقط إذا كان تطبيقك مخصصًا للتوزيع في أسواق معينة فقط.
قم بالحد من مجالات المصادقة المعتمدة لديك
استخدم لوحة معلومات إعدادات المصادقة لإدارة النطاقات المعتمدة. تتم إضافة مجال المضيف localhost افتراضيًا إلى مجالات المصادقة المعتمدة لتبسيط عملية التطوير. فكر في إزالة localhost من المجالات المعتمدة في مشروع الإنتاج الخاص بك لمنع الجهات الفاعلة السيئة من تشغيل التعليمات البرمجية على localhost للوصول إلى مشروع الإنتاج الخاص بك .
تمكين وفرض التحقق من التطبيق
قم بتمكين التحقق من التطبيق للمساعدة في حماية مشروعك من إساءة استخدام واجهة برمجة التطبيقات (API) من خلال التأكد من أن الطلبات تأتي فقط من التطبيقات المرتبطة بمشروعك.
تذكر أنك بحاجة إلى فرض التحقق من التطبيق للمصادقة في وحدة تحكم Firebase (ضع في اعتبارك مراقبة حركة المرور قبل الفرض). تحقق أيضًا جيدًا من قائمة مواقع reCAPTCHA Enterprise المعتمدة للتحقق من أنها تحتوي فقط على مواقع الإنتاج الخاصة بك، وأن قائمة التطبيقات المسجلة لمشروعك في App Check دقيقة.
لاحظ أن App Check يساعد في الحماية من الهجمات الآلية من خلال التأكد من أن المكالمة تأتي من أحد تطبيقاتك المسجلة. ولا يمنع المستخدمين من استخدام تطبيقك بطرق غير مقصودة (على سبيل المثال، البدء ثم عدم الانتهاء مطلقًا من تدفقات تسجيل الدخول لإنشاء رسائل نصية قصيرة مرسلة).
مصادقة Firebase: في تطبيق Android الخاص بي، لماذا أتلقى الخطأ التالي: 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 بشكل صحيح كموفر مصادقة:
ضمن علامة تبويب طريقة تسجيل الدخول ، قم بتعطيل طريقة تسجيل الدخول إلى Google ثم أعد تمكينها (حتى لو كانت ممكّنة بالفعل):
افتح طريقة تسجيل الدخول إلى Google ، وقم بتعطيلها، ثم انقر فوق حفظ .
أعد فتح طريقة تسجيل الدخول إلى Google ، وقم بتمكينها، ثم انقر فوق حفظ .
أيضًا، في تكوين موفر تسجيل الدخول إلى Google لقسم المصادقة ، تأكد من تطابق معرف عميل OAuth والسر مع عميل الويب المعروض في صفحة بيانات الاعتماد بوحدة تحكم Google Cloud (انظر في قسم معرفات عميل OAuth 2.0 ).
مصادقة Firebase: في تطبيق الويب الخاص بي، لماذا يفشل تسجيل الدخول باستخدام عمليات إعادة التوجيه بسبب الخطأ التالي: 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، أو أن مفتاح واجهة برمجة التطبيقات الذي تستخدمه مع خدمة مصادقة Firebase غير صالح.
تأكد أولاً من وجود YOUR_REDIRECT_DOMAIN في قائمة النطاقات المعتمدة لمشروع Firebase الخاص بك. إذا كان مجال إعادة التوجيه الخاص بك مدرجًا هناك بالفعل، فتابع استكشاف أخطاء مفتاح API غير الصالح وإصلاحها.
افتراضيًا، تعتمد Firebase Authentication JS SDK على مفتاح واجهة برمجة التطبيقات (API) لمشروع Firebase الخاص بك والذي يحمل اسم Browser key ، ويستخدم هذا المفتاح للتحقق من صلاحية عنوان URL لإعادة توجيه تسجيل الدخول وفقًا لقائمة النطاقات المعتمدة. تحصل المصادقة على مفتاح API هذا اعتمادًا على كيفية الوصول إلى Authentication SDK:
إذا كنت تستخدم مساعدات Auth المقدمة من الاستضافة لتسجيل دخول المستخدمين باستخدام Authentication JS SDK، فسيحصل Firebase تلقائيًا على مفتاح واجهة برمجة التطبيقات (API) الخاص بك مع بقية تكوين Firebase الخاص بك في كل مرة تقوم فيها بالنشر إلى Firebase Hosting. تأكد من تكوينauthDomain في تطبيق الويب الخاص بك firebaseConfig بشكل صحيح لاستخدام أحد المجالات لموقع الاستضافة هذا. يمكنك التحقق من ذلك بالانتقال إلى https:// authDomain __/firebase/init.json والتحقق من تطابق projectId مع ذلك الموجود في firebaseConfig .
إذا قمت باستضافة رمز تسجيل الدخول ذاتيًا ، فيمكنك استخدام ملف __/firebase/init.json لتوفير تكوين Firebase إلى مساعد إعادة توجيه Authentication JS SDK المستضاف ذاتيًا. يجب أن يتطابق مفتاح واجهة برمجة التطبيقات (API) ومعرف projectId المدرج في ملف التكوين هذا مع تطبيق الويب الخاص بك firebaseConfig .
تحقق للتأكد من عدم حذف مفتاح واجهة برمجة التطبيقات هذا: انتقل إلى واجهات برمجة التطبيقات والخدمات > لوحة بيانات الاعتماد في وحدة تحكم Google Cloud حيث يتم إدراج جميع مفاتيح واجهة برمجة التطبيقات لمشروعك.
إذا قمت باستضافة رمز تسجيل الدخول ذاتيًا، فتأكد من أن مفتاح واجهة برمجة التطبيقات المدرج في ملف __/firebase/init.json يتطابق مع مفتاح واجهة برمجة التطبيقات في وحدة التحكم السحابية. قم بتصحيح المفتاح الموجود في الملف، إذا لزم الأمر، ثم أعد نشر تطبيقك.
إذا تم حذف Browser key ، فيمكنك مطالبة Firebase بإنشاء مفتاح واجهة برمجة تطبيقات جديد لك: في وحدة تحكم Firebase، انتقل إلى settings > إعدادات المشروع ، ثم في قسم تطبيقاتك ، انقر على تطبيق الويب الخاص بك. يقوم هذا الإجراء تلقائيًا بإنشاء مفتاح API الذي يمكنك رؤيته في قسم إعداد وتكوين SDK لتطبيق الويب الخاص بك.
لاحظ أنه في وحدة التحكم السحابية، لن يُطلق على مفتاح واجهة برمجة التطبيقات الجديد هذا اسم Browser key ؛ وبدلاً من ذلك، سيكون بنفس الاسم المستعار لتطبيق Firebase Web App. إذا قررت إضافة قيود API إلى مفتاح API الجديد هذا، فتأكد من وجود Firebase Authentication API في قائمة واجهات برمجة التطبيقات المسموح بها.
بمجرد إنشاء مفتاح API الجديد، أكمل الخطوات المعمول بها أدناه:
إذا كنت تستخدم عناوين URL محجوزة للاستضافة ، فأعد نشر تطبيقك إلى Firebase حتى يتمكن تلقائيًا من الحصول على مفتاح واجهة برمجة التطبيقات الجديد مع بقية تكوين Firebase الخاص بك.
إذا كنت تستضيف رمز تسجيل الدخول ذاتيًا ، فانسخ مفتاح واجهة برمجة التطبيقات الجديد وأضفه إلى ملف __/firebase/init.json ، ثم أعد نشر تطبيقك.
مصادقة Firebase: كيف يمكنني إنشاء عميل ويب OAuth يدويًا؟؟
ضمن علامة التبويب طريقة تسجيل الدخول ، افتح مزود تسجيل الدخول إلى Google ، ثم قم بلصق معرف عميل خادم الويب وسريًا قمت بإنشائه ونسخه من وحدة التحكم السحابية من Google. انقر فوق حفظ .
مصادقة Firebase: كيف يتم تحديد %APP_NAME% لقالب البريد الإلكتروني للحصول على بريد إلكتروني للتأكيد يمكن إرساله إلى مستخدم عند التسجيل باستخدام عنوان بريد إلكتروني وكلمة مرور؟
قبل ديسمبر 2022 ، تم ملء %APP_NAME% في قالب البريد الإلكتروني باسم العلامة التجارية OAUTH التي تم توفيرها تلقائيًا كلما تم تسجيل تطبيق Android في مشروع Firebase. الآن ، نظرًا لتوفير علامة OAUTH فقط عند تمكين تسجيل الدخول إلى Google ، يصف ما يلي كيفية تحديد %APP_NAME% :
إذا كان اسم العلامة التجارية OAuth متاحًا ، فسيكون %APP_NAME% في قالب البريد الإلكتروني اسم العلامة التجارية OAUTH (مثل سلوك ما قبل ديسمبر 2022).
إذا لم يكن اسم العلامة التجارية OAUTH متوفرًا ، فإليك كيفية تحديد %APP_NAME% في قالب البريد الإلكتروني:
بالنسبة لتطبيقات الويب ، سيكون %APP_NAME% هو اسم موقع استضافة Firebase الافتراضي (القيمة السابقة .firebaseapp.com و .web.app وعادة ما يكون معرف مشروع Firebase).
لتطبيقات الهاتف المحمول:
إذا كان اسم حزمة Android أو معرف حزمة iOS موجودًا في الطلب ، فسيكون %APP_NAME% هو اسم التطبيق المستخدم في متجر Play Store أو App Store (على التوالي).
كيف يمكنني التأكد من نشر وظائفي في وقت تشغيل Node.js؟
في وحدة تحكم Firebase ، انتقل إلى لوحة معلومات الدالات ، وحدد وظيفة ، وتحقق من لغة الوظيفة ضمن تفاصيل إضافية .
يمكنني استخدام امتدادات Firebase. هل سأتأثر بتحديثات وقت تشغيل وظائف السحابة؟
نعم. نظرًا لأن الامتدادات تستخدم وظائف السحابة ، فسيحتاج وقت تشغيل ملحقاتك إلى تحديثه على نفس الجدول الزمني مثل وظائف السحابة.
نوصيك بالتحديث بشكل دوري إلى أحدث إصدار من كل ملحق مثبت في مشروعك. يمكنك ترقية ملحقات مشاريعك عبر وحدة التحكم Firebase أو Firebase CLI .
المراسلة السحابية
المراسلة السحابية: ما الفرق بين الملحن الإخطارات والرسائل السحابية؟
يوفر Firebase Cloud Messaging مجموعة كاملة من إمكانيات المراسلة من خلال بروتوكولات SDKs الخاصة بـ SDKs و HTTP و XMPP. بالنسبة للنشر مع متطلبات المراسلة الأكثر تعقيدًا ، فإن FCM هو الخيار الصحيح.
الملحن الإشعاعي هو محلول رسائل خفيفة الوزن بدون خادم مبني على رسائل Firebase Cloud. من خلال وحدة تحكم رسومية سهلة الاستخدام ومتطلبات الترميز المخفضة ، يتيح مؤلف الإخطار للمستخدمين إرسال الرسائل بسهولة إلى إعادة شن وإبقاء المستخدمين ، وتعزيز نمو التطبيق ، ودعم حملات التسويق.
قدرات
الملحن الإخطارات
المراسلة السحابية
هدف
جهاز واحد
العملاء المشتركون في مواضيع (أي الطقس)
العملاء في قطاع المستخدم المحدد مسبقًا (التطبيق ، الإصدار ، اللغة)
العملاء في جماهير التحليلات المحددة
العملاء في مجموعات الأجهزة
المنبع من العميل إلى الخادم
نوع الرسالة
الإخطارات تصل إلى 2 كيلو بايت
رسائل البيانات تصل إلى 4 كيلو بايت
توصيل
مباشر
جهاز العميل المستقبلي بالتوقيت المحلي
التحليلات
مجموعة تحليلات الإشعارات المدمجة وتحليلات القمع
المراسلة السحابية: أعلنت شركة Apple أنها تقوم بتهديد البروتوكول الثنائي القديم لقبضات التنبورة. هل أحتاج إلى القيام بأي شيء؟
لا. تم تحويل الرسائل السحابية Firebase إلى بروتوكول APNS المستند إلى HTTP/2 في عام 2017. إذا كنت تستخدم FCM لإرسال إشعارات إلى أجهزة iOS ، فلا ينبغي أن يكون هناك أي إجراء مطلوب من جانبك.
الرسائل السحابية: هل أحتاج إلى استخدام خدمات Firebase الأخرى من أجل استخدام FCM؟
يمكنك استخدام المراسلة السحابية Firebase كمكون مستقل ، بنفس الطريقة التي فعلت بها مع GCM ، دون استخدام خدمات Firebase الأخرى.
المراسلة السحابية: أنا مطور موجود في Google Cloud Messaging (GCM). هل يجب أن أنتقل إلى رسائل السحابة Firebase؟
FCM هو الإصدار الجديد من GCM تحت علامة Firebase. يرث البنية التحتية الأساسية لـ GCM ، مع SDKs جديدة لجعل تطوير الرسائل السحابية أسهل.
فوائد الترقية إلى FCM SDK تشمل:
تطوير العميل أبسط. لم تعد مضطرًا إلى كتابة منطق إعادة تسجيل التسجيل أو اشتراكك.
حل إشعار خارج الصندوق. يمكنك استخدام ملحن الإخطارات ، وهو حل إعلامات بدون خادم مع وحدة تحكم ويب تتيح لأي شخص إرسال إشعارات لاستهداف جماهير محددة بناءً على رؤى من Google Analytics.
للترقية من GCM SDKs إلى FCM SDKs ، راجع أدلة ترحيل تطبيقات Android و iOS .
الرسائل السحابية: لماذا تفشل أجهزتي المستهدفة على ما يبدو في تلقي الرسائل؟
عندما يبدو أن الأجهزة لم تتلق الرسائل بنجاح ، تحقق أولاً من هذين السبتين المحتملين:
معالجة الرسائل المقدمة لرسائل الإخطار . تحتاج تطبيقات العميل إلى إضافة منطق معالجة الرسائل لمعالجة رسائل الإخطار عندما يكون التطبيق في المقدمة على الجهاز. انظر تفاصيل iOS و Android .
قيود جدار الحماية الشبكة . إذا كان لدى مؤسستك جدار حماية يقيد حركة المرور من أو من الإنترنت ، فأنت بحاجة إلى تكوينه للسماح بالاتصال مع FCM من أجل الحصول على تطبيقات عميل المراسلة السحابية Firebase لتلقي الرسائل. الموانئ التي يجب فتحها هي:
5228
5229
5230
عادةً ما تستخدم FCM 5228 ، ولكنها تستخدم في بعض الأحيان 5229 و 5230. لا توفر FCM IPs محددة ، لذلك يجب أن تسمح لجدار الحماية الخاص بك بقبول الاتصالات الصادرة لجميع عناوين IP الموجودة في كتل IP المدرجة في ASN من Google من 15169 .
الرسائل السحابية: لقد قمت بتطبيق onMessageReceived في تطبيق Android الخاص بي ، لكن لا يتم استدعاؤه.
عندما يكون تطبيقك في الخلفية ، يتم عرض رسائل الإخطار في علبة النظام ، ولا يتم استدعاء onMessageReceived . بالنسبة لرسائل الإخطار التي تحتوي على حمولة بيانات ، يتم عرض رسالة الإخطار في علبة النظام ، ويمكن استرداد البيانات التي تم تضمينها في رسالة الإخطار من القصد الذي تم إطلاقه عندما ينقر المستخدم على الإخطار.
الملحن الإخطارات: ما الفرق بين الملحن الإخطارات والرسائل السحابية؟
الملحن الإشعاعي هو محلول رسائل خفيفة الوزن بدون خادم مبني على رسائل Firebase Cloud. من خلال وحدة تحكم رسومية سهلة الاستخدام ومتطلبات الترميز المخفضة ، يتيح مؤلف الإخطار للمستخدمين إرسال الرسائل بسهولة إلى إعادة شن وإبقاء المستخدمين ، وتعزيز نمو التطبيق ، ودعم حملات التسويق.
يوفر Firebase Cloud Messaging مجموعة كاملة من إمكانيات المراسلة من خلال بروتوكولات SDKs الخاصة بـ SDKs و HTTP و XMPP. بالنسبة للنشر مع متطلبات المراسلة الأكثر تعقيدًا ، فإن FCM هو الخيار الصحيح.
فيما يلي مقارنة مع قدرات المراسلة التي توفرها المراسلة السحابية Firebase وملحن الإخطارات:
قدرات
الملحن الإخطارات
المراسلة السحابية
هدف
جهاز واحد
العملاء المشتركون في مواضيع (أي الطقس)
العملاء في قطاع المستخدم المحدد مسبقًا (التطبيق ، الإصدار ، اللغة)
العملاء في جماهير التحليلات المحددة
العملاء في مجموعات الأجهزة
المنبع من العميل إلى الخادم
نوع الرسالة
الإخطارات تصل إلى 2 كيلو بايت
رسائل البيانات تصل إلى 4 كيلو بايت
توصيل
مباشر
جهاز العميل المستقبلي بالتوقيت المحلي
التحليلات
مجموعة تحليلات الإشعارات المدمجة وتحليلات القمع
الملحن الإخطارات: أنا مطور موجود في Google Cloud Messaging (GCM) ، وأريد استخدام ملحن الإخطارات. ماذا علي أن أفعل؟
الملحن الإشعاعي هو حل خارج الصندوق يتيح لأي شخص إرسال إشعارات لاستهداف جماهير محددة بناءً على رؤى من Google Analytics. أيضا ، يوفر الملحن الإخطار تحليل المسار لكل رسالة ، مما يسمح بتقييم سهل لفعالية الإخطار.
إذا كنت مطور GCM حالي ، لاستخدام ملحن الإخطارات ، يجب عليك الترقية من GCM SDKs إلى FCM SDKs. شاهد أدلة ترحيل تطبيقات Android و iOS .
ميزات FCM تم إهمالها في يونيو 2023
ما هي واجهات برمجة تطبيقات FCM التي تم إهمالها في 20 يونيو 2023 ، وماذا يجب أن أفعل إذا كنت أستخدم واجهات برمجة التطبيقات هذه؟
ستتأثر واجهات برمجة التطبيقات/SDKs التالية بالإهمال:
واجهات برمجة التطبيقات الخادم
اسم API
نقطة نهاية API
التأثير على المستخدمين
الإجراء مطلوب
بروتوكول HTTP Legacy
https://fcm.googleapis.com/fcm/send
ستبدأ طلبات إلى نقطة النهاية في الفشل بعد 6/21/2024.
لا تؤدي مكالمات API إلى FireBasemessaging.send في التطبيق إلى تشغيل الرسائل المنبع إلى خادم التطبيق بعد 6/21/2024.
تنفيذ هذه الوظيفة في منطق الخادم الخاص بك. على سبيل المثال ، يقوم بعض المطورين بتنفيذ نقطة نهاية HTTP/GRPC الخاصة بهم واتصلوا بنقطة النهاية مباشرة لإرسال الرسائل من عملائهم إلى خادم التطبيق. راجع بداية GRPC السريعة لتنفيذ مثال على المراسلة المنبع باستخدام GRPC.
دفعة أرسل API
https://fcm.googleapis.com/batch
ستبدأ طلبات إلى نقطة النهاية في الفشل بعد 6/21/2024.
ستتوقف واجهات برمجة التطبيقات هذه بعد 6/21/2024 لأنها تسمي الدفعة Send API.
ترقية إلى أحدث Firebase Admin SDK واستخدم واجهات برمجة التطبيقات الجديدة بدلاً من ذلك: sendEach()/ sendEachAsync()/send_each()/sendEachForMulticast()/sendEachForMulticastAsync()/ send_each_for_multicast() .
لاحظ أن واجهات برمجة التطبيقات الجديدة لم تعد تتصل بموجهة API التي تم إهمالها ، ولهذا السبب قد تنشئ اتصالات HTTP أكثر تزامن من واجهات برمجة التطبيقات القديمة.
العميل SDKs
إصدارات SDK
التأثير على المستخدمين
الإجراء مطلوب
GCM SDKS (تم إهمالها في عام 2018)
لن تتمكن التطبيقات التي تستخدم GCM SDKs من تسجيل الرموز أو تلقي رسائل من FCM بعد 6/21/2024.
قم بترقية Android SDK إلى أحدث Firebase SDK إذا لم تكن قد فعلت ذلك بالفعل.
إصدار JS SDKS <7.0.0 (كسر التغيير في الإصدار 7.0.0 في عام 2019)
لن تتمكن تطبيقات الويب التي تستخدم JS SDKs الأقدم من تسجيل الرموز بعد 6/21/2024.
ترقية FireBase Web SDK إلى أحدث إصدار.
هل سأرى تخفيض الخدمة قبل يونيو 2024؟
لا. لديك 12 شهرًا (06/20/2023 - 06/21/2024) للترحيل من واجهات برمجة التطبيقات القديمة إلى واجهات برمجة التطبيقات الجديدة دون أي تخفيض في الخدمة. نوصيك بشدة بالتخطيط للهجرة في أقرب وقت ممكن حتى لا تتأثر بإيقاف واجهات برمجة التطبيقات في يونيو 2024.
بعد يونيو 2024 ، قد ترى أخطاء متزايدة أو عدم وجود وظائف عند استخدام واجهات برمجة التطبيقات/SDK المذكورة أعلاه.
ما الفرق بين Oauth 2.0 Tokens ومفاتيح الخادم؟
رمز OAUTH 2.0 هو رمز قصير الأجل مشتق من حساب الخدمة . إنه نموذج المصادقة القياسي من Google وهو أكثر أمانًا من مفاتيح الخادم الثابتة.
لاحظ أن رؤوس الطلب تختلف عند استخدام الرموز المميزة OAUTH 2.0 لطلبات إلى نقاط نهاية مختلفة.
HTTP V1 API : Authorization: Bearer $oauth_token
واجهة برمجة تطبيقات خادم معرف المثيل وواجهة واجهة برمجة التطبيقات لإدارة مجموعة الأجهزة : Authorization: Bearer $oauth_token access_token_auth: true
هل يمكنني ترحيل طلباتي إلى واجهة برمجة التطبيقات الجديدة في وقت واحد؟
نوصيك ببطء زيادة حركة المرور الخاصة بك إلى واجهة برمجة التطبيقات الجديدة. إذا كنت تتوقع إرسال أكثر من 600000 رسالة/دقيقة على أساس منتظم ، فاتصل بدعم Firebase للحصول على تعليمات حول كيفية زيادة الحصص أو الحصول على توصيات حول كيفية نشر حركة المرور.
ما الفرق بين API HTTP V1 و APIs القديمة عندما أرسل رسائل إلى مواضيع/مجموعات الأجهزة؟
الموضوعات: لا تحتاج إلى إضافة بادئة "/الموضوعات/" إلى هدف الموضوع عند استخدام API V1.
مجموعات الأجهزة: يمكنك استخدام رمز جماعي كهدف رمز في واجهة برمجة تطبيقات HTTP V1. ومع ذلك ، فإن واجهة برمجة تطبيقات HTTP V1 لا تُرجع تعداد النجاح/الفشل في الاستجابة. نوصي باستخدام موضوعات FCM أو إدارة مجموعات أجهزتك بنفسك.
هل تدعم HTTP V1 API إرسال الرسائل إلى الرموز المتعددة في طلب واحد؟
لا. هذه الميزة ، والتي تسمى "البث المتعدد" في واجهات برمجة تطبيقات HTTP Legacy ، غير مدعومة من قبل API HTTP V1 ، والتي تم تصميمها بشكل أفضل للتوسع.
بالنسبة لحالات الاستخدام التي يكون فيها الكمون الشامل إلى النهاية أمرًا بالغ الأهمية ، أو حيث يكون حجم المراوح الكلي صغيرًا (أقل من مليون) ، توصي Google بإرسال طلبات منفصلة متعددة باستخدام API HTTP V1. يعمل API HTTP V1 عبر HTTP/2 بشكل مماثل ل 99.9 ٪ من طلبات البث المتعدد (إرسال <100 رمز). بالنسبة لحالات الاستخدام الخارجي (إرسال 1000 رمز) ، فإنه يحقق ما يصل إلى ثلث معدل الإنتاجية ، لذلك هناك حاجة إلى تزامن إضافي لتحسين حالة الاستخدام غير النمطية هذه. يمكن للمستخدمين تجربة المزيد من الموثوقية والتوافر مع API HTTP V1 أكثر من البث المتعدد Legacy.
لحالات الاستخدام حيث يتم تحديد أولويات عرض النطاق الترددي للإنتاجية والخروج أو عندما يكون حجم المراوح الكلي كبيرًا (أكبر من مليون) ، توصي Google بالرسائل الموضوعية. على الرغم من أن مراسلة الموضوع تتطلب إجراء لمرة واحدة للاشتراك المستفيدين في موضوع ما ، فإنه يوفر ما يصل إلى 10000 QPS لكل معدل لمشجع المشروع دون الحد الأقصى لحجم الموضوع.
ما هي إصدارات Firebase Admin SDK لديها واجهات برمجة التطبيقات الجديدة؟
منصة
إصدار FireBase Admin SDK
Node.js
> = 11.7.0
بايثون
> = 6.2.0
جافا
> = 9.2.0
يذهب
> = 4.12.0
.شبكة
> = 2.4.0
ما الفرق بين الدفعة Send API و HTTP V1 API؟
تستخدم API Send Send FCM نفس تنسيق الرسائل وآلية المصادقة مثل API HTTP V1. ومع ذلك ، فإنه يستخدم نقطة نهاية مختلفة. إذا كنت ترغب في تحسين الكفاءة ، فيجب عليك التفكير في استخدام HTTP/2 لإرسال طلبات متعددة عبر نفس اتصال HTTP إلى API HTTP V1.
ماذا علي أن أفعل إذا لم أتمكن من الوصول إلى مشروعي؟
يرجى التواصل مع فريق دعم السحابة من Google للحصول على المساعدة.
التخزين السحابي لـ Firebase
التخزين السحابي لـ Firebase: لماذا لا يمكنني استخدام التخزين السحابي لـ Firebase؟
تخزين السحابة لـ Firebase ينشئ دلوًا افتراضيًا في طبقة App Engine بدون تكلفة. يتيح لك ذلك الاستيلاء بسرعة وتشغيله باستخدام Firebase and Cloud Storage لـ Firebase ، دون الحاجة إلى وضع بطاقة ائتمان أو تمكين حساب الفواتير السحابية. كما يتيح لك مشاركة البيانات بسهولة بين Firebase ومشروع Google Cloud.
ومع ذلك ، هناك حالتان معروفين لا يمكن إنشاء هذا الدلو وسنكون غير قادر على استخدام التخزين السحابي لـ Firebase:
مشروع تم استيراده من Google Cloud والذي يحتوي على تطبيق DataStore Master/Slave App Engine.
مشروع تم استيراده من Google Cloud والذي يحتوي على مشاريع مسبوقة بالمجال. على سبيل المثال: domain.com:project-1234 .
لا يوجد حاليًا أي حلول لهذه المشكلات ، ونوصي بأن تقوم بإنشاء مشروع جديد في وحدة التحكم في Firebase وتمكين التخزين السحابي لـ Firebase في هذا المشروع.
التخزين السحابي لـ Firebase: لماذا أحصل على رمز الخطأ 412 ردود حول أذونات حساب الخدمة وعمليات حساب الخدمة الفاشلة عند استخدام التخزين السحابي لاتصالات API Firebase؟
من المحتمل أنك تحصل على 412 رموز خطأ إما لأن التخزين السحابي لواجهة برمجة تطبيقات Firebase لم يتم تمكينه لمشروعك أو أن حساب الخدمة اللازم يفتقد الأذونات المطلوبة.
التخزين السحابي لـ Firebase: على مشاريع Park Plan ، هل يمكنني تخزين الملفات القابلة للتنفيذ؟
بالنسبة لمشاريع خطة عدم التكلفة (Spark) ، تقوم Firebase Collox بتحميلات واستضافة بعض أنواع الملفات القابلة للتنفيذ لنظام التشغيل Windows و Android و Apple عن طريق التخزين السحابي لاستضافة Firebase و Firebase. هذه السياسة موجودة لمنع الإساءة على منصتنا.
يتم حظر تقديم واستضافة وتحميل الملفات للملفات غير المسموح بها لجميع مشاريع Spark التي تم إنشاؤها في 28 سبتمبر ، 2023. بالنسبة لمشاريع Spark الحالية مع الملفات التي تم تحميلها قبل ذلك التاريخ ، لا يزال من الممكن تحميل هذه الملفات واستضافتها.
ينطبق هذا التقييد على مشاريع Park Plan. لا تتأثر خطة الأجر كما تذهب (Blaze).
لا يمكن استضافة أنواع الملفات التالية على استضافة Firebase وتخزين السحابة لـ Firebase:
ملفات Windows مع .exe ، .dll و .bat extensions
ملفات Android مع ملحق .apk
ملفات منصة Apple مع ملحق .ipa
ما الذي أنا بحاجة لفعله؟
إذا كنت لا تزال ترغب في استضافة أنواع الملفات هذه بعد 28 سبتمبر ، 2023:
للاستضافة: الترقية إلى خطة Blaze قبل أن تتمكن من نشر أنواع الملفات هذه على استضافة Firebase عبر أمر firebase deploy .
للتخزين: قم بالترقية إلى خطة Blaze لتحميل أنواع الملفات هذه على الدلو الذي تختاره باستخدام GCS CLI أو وحدة التحكم Firebase أو Google Cloud Console.
استخدم أدوات Firebase لإدارة موارد استضافة Firebase وتخزين السحابة.
لإدارة الموارد في استضافة Firebase ، استخدم وحدة التحكم Firebase لحذف الإصدارات وفقًا لهذا الدليل .
لإدارة الموارد في التخزين السحابي ، انتقل إلى صفحة منتج التخزين في مشروعك.
في علامة تبويب الملفات ، حدد موقع الملفات غير المسموح بها في التسلسل الهرمي للمجلد ، ثم حددها باستخدام مربع الاختيار بجوار اسم الملف (الأسماء) على الجانب الأيسر من اللوحة.
التخزين السحابي لـ Firebase: لماذا أرى زيادة غير متوقعة في عمليات التحميل والتنزيل؟
في السابق ، لم يتم حساب طلبات التنزيل والتحميل إلى التخزين السحابي لـ Firebase API بشكل صحيح. لقد اتخذنا خطوات لإصلاح هذه المشكلة ، بدءًا من 15 سبتمبر 2023.
بالنسبة إلى مستخدمي Blaze ، سيبدأ عمليات التحميل والتنزيل في العد في فاتورتك الشهرية. بالنسبة لمستخدمي Spark ، سيبدأون في العد نحو الحد الشهري المجاني.
نوصي بمراقبة صفحة الاستخدام الخاصة بك لأي زيادات قد تحسب نحو حدودك.
التخزين السحابي لـ Firebase: لماذا أرى معرفات حساب خدمة جديدة مرتبطة بمشاريع Firebase التي تستخدم التخزين السحابي لـ Firebase؟
يستخدم Firebase حسابات الخدمة لتشغيل وإدارة الخدمات دون مشاركة بيانات اعتماد المستخدم. عندما تقوم بإنشاء مشروع Firebase ، قد تلاحظ أن عددًا من حسابات الخدمة متوفرة بالفعل في مشروعك.
تم تحديد حساب الخدمة التي تستخدمها التخزين السحابي لاستخدامات Firebase لمشروعك ويتم تسميتها service- PROJECT_NUMBER @gcp-sa-firebasestorage.iam.gserviceaccount.com .
إذا كنت تستخدم التخزين السحابي لـ Firebase قبل 19 سبتمبر ، 2022 ، فقد ترى حساب خدمة إضافي على دلو التخزين السحابي المرتبط مسبقًا باسم firebase-storage@system.gserviceaccount.com . اعتبارًا من 19 سبتمبر 2022 ، لم يعد حساب الخدمة هذا مدعومًا.
يمكنك عرض جميع حسابات الخدمة المرتبطة بمشروعك في وحدة تحكم Firebase ، في علامة تبويب حسابات الخدمة .
إضافة حساب الخدمة الجديد
إذا قمت بإزالة حساب الخدمة مسبقًا أو أن حساب الخدمة غير موجود في مشروعك ، فيمكنك القيام بأحد ما يلي لإضافة الحساب.
(موصى به) آلي: استخدم نقطة نهاية الراحة AddFireBase لإعادة استيراد دلوك في Firebase. ستحتاج فقط إلى استدعاء نقطة النهاية هذه مرة واحدة ، وليس مرة واحدة لكل دلو مرتبط.
نحن نثني عليك بشدة إزالة حساب الخدمة لأن هذا قد يحظر الوصول إلى دلاء التخزين السحابية من تطبيقاتك. لإزالة حساب الخدمة من مشروعك ، اتبع الإرشادات في تعطيل حساب الخدمة .
الروابط الديناميكية: لماذا يصل تطبيق Android الخاص بي إلى كل رابط ديناميكي مرتين؟
تقوم واجهة برمجة تطبيقات getInvitation بمسح الرابط الديناميكي المحفوظ لمنع الوصول إليه مرتين. تأكد من استدعاء واجهة برمجة التطبيقات هذه باستخدام معلمة autoLaunchDeepLink التي تم تعيينها على false في كل من أنشطة الارتباط العميق لمسحها للحالة عندما يتم تشغيل النشاط خارج النشاط الرئيسي.
جناح المحاكي المحلي Firebase
لماذا تُظهر سجلات جناح المحاكي خطأً بدءًا من "ProjectIDs المتعددة لا ينصح في وضع مشروع واحد"؟
تعني هذه الرسالة أن جناح المحاكي قد اكتشف أنه قد يقوم بتشغيل محاكي منتج معين باستخدام معرفات المشروع المختلفة. قد يشير هذا إلى سوء التكوين ، ويمكن أن يسبب مشكلات عندما تحاول المحاكسون التواصل مع بعضها البعض ، وعندما تحاول التفاعل مع المحاكيات من الكود الخاص بك. إذا لم تتطابق معرفات المشروع ، فغالبًا ما يبدو أن البيانات مفقودة ، نظرًا لأن البيانات المخزنة في المحاكيات مرتبطة بمحاكاة ، وتتعتمد على التشغيل البيني على مطابقة معرفات المشروع.
لقد كان هذا مصدرًا شائعًا للارتباك بين المطورين ، لذا فإن جناح المحاكي المحلي بشكل افتراضي سيسمح الآن فقط بتشغيل معرف مشروع واحد ، ما لم تحدد خلاف ذلك في ملف تكوين firebase.json . إذا اكتشف المحاكي أكثر من معرف مشروع واحد ، فسيقوم بتسجيل تحذير وربما يرمي خطأ فادح.
تحقق من إعلان (إعلانات) معرف المشروع عن عدم التطابق في:
تم تعيين المشروع الافتراضي في سطر الأوامر. بشكل افتراضي ، سيتم أخذ معرف المشروع في بدء التشغيل من المشروع المحدد باستخدام firebase init أو firebase use . لعرض قائمة المشاريع (ومعرفة أي واحد تم اختيارها) ، استخدم firebase projects:list .
اختبارات الوحدة. غالبًا ما يتم تحديد معرف المشروع في المكالمات إلى MOTIONS UNIT UNIT METURING initializeTestEnvironment أو initializeTestApp . قد يتم تهيئة رمز الاختبار الآخر باستخدام initializeApp(config) .
سطر الأوامر --project . إن تمرير علامة Firebase CLI --project يتجاوز المشروع الافتراضي. ستحتاج إلى التأكد من أن قيمة العلامة تتطابق مع معرف المشروع في اختبارات الوحدة وتهيئة التطبيق.
أماكن خاصة بالمنصة للتحقق:
ويب
خاصية projectId في كائن JavaScript firebaseConfig ، المستخدمة في initializeApp .
ذكري المظهر
خاصية project_id داخل ملف تكوين google-services.json .
منصات Apple
خاصية PROJECT_ID في ملف تكوين GoogleService-Info.plist .
لتعطيل وضع المشروع الفردي ، تحديث firebase.json باستخدام مفتاح singleProjectMode :
الاستضافة: على مشاريع Park Plan ، هل يمكنني تخزين الملفات القابلة للتنفيذ؟
بالنسبة لمشاريع خطة عدم التكلفة (Spark) ، تقوم Firebase Collox بتحميلات واستضافة بعض أنواع الملفات القابلة للتنفيذ لنظام التشغيل Windows و Android و Apple عن طريق التخزين السحابي لاستضافة Firebase و Firebase. هذه السياسة موجودة لمنع الإساءة على منصتنا.
يتم حظر تقديم واستضافة وتحميل الملفات للملفات غير المسموح بها لجميع مشاريع Spark التي تم إنشاؤها في 28 سبتمبر ، 2023. بالنسبة لمشاريع Spark الحالية مع الملفات التي تم تحميلها قبل ذلك التاريخ ، لا يزال من الممكن تحميل هذه الملفات واستضافتها.
ينطبق هذا التقييد على مشاريع Park Plan. لا تتأثر خطة الأجر كما تذهب (Blaze).
لا يمكن استضافة أنواع الملفات التالية على استضافة Firebase وتخزين السحابة لـ Firebase:
ملفات Windows مع .exe ، .dll و .bat extensions
ملفات Android مع ملحق .apk
ملفات منصة Apple مع ملحق .ipa
ما الذي أنا بحاجة لفعله؟
إذا كنت لا تزال ترغب في استضافة أنواع الملفات هذه بعد 28 سبتمبر ، 2023:
للاستضافة: الترقية إلى خطة Blaze قبل أن تتمكن من نشر أنواع الملفات هذه على استضافة Firebase عبر أمر firebase deploy .
للتخزين: قم بالترقية إلى خطة Blaze لتحميل أنواع الملفات هذه على الدلو الذي تختاره باستخدام GCS CLI أو وحدة التحكم Firebase أو Google Cloud Console.
استخدم أدوات Firebase لإدارة موارد استضافة Firebase وتخزين السحابة.
لإدارة الموارد في استضافة Firebase ، استخدم وحدة التحكم Firebase لحذف الإصدارات وفقًا لهذا الدليل .
لإدارة الموارد في التخزين السحابي ، انتقل إلى صفحة منتج التخزين في مشروعك.
في علامة تبويب الملفات ، حدد موقع الملفات غير المسموح بها في التسلسل الهرمي للمجلد ، ثم حددها باستخدام مربع الاختيار بجوار اسم الملف (الأسماء) على الجانب الأيسر من اللوحة.
مراقبة الأداء: كم عدد أنماط URL المخصصة التي يمكنني إنشاؤها؟
يمكنك إنشاء ما يصل إلى 400 أنماط URL مخصصة لكل تطبيق وما يصل إلى 100 نمط عنوان URL مخصص لكل مجال لهذا التطبيق.
مراقبة الأداء: لماذا لا أرى عرضًا في الوقت الفعلي لبيانات الأداء؟
لعرض بيانات الأداء في الوقت الفعلي ، تأكد من أن تطبيقك يستخدم إصدار SDK مراقبة الأداء المتوافق مع معالجة البيانات في الوقت الحقيقي.
iOS - v7.3.0 أو أحدث
TVOS - v8.9.0 أو أحدث
Android - v19.0.10 أو أحدث (أو Firebase Android Bom V26.1.0 أو أحدث)
Web - v7.14.0 أو أحدث
لاحظ أننا نوصي دائمًا باستخدام أحدث إصدار من SDK ، ولكن أي إصدار مدرج أعلاه سيمكن مراقبة الأداء من معالجة بياناتك في الوقت الفعلي.
قاعدة بيانات الوقت الحقيقي
قاعدة بيانات REATIME: لماذا تم الإبلاغ عن قاعدة بيانات الوقت الفعلي عن النطاق الترددي أقل من المتوسط بين سبتمبر 2016 ومارس 2017؟
بالنسبة لحسابات النطاق الترددي لدينا ، فإننا عادة ما ندرج تكريس تشفير SSL (استنادًا إلى الطبقة 5 من نموذج OSI). ومع ذلك ، في سبتمبر 2016 ، قدمنا خطأ تسبب في تقارير عرض النطاق الترددي لدينا لتجاهل النفقات العامة للتشفير. قد يكون هذا قد أدى إلى انخفاض عرض النطاق الترددي والفواتير على حسابك لبضعة أشهر.
أصدرنا إصلاحًا للخطأ في أواخر مارس 2017 ، حيث أعود إلى التقارير النطاق الترددي والفواتير إلى مستوياتها العادية.
قاعدة بيانات الوقت الحقيقي: ما هي قيود القياس لقاعدة بيانات الوقت الحقيقي؟
كل مثيل قاعدة بيانات في الوقت الحقيقي له حدود على عدد عمليات الكتابة في الثانية. بالنسبة للكتابات الصغيرة ، هذا الحد هو حوالي 1000 عملية كتابة في الثانية. إذا كنت تقترب من هذا الحد ، فيمكن أن تساعدك العمليات التي تستخدم تحديثات متعددة المسارات على تحقيق إنتاجية أعلى.
قاعدة بيانات الوقت الحقيقي: ماذا يمكنني أن أفعل إذا كنت قد تجاوزت حدود استخدام قاعدة البيانات الخاصة بي؟
إذا تلقيت تنبيهًا عبر البريد الإلكتروني أو الإخطار في وحدة التحكم في Firebase ، فقد تجاوزت حدود استخدام قاعدة بيانات الوقت الفعلي ، يمكنك معالجته بناءً على حد الاستخدام الذي تجاوزته. للاطلاع على استخدام قاعدة بيانات الوقت الفعلي ، انتقل إلى لوحة معلومات استخدام قاعدة البيانات في الوقت الفعلي في وحدة تحكم Firebase.
إذا كنت قد تجاوزت الحد الأقصى للتنزيل ، فيمكنك ترقية خطة تسعير FireBase أو الانتظار حتى يتم إعادة تعيين حد التنزيل الخاص بك في بداية دورة الفواتير التالية. لتقليل التنزيلات الخاصة بك ، جرب الخطوات التالية:
أضف استعلامات للحد من البيانات التي تعود عمليات الاستماع الخاصة بك.
تحقق من الاستعلامات غير المسبقة.
استخدم المستمعين الذين يقومون بتنزيل التحديثات فقط على البيانات - على سبيل المثال ، on() بدلاً من once() .
استخدم قواعد الأمان لمنع التنزيلات غير المصرح بها.
إذا كنت قد تجاوزت حد التخزين الخاص بك ، فقم بترقية خطة التسعير الخاصة بك لتجنب اضطرابات الخدمة. لتقليل كمية البيانات في قاعدة البيانات الخاصة بك ، جرب الخطوات التالية:
تشغيل وظائف التنظيف الدورية.
تقليل أي بيانات مكررة في قاعدة البيانات الخاصة بك.
لاحظ أنه قد يستغرق الأمر بعض الوقت لرؤية أي عمليات حذف بيانات تنعكس في تخصيص التخزين الخاص بك.
إذا كنت فوق الحد من اتصالات قاعدة البيانات المتزامنة ، فقم بترقية خطتك لتجنب أي اضطرابات في الخدمة. لإدارة الاتصالات المتزامنة بقاعدة البيانات الخاصة بك ، حاول الاتصال عبر المستخدمين عبر واجهة برمجة تطبيقات REST إذا كانوا لا يحتاجون إلى اتصال حقيقي.
التكوين عن بعد
التكوين عن بُعد: لماذا لا تؤدي قيم الجلب إلى تغيير سلوك وتططيحي؟
ما لم تقم بإحضار القيم باستخدام fetchAndActivate() ، يتم تخزين القيم محليًا ولكن لا يتم تنشيطها. لتفعيل القيم الجاهلة بحيث يمكن أن تدخل مفعول ، استدعاء activate . يتيح لك هذا التصميم التحكم عندما يتغير سلوك وتطبيقك ، لأنه يمكنك اختيار وقت activate . بعد استدعاء activate ، يحدد رمز مصدر التطبيق الخاص بك عند استخدام قيم المعلمة المحدثة.
على سبيل المثال ، يمكنك جلب القيم ثم تنشيطها في المرة التالية التي يبدأ فيها المستخدم تطبيقك ، والذي يزيل الحاجة إلى تأخير بدء تشغيل التطبيق بينما ينتظر تطبيقك قيمًا محددة من الخدمة. التغييرات في سلوك التطبيق الخاص بك ومظهره ثم تحدث عندما يستخدم تطبيقك قيم المعلمة المحدثة.
التكوين عن بُعد: أقوم بتقديم الكثير من طلبات الجلب أثناء تطوير تطبيقي. لماذا لا يحصل تطبيقي دائمًا على أحدث القيم من الخدمة عندما يرسل طلبات الجلب؟
أثناء تطوير التطبيق ، قد ترغب في جلب وتنشيط التكوينات بشكل متكرر (عدة مرات في الساعة) للسماح لك بالتكرار بسرعة أثناء تطوير واختبار تطبيقك. لاستيعاب التكرار السريع في مشروع مع ما يصل إلى 10 مطورين ، يمكنك تعيين كائن FirebaseRemoteConfigSettings مؤقتًا مع فاصل جلب منخفض ( setMinimumFetchIntervalInSeconds ) في تطبيقك.
التكوين عن بُعد: ما مدى سرعة إرجاع خدمة التكوين عن بُعد التي تحضرها القيم بعد أن يرسل تطبيقي طلب جلب؟
عادة ما تتلقى الأجهزة قيمًا جلبًا في أقل من ثانية ، وغالبًا ما تتلقى قيمًا تم جلبها بالميلي ثانية. تعامل خدمة التكوين عن بُعد في جلب طلبات جلب ضمن المللي ثانية ، ولكن الوقت اللازم لإكمال طلب الجلب يعتمد على سرعة الشبكة للجهاز ومواصفة اتصال الشبكة المستخدمة من قبل الجهاز.
إذا كان هدفك هو جعل القيم المفعمة بالحيوية في التطبيق الخاص بك في أقرب وقت ممكن ، ولكن دون إنشاء تجربة مستخدم صاخبة ، فكر في إضافة مكالمات إلى fetchAndActivate في كل مرة يقوم فيها تطبيقك بتحديث ملء الشاشة.
يخزن تخزين تجزئة مستخدمي Firebase معرفات تثبيت Firebase والسمات والقطاعات ذات الصلة بالإضافة إلى قوائم الجمهور التي قمت بإنشائها لتوفير معلومات الاستهداف لخدمات Firebase الأخرى التي تستخدمها ، مثل CrashlyTics و FCM وتخصيص التكوين عن بُعد والمزيد.