إضافة Cloud Firestore وAuthentication إلى تطبيقك على Google AI Studio

يمكن لوضع الإنشاء في Google AI Studio إعداد ودمج Cloud Firestore وFirebase Authentication تلقائيًا في تطبيقات الويب، ما يسهّل إنشاء تطبيقات تتضمّن تخزينًا دائمًا للبيانات وعمليات تسجيل دخول آمنة. من خلال طلب واحد وبضع نقرات فقط، يمكنك السماح Google AI Studio للوكيل بإعداد مشروع Firebase وربط تطبيقك بهذا المشروع وإنشاء جميع رموز Cloud Firestore وAuthentication مباشرةً في تطبيقك.

نظرة عامة: إضافة خادم خلفي إلى تطبيق Google AI Studio

  1. وصف فكرتك: أنشئ تطبيقًا جديدًا في Google AI Studio واشرح ميزة تتطلّب قاعدة بيانات أو مصادقة. على سبيل المثال، يمكنك إدخال الطلب: Build a shared to-do list app using Firebase as a backend.

  2. تفعيل عملية دمج Firebase: عندما يطلب منك الوكيل ذلك، فعِّل Firebase، واختَر موقعًا جغرافيًا لمشروعك، واقبل بنود خدمة Firebase. بعد ذلك، يربط البرنامج التطبيق تلقائيًا بمشروعك على Firebase وينشئ الرمزين Cloud Firestore وAuthentication اللازمَين لتطبيقك، بما في ذلك الملف /src/lib/firebase.ts والملف firestore.rules.

  3. النشر: بعد أن يصبح تطبيق الويب الخاص بك جاهزًا، استخدِم الخيار مشاركة > نشر لنشر تطبيق الويب الخاص بك إلى Cloud Run.

التعرّف على الحصة المشترَكة لـ Cloud Firestore

يتم وضع جميع قواعد بيانات Cloud Firestore التي يوفّرها وكيل Google AI Studio في "مجموعة" قواعد البيانات نفسها في مشروع Firebase. وتشترك جميعها في السمات التالية:

  • الحصة المشتركة: تشترك جميع قواعد البيانات في المجموعة في حصة استخدام (اطّلِع على التفاصيل أدناه).
  • لا يلزم توفّر حساب Cloud Billing: يمكنك إنشاء تطبيقك واختباره بدون إضافة معلومات الفوترة. يمكنك الاطّلاع على التفاصيل أدناه حول إضافة معلومات الفوترة بشكل اختياري.
  • عمليات إعادة الضبط اليومية: إذا بلغت الحدّ الأقصى للحصة اليومية (على سبيل المثال، 50 ألف عملية قراءة في اليوم)، ستتوقف الخدمة مؤقتًا لجميع قواعد البيانات ضمن المجموعة، ثم ستستأنف عملها في اليوم التالي عند منتصف الليل تقريبًا بتوقيت المحيط الهادئ.

تتشارك قواعد بيانات Cloud Firestore في مجموعة الحصة المشتركة الحدود التالية:

المقياس الحصة
البيانات المخزّنة إجمالي 1 غيبي بايت
الخروج من الشبكة ‫10 غيغابايت في الشهر
كتابة الوحدات ‫40,000 عملية كتابة في اليوم
وحدات القراءة ‫50,000 قراءة في اليوم
وحدات التعديل في الوقت الفعلي ‫50,000 تعديل في اليوم

(اختياري) إضافة معلومات الفوترة للحصول على حصة أكبر من Cloud Firestore

إذا حقّق تطبيقك رواجًا واحتجت إلى تجاوز حدود Cloud Firestore بدون تكلفة، يمكنك ترقية مشروعك إلى خطة Blaze المَرِنة للدفع حسب الاستخدام.

  1. إضافة الفوترة (إذا لم يسبق لك إجراء ذلك): انتقِل إلى Firebase Console واربط حساب فوترة بمشروعك.

  2. ترقية قاعدة البيانات: تلقائيًا، تستمر قواعد بيانات Cloud Firestore التي أنشأها وكيل Google AI Studio في استخدام الحصة المشتركة حتى بعد ترقية خطة الأسعار. لتفعيل التوسيع الكامل المدفوع لقاعدة بيانات معيّنة، يجب نقلها يدويًا من المجموعة باستخدام الأمر curl.

    • PROJECT_ID : رقم تعريف مشروع Firebase. يمكنك العثور على هذا الرقم في إعدادات المشروع في وحدة تحكّم Firebase.

    • DATABASE_ID : معرّف قاعدة بيانات Cloud Firestore، والذي سيتطابق مع معرّف التطبيق الصغير. يمكنك العثور على معرّف قاعدة البيانات هذا في عمود الاسم في صفحة قواعد بيانات Cloud Firestore في وحدة تحكّم Firebase.

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://firestore.googleapis.com/v1/projects/PROJECT_ID/databases/DATABASE_ID?updateMask=free_tier_limited" \
    -d '{"free_tier_limited": false}'
    

Security Rules من عمليات الإنشاء

ينشئ Google AI Studio تلقائيًا Firebase Security Rules استنادًا إلى منطق تطبيقك. تم تصميم Security Rules هذه لتكون "رفضًا تلقائيًا"، ما يعني أنّه لا يمكن للمستخدمين النهائيين لتطبيقك الوصول إلا إلى البيانات التي يملكونها.

يُرجى العِلم أنّه في حال تعديل Security Rules يدويًا مباشرةً في وحدة تحكّم Firebase، لن يعلم وكيل Google AI Studio بالتغييرات، وسيتم استبدالها أثناء عمليات تكرار التطبيق اللاحقة. ننصحك باستخدام وكيل Google AI Studio لتعديل Firebase Security Rules لضمان الحفاظ على التغييرات ومواءمتها مع منطق تطبيقك.

استخدام مشروع حالي

يمكنك أيضًا أن تطلب من الوكيل Google AI Studio توفير Cloud Firestore في مشروع Google Cloud حالي تملكه. اطلب من الوكيل استخدام مشروعك الحالي من خلال تقديم طلب مثل:

Add Firestore to this app using project PROJECT_ID.
  • سيتم توفير قاعدة بيانات Cloud Firestore جديدة في هذا المشروع باستخدام الحصة المشتركة.
  • سيتم ضبط Firebase Authentication باستخدام ميزة "تسجيل الدخول باستخدام حساب Google".
  • سيتم منح حساب الخدمة إذن الوصول إلى قاعدة بيانات Cloud Firestore. للسماح للمشرف بالوصول من Google AI Studio، سيتم منح حساب خدمة جديد باسم ais-sandbox@PROJECT_ID.iam.gservice.com إذن الوصول إلى قاعدة بيانات Cloud Firestore. هذا الحساب مرتبط فقط بتطبيقاتك على Google AI Studio.
  • القيود: إذا كان مشروع Firebase يتضمّن Cloud Firestore قاعدة بيانات، لن يتمكّن البرنامج من إضافة قاعدة بيانات أخرى. عليك إنشاء مشروع جديد فارغ لاستخدامه.

استخدام وحدة تحكّم Firebase

يمكنك الاطّلاع على بيانات تطبيقك وإعداداته في وحدة تحكّم Firebase. للوصول إلى مشاريعك المرتبطة بـ Google AI Studio، اتّبِع الخطوات التالية:

  1. انتقِل إلى Firebase console واختَر المشروع الذي يحمل التصنيف AI Studio.

  2. في لوحة التنقّل اليمنى، انقر على إنشاء > Cloud Firestore قاعدة البيانات لعرض بياناتك وتعديلها في Cloud Firestore، أو انقر على إنشاء > Authentication لضبط إعدادات Authentication وبياناتها.

تحديد المشاكل وحلّها والأسئلة الشائعة

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

كيف يتم اختيار مشروعي على Google Cloud أو Firebase؟

عند استخدام ميزة إضافة الخلفية إلى Firebase، يختار وكيل Google AI Studio تلقائيًا مشروع Firebase لاستخدامه في خدمات الخلفية لتطبيقك (Cloud Firestore وFirebase Authentication).

إذا أردت استخدام مشروع معيّن بدلاً من ذلك، يمكنك توجيه المساعد لتنفيذ ذلك من خلال طلب مثل:

Use project PROJECT_ID for the Firebase backend.

إذا قرّرت لاحقًا نشر تطبيقك على Cloud Run، من المهم مواصلة استخدام هذا المشروع نفسه. سيؤدي اختيار مشروع مختلف إلى حدوث أخطاء لأنّه لن يتطابق مع المشروع المستخدَم في الخلفية.

ما هي طرق المصادقة المتاحة؟

يُعدّ وكيل Google AI Studio ميزة "تسجيل الدخول باستخدام حساب Google" عند استخدام ميزة إضافة خلفية Firebase. لإعداد طرق إضافية، فعِّلها في وحدة تحكّم Firebase واطلب المساعدة من وكيل Google AI Studio لتعديل قاعدة الرموز البرمجية.

هل يمكنني إنشاء تطبيق متوافق مع الأجهزة الجوّالة (مثل Android أو iOS) باستخدام Google AI Studio؟

في الوقت الحالي، يمكن Google AI Studio إنشاء تطبيقات ويب فقط. يمكنك الاطّلاع على مزيد من المعلومات حول الميزات المتوفّرة في مستندات وكيل Google AI Studio.

يُرجى العِلم أنّه يمكن الوصول إلى التطبيقات التي تم إنشاؤها باستخدام Google AI Studio كتطبيقات ويب متوافقة مع الأجهزة الجوّالة من المتصفّحات المثبّتة على الأجهزة الجوّالة، تمامًا مثل جميع تطبيقات الويب.

ما هو ملف firebase-blueprint.json؟

هذا ملف وسيط يستخدمه وكيل Google AI Studio لفهم قاعدة الرموز البرمجية لتطبيقك. لا تعدِّل هذا الملف يدويًا، لأنّ ذلك قد يؤدي إلى أن ينشئ الوكيل رمزًا غير صحيح أو Security Rules غير آمن.

ماذا أفعل إذا تلقّيت رسالة الخطأ "تم تجاوز الحصة المخصّصة"؟

يعني بلوغ الحد الأقصى للحصة Cloud Firestore أنّ تطبيقك قد وصل إلى الحد الأقصى للاستخدام اليومي لقاعدة بيانات Cloud Firestore ضمن مجموعة الحصص المشتركة. هناك طريقتان لحلّ هذه المشكلة:

  • الخيار 1: الانتظار: تتم إعادة ضبط الحصص يوميًا في منتصف الليل بتوقيت المحيط الهادئ.
  • الخيار 2: الترقية: يمكنك الترقية إلى خطة Blaze المَرِنة للدفع حسب الاستخدام.

ماذا أفعل إذا تلقّيت رسالة الخطأ "الأذونات غير متوفّرة أو غير كافية"؟

يحدث هذا الخطأ عندما يحاول تطبيقك قراءة البيانات أو كتابتها في قاعدة بيانات Cloud Firestore، ولكن يتم رفض الطلب من خلال Security Rules. يشير ذلك إلى أنّ Security Rules لا تسمح بتنفيذ العملية المطلوبة استنادًا إلى حالة المصادقة الحالية أو مسار البيانات. انقر على الزر إصلاح الخطأ لطلب المساعدة من وكيل Google AI Studio في محاولة تصحيح Security Rules.

ماذا يحدث لخادم Firebase الخلفي عند حذف تطبيق Google AI Studio؟

لا يؤدي حذف تطبيقك في Google AI Studio إلى حذف مشروع Firebase المرتبط أو قاعدة بيانات Cloud Firestore أو إعدادات Firebase Authentication تلقائيًا.

إذا أضفت خادمًا خلفيًا في Firebase، عليك الانتقال يدويًا إلى وحدة تحكّم Firebase وحذف المشروع أو تنظيف الموارد الفردية (مثل مثيل قاعدة بيانات Cloud Firestore وموفّري Authentication) لضمان إزالة جميع البيانات وعمليات الإعداد.

هل يمكن لوكيل Google AI Studio حذف البيانات أو تعديلها في قاعدة بيانات Cloud Firestore؟

تم تصميم الوكيل Google AI Studio للمساعدة في توفير موارد الخلفية اللازمة وإنشاء الرموز وSecurity Rules. على الرغم من أنّ البرنامج نفسه لا يمكنه حذف إدخالات البيانات أو تعديلها أو التعامل معها مباشرةً في قاعدة بيانات Cloud Firestore، إلا أنّه يمكنه كتابة رمز في تطبيقك الصغير مصمّم لتنفيذ هذه الإجراءات. لتنفيذ مهام إدارة البيانات، مثل حذف الإدخالات، انتقِل إلى صفحة قاعدة بيانات Cloud Firestore في وحدة تحكّم Firebase.

أنا أنتمي إلى مؤسسة تستخدم Google Cloud. هل يمكنني ربط تطبيق Google AI Studio بمشروع حالي ضمن بيئة Google Cloud الخاصة بمؤسستي؟

تأكَّد من وضع مشروع Firebase ضمن مجلد Google Cloudمؤسسة معيّنة:

  1. أنشئ مشروع Firebase يدويًا مسبقًا.

  2. عند إعداد الخلفية المستندة إلى Firebase في Google AI Studio، اطلب من الوكيل استخدام مشروعك الحالي:

    Add Firestore to this app using project PROJECT_ID.
    

لماذا لا يمكنني العثور على مستندات معيّنة في وحدة تحكّم Firebase؟

عندما يحفظ وكيل AI Studio البيانات في مسار متداخل (مثل /users/user1/messages/msg1) بدون إنشاء المستند الرئيسي أولاً (user1)، ينشئ ما يُعرف باسم المستند الرئيسي غير الموجود. لا يتم عرض هذه المستندات في وحدة تحكّم Firebase، ما قد يصعّب العثور عليها عند تصفّح قاعدة بيانات Cloud Firestore. على الرغم من أنّ هذا لا يؤثر في طريقة تشغيل تطبيقك، يمكنك غالبًا وصف المشكلة لبرنامج AI Studio لكي يطلب إنشاء المستندات الرئيسية الناقصة.

لمزيد من التفاصيل، يُرجى الاطّلاع على المستندات الرئيسية غير المتوفّرة.

كيف تستخدم Google بياناتي (مثل الرموز والطلبات) في Google AI Studio؟

يُرجى الرجوع إلى بنود الخدمة الإضافية في Gemini API للحصول على تفاصيل حول كيفية استخدام بياناتك.

تلقّيت رسالة إلكترونية من Google Cloud بشأن "مفتاح Google API متاح للجميع لمشروعك Google Cloud". ما هو الإجراء الواجب اتّخاذه؟

إذا تلقّيت رسالة إلكترونية من Google Cloud بشأن "مفتاح Google API متاح للجميع لمشروعك Google Cloud" وكان مفتاح API المُدرَج في الرسالة الإلكترونية هو مفتاح Firebase API، تأكَّد من أنّ مفتاح API يستوفي المتطلبات التالية ليكون من الآمن تضمينه في الرموز أو ملفات الإعداد. يمكنك التحقّق مما يلي في لوحة واجهات برمجة التطبيقات والخدمات > بيانات الاعتماد في وحدة تحكّم Google Cloud.

تأكَّد أيضًا من استخدام Firebase Security Rules وApp Check على النحو الموصى به لمنتجات Firebase التي تستخدمها.

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