این صفحه مروری کوتاه بر چندین مفهوم مهم در مورد پروژه های Firebase ارائه می دهد. در صورت موجود بودن، پیوندها را دنبال کنید تا اطلاعات دقیقتری درباره ویژگیها، خدمات، ابزارها و بهترین شیوهها بیابید.
ارتباط بین پروژه ها، برنامه ها و محصولات Firebase
پروژه Firebase موجودیت سطح بالایی برای Firebase است. در یک پروژه، می توانید اپلیکیشن های اپل، اندروید یا وب خود را ثبت کنید. پس از ثبت برنامه های خود در Firebase، می توانید SDK های Firebase را برای هر تعداد از محصولات Firebase اضافه کنید، مانند Analytics ، Cloud Firestore ، Performance Monitoring یا Remote Config .
اطلاعات دقیقتری درباره این فرآیند در راهنمای شروع برای پلتفرم خود بیاموزید:
iOS+ | اندروید | وب | وحدت | C++ | بال زدن .
آشنایی با سلسله مراتب پروژه های Firebase
این نمودار سلسله مراتب اساسی یک پروژه Firebase را نشان می دهد. در اینجا روابط کلیدی وجود دارد:
پروژه Firebase مانند محفظه ای برای همه برنامه های شما و هر منبع و سرویسی است که برای پروژه ارائه شده است.
یک پروژه Firebase میتواند یک یا چند برنامه Firebase را در آن ثبت کرده باشد (برای مثال، هر دو نسخه iOS و Android یک برنامه، یا هر دو نسخه رایگان و پولی یک برنامه).
همه برنامههای Firebase در یک اشتراک پروژه Firebase ثبت شدهاند و به همه منابع و سرویسهای ارائهشده برای پروژه دسترسی دارند . در اینجا چند نمونه آورده شده است:
همه برنامههای Firebase که در پروژه Firebase یکسانی ثبت شدهاند، پشتیبانهای یکسانی دارند، مانند Firebase Hosting ، Authentication ، Realtime Database ، Cloud Firestore ، Cloud Storage و Cloud Functions .
همه برنامههای Firebase ثبتشده در یک پروژه Firebase با همان ویژگی Google Analytics مرتبط هستند، جایی که هر برنامه Firebase یک جریان داده جداگانه در آن ویژگی است.
ارتباط بین پروژه های Firebase و Google Cloud
هنگامی که یک پروژه Firebase جدید ایجاد می کنید، در واقع در پشت صحنه یک پروژه Google Cloud ایجاد می کنید. حتی میتوانید ابتدا یک پروژه Google Cloud ایجاد کنید، سپس Firebase را بعداً به پروژه اضافه کنید. میتوانید پروژه Google Cloud را به عنوان یک محفظه مجازی برای داده، کد، پیکربندی و خدمات در نظر بگیرید.
توجه داشته باشید که برای همه پروژههای Firebase، Firebase به طور خودکار یک برچسب firebase:enabled
در صفحه Labels برای پروژه شما در کنسول Google Cloud اضافه میکند. در سؤالات متداول ما درباره این برچسب بیشتر بیاموزید.
از آنجایی که یک پروژه Firebase یک پروژه Google Cloud است :
میتوانید در کنسول Firebase و همچنین در کنسول Google Cloud و کنسول Google APIs به پروژه دسترسی داشته باشید و با آن تعامل داشته باشید.
میتوانید با استفاده از Firebase CLI ، gcloud CLI و هر منبع Terraform از Google با پروژه تعامل داشته باشید.
میتوانید از محصولات و APIهای Firebase و Google Cloud در پروژه استفاده کنید.
مجوزها و نقشهای IAM برای پروژه در Firebase و Google Cloud به اشتراک گذاشته میشوند. هر گونه دسترسی یک عضو پروژه (یعنی یک اصل) به پروژه Google Cloud شما برای پروژه Firebase شما نیز اعمال خواهد شد (و بالعکس).
صورتحساب پروژه در Firebase و Google Cloud مشترک است. اگر صورتحساب در پروژه Google Cloud شما فعال باشد، پروژه Firebase شما در طرح قیمتگذاری Blaze بهصورت پرداختی Firebase قرار میگیرد.
شناسههای منحصربهفرد برای پروژه (مانند شماره پروژه و شناسه پروژه ) در Firebase و Google Cloud به اشتراک گذاشته میشوند.
هر گونه سلسله مراتب منابع اعمال شده در پروژه Google Cloud شما (به عنوان مثال، سازمان، پوشه ها و غیره) در پروژه Firebase شما نیز اعمال خواهد شد.
حذف پروژه باعث حذف آن در Firebase و Google Cloud می شود.
حذف یا تغییر یک منبع یا داده در پروژه در Firebase و Google Cloud اعمال میشود.
راه اندازی یک پروژه Firebase و ثبت برنامه ها
میتوانید یک پروژه Firebase راهاندازی کنید و برنامهها را در کنسول Firebase ثبت کنید (یا برای موارد استفاده پیشرفته، از طریق Firebase Management REST API یا Firebase CLI ). هنگامی که پروژه ای را راه اندازی می کنید و برنامه ها را ثبت می کنید، باید تصمیمات سازمانی بگیرید و اطلاعات پیکربندی خاص Firebase را به پروژه های محلی خود اضافه کنید.
برای برنامه های تولیدی، باید یک گردش کار توسعه واضح را تنظیم کنید، که معمولاً شامل استفاده از چندین محیط است. اسناد ما را در مورد گردش کار برنامهنویس ، از جمله بهترین شیوههای عمومی و دستورالعملهای امنیتی عمومی برای راهاندازی پروژههای Firebase و ثبت برنامهها برای ایجاد گردش کار توسعه خود، مرور کنید.
تعامل با پروژه Firebase
علاوه بر SDK های محصول، می توانید مستقیماً با یک پروژه Firebase با استفاده از چندین ابزار و رابط مختلف تعامل داشته باشید.
کنسول Firebase
کنسول Firebase غنی ترین محیط را برای مدیریت محصولات، برنامه ها و تنظیمات سطح پروژه Firebase ارائه می دهد.
پنل سمت چپ کنسول، محصولات Firebase را فهرست میکند که بر اساس دستههای سطح بالا سازماندهی شدهاند. در بالای پانل سمت چپ، با کلیک کردن روی ادغام ، مجوزهای دسترسی و صورتحساب است.
به تنظیمات پروژه دسترسی پیدا کنید. تنظیمات پروژه شاملوسط کنسول دکمههایی را نشان میدهد که گردشهای کاری راهاندازی را برای ثبت انواع مختلف برنامهها راهاندازی میکنند. پس از شروع استفاده از Firebase، قسمت اصلی کنسول به داشبوردی تبدیل میشود که آمار محصولات مورد استفاده شما را نمایش میدهد.
توجه داشته باشید که از آنجایی که یک پروژه Firebase نیز یک پروژه Google Cloud است، ممکن است متوجه شوید که وظایف یا محصولات مختلف شما را ملزم به استفاده از کنسول Google Cloud به جای کنسول Firebase می کند.
Firebase CLI (ابزار خط فرمان)
Firebase همچنین Firebase CLI را برای پیکربندی و مدیریت محصولات خاص Firebase، مانند Firebase Hosting ، Cloud Functions for Firebase ، و Firebase Extensions ارائه میکند.
پس از نصب CLI، به فرمان جهانی firebase
دسترسی دارید. از CLI برای پیوند دایرکتوری برنامه محلی خود به پروژه Firebase استفاده کنید، سپس نسخههای جدید محتوای میزبانی شده توسط Firebase یا بهروزرسانیها را برای توابع اجرا کنید .
Firebase Management REST API
با استفاده از Firebase Management REST API ، میتوانید یک پروژه Firebase را به صورت برنامهنویسی مدیریت کنید. به عنوان مثال، میتوانید برنامهای را بهصورت برنامهنویسی با یک پروژه ثبت کنید یا برنامههایی را که قبلاً ثبت شدهاند فهرست کنید ( iOS+ | Android | وب ).
شناسه های پروژه Firebase
یک پروژه Firebase را می توان در باطن Firebase و در رابط های توسعه دهنده مختلف با استفاده از شناسه های مختلف از جمله نام پروژه ، شماره پروژه و شناسه پروژه شناسایی کرد.
نام پروژه
هنگامی که یک پروژه ایجاد می کنید، نام پروژه را ارائه می دهید. این شناسه تنها نام داخلی پروژه در کنسول Firebase ، کنسول Google Cloud و Firebase CLI است. نام پروژه در هیچ محصول، سرویس یا منبع Firebase یا Google Cloud بهطور عمومی قابل مشاهده نیست. این به سادگی به شما کمک می کند تا به راحتی بین چندین پروژه تمایز قائل شوید.
میتوانید نام پروژه را در هر زمان در تنظیمات پروژه کنسول Firebase ویرایش کنید. نام پروژه در قسمت بالای صفحه نمایش داده می شود.
شماره پروژه
یک پروژه Firebase (و پروژه Google Cloud مرتبط با آن) دارای شماره پروژه است. این شناسه متعارف جهانی منحصربفرد گوگل برای پروژه است. هنگام پیکربندی یکپارچهسازیها و/یا برقراری تماسهای API با Firebase، Google یا سرویسهای شخص ثالث از این شناسه استفاده کنید.
شما نمی توانید شماره پروژه را ویرایش کنید. اگر پروژه ای را حذف کنید، شماره پروژه نیز حذف می شود و دیگر هیچ پروژه دیگری نمی تواند از آن استفاده کند.
با استفاده از یکی از این گزینه ها، شماره پروژه پروژه Firebase خود را پیدا کنید:
استفاده از کنسول Firebase : روی تنظیمات پروژه کلیک کنید. شماره پروژه در قسمت بالای صفحه نمایش داده می شود.
استفاده از Firebase CLI :
firebase projects:list
را اجرا کنید. شماره پروژه همراه با تمام پروژه های Firebase مرتبط با حساب شما نمایش داده می شود.با استفاده از Firebase Management REST API :
projects.list
فراخوانی کنید. بدنه پاسخ شامل شماره پروژه در شیFirebaseProject
است.
برای بسیاری از تماس های API، باید یک شناسه منحصر به فرد برای یک پروژه قرار دهید. اگرچه بسیاری از APIها شناسه پروژه را میپذیرند، توصیه میشود از شماره پروژه برای برقراری تماسهای API با Firebase، Google یا سرویسهای شخص ثالث استفاده کنید.
درباره استفاده از شناسه های پروژه، به ویژه شماره پروژه، در استاندارد AIP 2510 Google بیشتر بیاموزید.
شناسه پروژه
پروژه Firebase (و پروژه Google Cloud مرتبط با آن) دارای شناسه پروژه است. این یک شناسه منحصر به فرد تعریف شده توسط کاربر برای پروژه در تمام Firebase و Google Cloud است. هنگامی که یک پروژه Firebase ایجاد می کنید، Firebase به طور خودکار یک شناسه منحصر به فرد را به پروژه اختصاص می دهد، اما می توانید آن را در طول راه اندازی پروژه ویرایش کنید. این شناسه به طور کلی باید به عنوان یک نام مستعار مناسب برای ارجاع به پروژه در نظر گرفته شود.
ID پروژه پروژه Firebase خود را با استفاده از یکی از این گزینه ها پیدا کنید:
استفاده از کنسول Firebase : روی تنظیمات پروژه کلیک کنید. شناسه پروژه در قسمت بالای صفحه نمایش داده می شود.
استفاده از Firebase CLI :
firebase projects:list
را اجرا کنید. شناسه پروژه همراه با تمام پروژه های Firebase مرتبط با حساب شما نمایش داده می شود.با استفاده از Firebase Management REST API :
projects.list
فراخوانی کنید. بدنه پاسخ شامل شناسه پروژه در شیFirebaseProject
است.
ID پروژه در منابع Firebase قابل مشاهده برای عموم نمایش داده می شود، به عنوان مثال:
- زیر دامنه Hosting پیش فرض —
PROJECT_ID .web.app
وPROJECT_ID .firebaseapp.com
- URL Realtime Database پیش فرض —
PROJECT_ID -default-rtdb.firebaseio.com
یاPROJECT_ID -default-rtdb. REGION_CODE .firebasedatabase.app
- نام پیشفرض سطل Cloud Storage —
PROJECT_ID .appspot.com
برای همه منابع ذکر شده، می توانید نمونه های غیر پیش فرض ایجاد کنید. نامهای قابل مشاهده عمومی غیر پیشفرضها کاملاً قابل تنظیم هستند. میتوانید دامنههای سفارشی را به یک سایت میزبانی شده توسط Firebase متصل کنید ، Realtime Database خرد کنید و چندین سطل Cloud Storage ایجاد کنید (به صفحه شروع ویژه پلتفرم مراجعه کنید).
برای برخی موارد استفاده، ممکن است چندین پروژه Firebase مرتبط با یک فهرست برنامه محلی داشته باشید. در این مواقع، وقتی از Firebase CLI استفاده میکنید، باید پرچم --project
را با دستورات firebase
ارسال کنید تا با کدام پروژه Firebase ارتباط برقرار کنید.
همچنین می توانید برای هر پروژه Firebase یک نام مستعار پروژه تنظیم کنید تا مجبور نباشید شناسه پروژه را به خاطر بسپارید.
برای بسیاری از تماس های API، باید یک شناسه منحصر به فرد برای یک پروژه قرار دهید. اگرچه بسیاری از APIها شناسه پروژه را میپذیرند، توصیه میشود از شماره پروژه برای برقراری تماسهای API با Firebase، Google یا سرویسهای شخص ثالث استفاده کنید.
درباره استفاده از شناسه های پروژه، به ویژه شماره پروژه، در استاندارد AIP 2510 Google بیشتر بیاموزید.
فایل ها و اشیاء پیکربندی Firebase
وقتی یک برنامه را با پروژه Firebase ثبت میکنید، کنسول Firebase یک فایل پیکربندی Firebase (برنامههای Apple/Android) یا یک شی پیکربندی (برنامههای وب) را ارائه میکند که مستقیماً به فهرست برنامه محلی خود اضافه میکنید.
- برای برنامه های اپل، یک فایل پیکربندی
GoogleService-Info.plist
اضافه می کنید. - برای برنامههای Android، یک فایل پیکربندی
google-services.json
اضافه میکنید. - برای برنامه های وب، یک شی پیکربندی Firebase را اضافه می کنید.
در هر زمانی، میتوانید فایل پیکربندی Firebase یا شیء یک برنامه را دریافت کنید .
یک فایل یا شیء پیکربندی Firebase یک برنامه را با یک پروژه خاص Firebase و منابع آن (پایگاه های داده، سطل های ذخیره سازی و غیره) مرتبط می کند. این پیکربندی شامل «گزینههای Firebase» است، که پارامترهایی هستند که توسط Firebase و سرویسهای Google برای برقراری ارتباط با APIهای سرور Firebase و مرتبط کردن دادههای مشتری با پروژه Firebase و برنامه Firebase مورد نیاز هستند. در اینجا حداقل "گزینه های Firebase" مورد نیاز آمده است:
کلید API : یک رشته رمزگذاری شده ساده که هنگام فراخوانی API های خاصی که نیازی به دسترسی به داده های کاربر خصوصی ندارند استفاده می شود (مقدار مثال:
AIzaSyDOCAbC123dEf456GhI789jKl012-MnO
)شناسه پروژه : یک شناسه منحصر به فرد تعریف شده توسط کاربر برای پروژه در تمام Firebase و Google Cloud . این شناسه ممکن است در URL ها یا نام برخی از منابع Firebase ظاهر شود، اما معمولاً باید به عنوان نام مستعار مناسب برای ارجاع به پروژه در نظر گرفته شود. (مقدار مثال:
myapp-project-123
)شناسه برنامه ("AppID") : شناسه منحصر به فرد برای برنامه Firebase در تمام Firebase با یک قالب خاص پلت فرم:
- برنامههای اپل Firebase:
GOOGLE_APP_ID
(مقدار مثال:1:1234567890:ios:321abc456def7890
)
این یک ID باندل اپل نیست . - برنامههای اندروید Firebase:
mobilesdk_app_id
(مقدار مثال:1:1234567890:android:321abc456def7890
)
این نام بسته Android یا شناسه برنامه Android نیست . - برنامههای وب Firebase:
appId
(مقدار مثال:1:65211879909:web:3ae38ef1cdcb2e01fe5f0c
)
- برنامههای اپل Firebase:
محتوای فایل پیکربندی Firebase یا شیء عمومی در نظر گرفته می شود، از جمله شناسه مخصوص پلتفرم برنامه (Apple bundle ID یا نام بسته Android) و مقادیر خاص پروژه Firebase، مانند کلید API، شناسه پروژه، URL Realtime Database ، و نام سطل Cloud Storage . با توجه به این موضوع، از Firebase Security Rules برای محافظت از داده ها و فایل های خود در Realtime Database ، Cloud Firestore و Cloud Storage استفاده کنید.
برای پروژههای منبع باز، ما معمولاً گنجاندن فایل پیکربندی Firebase یا شیء برنامه را در کنترل منبع توصیه نمیکنیم، زیرا در بیشتر موارد، کاربران شما باید پروژههای Firebase خود را ایجاد کنند و برنامههای خود را به منابع Firebase خود (از طریق پیکربندی Firebase خود) هدایت کنند. فایل یا شی).
محدودیت های عمومی برای پروژه ها، برنامه ها و سایت های Firebase
در اینجا برخی از محدودیت های کلی برای پروژه ها، برنامه ها و سایت های Firebase آورده شده است:
تعداد پروژه ها در هر حساب
- طرح قیمت گذاری جرقه - سهمیه ایجاد پروژه به تعداد کمتری از پروژه ها (معمولاً حدود 5-10) محدود می شود.
- طرح قیمت گذاری Blaze - تا زمانی که حساب Cloud Billing مرتبط در وضعیت خوبی باشد، سهمیه ایجاد پروژه در هر حساب به طور قابل توجهی افزایش می یابد.
محدودیت در سهمیه ایجاد پروژه به ندرت برای اکثر توسعه دهندگان نگران کننده است، اما در صورت نیاز، می توانید درخواست افزایش سهمیه پروژه را داشته باشید .
توجه داشته باشید که حذف کامل یک پروژه به 30 روز زمان نیاز دارد و تا زمانی که پروژه به طور کامل حذف شود جزء سهمیه پروژه محسوب می شود.
تعداد برنامه ها در هر پروژه
Firebase تعداد کل برنامه های Firebase را در پروژه Firebase به 30 محدود می کند.
باید اطمینان حاصل کنید که همه برنامههای Firebase در یک پروژه Firebase، انواع پلتفرم یک برنامه از دیدگاه کاربر نهایی هستند. در اسناد بهترین شیوه های ما درباره چند اجاره ای بیشتر بخوانید.
در بخش سؤالات متداول درباره محدودیت برنامهها در هر پروژه بیشتر بدانید.
تعداد سایت های Hosting در هر پروژه
ویژگی Firebase Hosting چند سایتی حداکثر از 36 سایت در هر پروژه پشتیبانی می کند.
در حال راه اندازی برنامه شما
- هشدارهای بودجه را برای پروژه خود در کنسول Google Cloud تنظیم کنید.
- داشبورد استفاده و صورتحساب را در کنسول Firebase نظارت کنید تا تصویری کلی از استفاده از پروژه خود در چندین سرویس Firebase داشته باشید.
- چک لیست راه اندازی Firebase را مرور کنید.