پروژه های Firebase را درک کنید

این صفحه مروری کوتاه بر چندین مفهوم مهم در مورد پروژه های Firebase دارد. در صورت وجود ، پیوندها را دنبال کنید تا اطلاعات دقیق تری در مورد ویژگی ها ، خدمات و حتی سیستم عامل های دیگر پیدا کنید. در پایین این صفحه، پیدا کردن یک لیست از بهترین شیوه کلی برای پروژه های فایربیس.

ارتباط بین پروژه ها ، برنامه ها و محصولات Firebase

یک پروژه Firebase نهاد سطح بالایی برای Firebase است. در یک پروژه ، شما با ثبت برنامه های iOS ، Android یا وب خود برنامه های Firebase ایجاد می کنید. بعد از اینکه شما برنامه های خود را برای ثبت نام اینجا با Firebase، شما می توانید SDK ها فایربیس برای هر تعداد از اضافه محصولات فایربیس ، مانند تجزیه و تحلیل ترافیک، ابر Firestore، نظارت بر عملکرد، و یا از راه دور پیکربندی.

بدانید اطلاعات بیشتر در مورد این فرآیند در راهنماهای شروع ( در iOS | آندروید | وب | وحدت | C ++ ).

رابطه بین پروژه های Firebase و Google Cloud

هنگامی که شما یک پروژه فایربیس جدید در فایربیس کنسول ایجاد، شما در واقع ایجاد یک پروژه گوگل ابر در پشت صحنه. شما می توانید یک پروژه Google Cloud را به عنوان یک ظرف مجازی برای داده ها ، کد ، پیکربندی و خدمات در نظر بگیرید. پروژه Firebase پروژه Google Cloud است که دارای پیکربندی ها و خدمات اضافی خاص Firebase است. حتی می توانید ابتدا یک پروژه Google Cloud ایجاد کنید ، سپس بعدا Firebase را به پروژه اضافه کنید.

از آنجا که یک پروژه فایربیس یک پروژه در Google Cloud:

راه اندازی یک پروژه Firebase و ثبت برنامه ها

شما می توانید راه اندازی یک پروژه فایربیس و ثبت نام برنامه ها در فایربیس کنسول (یا، در موارد استفاده پیشرفته، از طریق فایربیس مدیریت REST API یا فایربیس CLI ). هنگام راه اندازی پروژه و ثبت برنامه ها ، باید تصمیماتی سازمانی بگیرید و اطلاعات پیکربندی مخصوص Firebase را به پروژه های محلی خود اضافه کنید.

اطمینان حاصل کنید که به بررسی برخی از کلی پروژه در سطح بهترین شیوه (در پایین این صفحه) قبل از راه اندازی یک پروژه و ثبت برنامه های.

نام پروژه

هنگامی که شما یک پروژه ایجاد کنید، شما یک نام پروژه فراهم می کند. این شناسه به نام فقط داخلی برای یک پروژه در است فایربیس کنسول از ابر کنسول گوگل ، و فایربیس CLI . نام پروژه در هیچ محصول ، سرویس یا منبع Firebase یا Google Cloud که در معرض دید عموم است قرار ندارد. این به سادگی به شما کمک می کند تا به راحتی بتوانید از بین چندین پروژه متمایز شوید.

شما می توانید یک نام پروژه در هر زمان در ویرایش تنظیمات پروژه از کنسول فایربیس. نام پروژه در پنجره بالا نمایش داده می شود.

شماره پروژه

فایربیس پروژه (و آن ارتباط پروژه ابری Google ) دارای تعداد پروژه. این شناسه متعارف جهانی منحصر به فرد Google برای پروژه است. هنگام پیکربندی ادغام ها و / یا برقراری تماس های API با Firebase ، Google یا سرویس های شخص ثالث از این شناسه استفاده کنید.

تماسهای API و شماره پروژه

برای بسیاری از تماس های API ، باید یک شناسه منحصر به فرد برای یک پروژه داشته باشید. اگر چه بسیاری از رابط های برنامه کاربردی را قبول شناسه پروژه ، توصیه می شود که شما با استفاده از تعداد پروژه برای برقراری تماس API به فایربیس، گوگل، یا خدمات شخص ثالث.

اطلاعات بیشتر در مورد استفاده از شناسههای پروژه، به ویژه تعداد پروژه، در گوگل AIP 2510 استاندارد .

شماره پروژه را پیدا کنید

  • کنسول فایربیس: کلیک کنید تنظیمات پروژه . شماره پروژه در پنجره بالا نمایش داده می شود.

  • فایربیس CLI: اجرای firebase projects:list . شماره پروژه همراه با تمام پروژه های Firebase مرتبط با حساب شما نمایش داده می شود.

  • فایربیس مدیریت REST API: تماس projects.list . بدن پاسخ شامل تعداد پروژه در FirebaseProject شی.

شناسه پروژه

فایربیس پروژه (و آن ارتباط پروژه ابری Google ) دارای یک ID پروژه. این یک شناسه منحصر به فرد تعریف شده توسط کاربر برای پروژه در کل Firebase و Google Cloud است. هنگام ایجاد یک پروژه Firebase ، Firebase به طور خودکار یک شناسه منحصر به فرد به پروژه اختصاص می دهد ، اما می توانید آن را در هنگام راه اندازی پروژه ویرایش کنید. این شناسه معمولاً باید به عنوان نام مستعار راحتی برای ارجاع به پروژه تلقی شود.

اگر پروژه ای را حذف کنید ، شناسه پروژه نیز حذف می شود و هرگز پروژه دیگری نمی تواند از آن استفاده کند.

منابع Firebase و شناسه پروژه

شناسه پروژه در منابع Firebase که به صورت عمومی قابل مشاهده هستند نمایش داده می شود ، به عنوان مثال:

  • به طور پیش فرض میزبانی دامنه - PROJECT_ID .web.app و PROJECT_ID .firebaseapp.com
  • به طور پیش فرض بیدرنگ URL پایگاه داده - PROJECT_ID -default-rtdb.firebaseio.com یا PROJECT_ID -default-rtdb. REGION_CODE .firebasedatabase.app
  • به طور پیش فرض ذخیره سازی ابر نام سطل - PROJECT_ID .appspot.com

برای همه منابع فوق ، می توانید موارد غیر پیش فرض ایجاد کنید. نامهای غیر قابل پیش فرض که به صورت عمومی قابل مشاهده هستند کاملا قابل تنظیم هستند. شما می توانید دامنههای سفارشی اتصال به یک سایت فایربیس میزبانی، سفال پایگاه داده بیدرنگ ، و ایجاد چند سطل ابر ذخیره سازی (بازدید از صفحه پلت فرم خاص شروع به کار).

Firebase CLI و شناسه پروژه

برای برخی موارد استفاده ، ممکن است چندین پروژه Firebase مرتبط با همان فهرست برنامه محلی داشته باشید. در این شرایط، هنگام استفاده از فایربیس CLI ، شما نیاز به تصویب --project پرچم با firebase دستورات به برقراری ارتباط است که پروژه فایربیس شما می خواهید به تعامل با.

شما همچنین می توانید راه اندازی مستعار پروژه برای هر پروژه فایربیس به طوری که شما لازم نیست که به یاد داشته باشید شناسه پروژه.

تماسهای API و شناسه پروژه

برای بسیاری از تماس های API ، باید یک شناسه منحصر به فرد برای یک پروژه داشته باشید. اگر چه بسیاری از رابط های برنامه کاربردی ID پروژه قبول، آن را توصیه می شود که شما با استفاده از تعداد پروژه برای برقراری تماس API به فایربیس، گوگل، یا خدمات شخص ثالث.

اطلاعات بیشتر در مورد استفاده از شناسههای پروژه، به ویژه تعداد پروژه، در گوگل AIP 2510 استاندارد .

شناسه پروژه را پیدا کنید

  • کنسول فایربیس: کلیک کنید تنظیمات پروژه . شناسه پروژه در پنجره بالا نمایش داده می شود.

  • فایربیس CLI: اجرای firebase projects:list . شناسه پروژه به همراه کلیه پروژه های Firebase مرتبط با حساب شما نمایش داده می شود.

  • فایربیس مدیریت REST API: تماس projects.list . بدن پاسخ شامل شناسه پروژه در FirebaseProject شی.

Firebase فایلها و اشیا را پیکربندی کنید

هنگام ثبت یک برنامه با یک پروژه Firebase ، کنسول Firebase یک فایل پیکربندی Firebase (برنامه های iOS / Android) یا یک شی پیکربندی (برنامه های وب) فراهم می کند که مستقیماً به فهرست برنامه محلی خود اضافه می کنید.

  • برای برنامه های iOS، شما اضافه کردن یک GoogleService-Info.plist فایل پیکربندی است.
  • برای برنامه های آندروید، شما اضافه کردن یک google-services.json فایل پیکربندی است.
  • برای برنامه های وب ، شما یک شی conf پیکربندی Firebase اضافه می کنید.

در هر زمان، شما می توانید فایربیس فایل پیکربندی یک برنامه و یا شی به دست آوردن .

یک فایل پیکربندی یا شی Fire Firebase یک برنامه را با یک پروژه خاص Firebase و منابع آن (پایگاه داده ، سطل ذخیره سازی و غیره) مرتبط می کند. این پیکربندی شامل "گزینه های Firebase" است که پارامترهای مورد نیاز Firebase و سرویس های Google برای ارتباط با API های سرور Firebase و مرتبط کردن داده های مشتری با پروژه Firebase و برنامه Firebase است. در اینجا حداقل "گزینه های Firebase" مورد نیاز است:

  • کلید API : ساده رمزگذاری رشته استفاده می شود هنگام فراخوانی API های خاص که برای دسترسی به داده های کاربر خصوصی لازم نیست (به عنوان مثال ارزش: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO )

  • پروژه ID : شناسه منحصر به فرد تعریف شده توسط کاربر برای این پروژه در تمام فایربیس و Google Cloud. این شناسه ممکن است در URL ها یا نام برخی از منابع Firebase وجود داشته باشد ، اما به طور کلی باید به عنوان نام مستعار راحتی برای ارجاع به پروژه رفتار شود. (به عنوان مثال ارزش: myapp-project-123 )

  • شناسه برنامه ( "شناسه"): شناسه منحصر به فرد برای نرم افزار فایربیس در تمام فایربیس با فرمت پلت فرم خاص:

    • فایربیس در iOS برنامه: GOOGLE_APP_ID (به عنوان مثال ارزش: 1:1234567890:ios:321abc456def7890 )
      این یک بسته نرم افزاری ID اپل نیست.
    • فایربیس برنامه های آندروید: mobilesdk_app_id (به عنوان مثال ارزش: 1:1234567890:android:321abc456def7890 )
      این یک نام بسته Android یا ID نرم افزار آندروید است.
    • برنامه های فایربیس وب: appId (به عنوان مثال ارزش: 1:65211879909:web:3ae38ef1cdcb2e01fe5f0c )

محتوای فایل یا شی پیکربندی Firebase عمومی در نظر گرفته می شود ، از جمله شناسه ویژه پلتفرم برنامه (شناسه بسته نرم افزاری iOS یا نام بسته Android) و مقادیر خاص پروژه Firebase ، مانند کلید API ، شناسه پروژه ، URL پایگاه داده در زمان واقعی و نام سطل ذخیره سازی Cloud. با توجه به این، استفاده از قوانین فایربیس امنیتی برای محافظت از اطلاعات و فایل های خود را در پایگاه بیدرنگ ، ابر Firestore ، و ابر ذخیره سازی .

برای پروژه های متن باز ، ما معمولاً قرار دادن فایل پیکربندی یا شی Firebase برنامه را در کنترل منبع توصیه نمی کنیم زیرا ، در بیشتر موارد ، کاربران شما باید پروژه های Firebase خود را بسازند و برنامه های خود را به منابع Firebase خود (از طریق پیکربندی Firebase خودشان) نشان دهند پرونده یا شی).

مدیریت یک پروژه Firebase

اطمینان حاصل کنید که به بررسی کلی پروژه در سطح بهترین شیوه (در پایین این صفحه) برای ملاحظات است که ممکن است تحت تاثیر قرار دهد چگونه شما را مدیریت یک پروژه فایربیس.

ابزارهایی برای مدیریت یک پروژه

کنسول Firebase

فایربیس کنسول پیشنهادات ثروتمندترین محیط زیست برای مدیریت محصولات فایربیس، برنامهها و تنظیمات پروژه در سطح.

کنسول Firebase - صفحه نمای کلی پروژه

پانل سمت چپ کنسول ، محصولات Firebase را که توسط دسته های سطح بالا سازماندهی شده اند ، لیست می کند. در بالای پانل سمت چپ، دسترسی به تنظیمات یک پروژه را با کلیک کردن . تنظیمات یک پروژه شامل یکپارچگی ، مجوزهای دسترسی ، و صدور صورت حساب .

در وسط کنسول دکمه هایی نمایش داده می شود که گردش کار راه اندازی را برای ثبت انواع برنامه ها راه اندازی می کند. بعد از شروع استفاده از Firebase ، ناحیه اصلی کنسول به داشبوردی تغییر می کند که آمار محصولات مورد استفاده شما را نشان می دهد.

Firebase CLI (ابزاری برای خط فرمان)

فایربیس نیز ارائه می دهد فایربیس CLI برای پیکربندی و مدیریت خاص محصولات فایربیس، مانند فایربیس میزبانی و توابع Cloud برای فایربیس.

پس از نصب CLI، شما دسترسی به داشته جهانی firebase فرمان . استفاده از CLI به پیوند دایرکتوری برنامه های محلی خود را به یک پروژه فایربیس ، پس از آن استقرار نسخه های جدید از محتوای فایربیس میزبانی و یا به روز رسانی به توابع.

Firebase Management REST API

با استفاده از API REST فایربیس مدیریت ، شما می توانید از طریق برنامه نویسی مدیریت یک پروژه فایربیس. برای مثال، شما می توانید یک برنامه برنامه نویسی با یک پروژه ثبت نام کنید یا لیست برنامه های که قبلا ثبت نام ( در iOS | آندروید | وب ).

بهترین روشهای عمومی

افزودن برنامه ها به یک پروژه

اطمینان حاصل شود که تمام برنامه های در یک پروژه انواع پلت فرم از همان نرم افزار از دیدگاه کاربر نهایی است. توصیه می شود نسخه های iOS ، Android و وب یک برنامه یا بازی مشابه را با همان پروژه Firebase ثبت کنید. همه برنامه های موجود در یک پروژه به طور کلی از منابع Firebase مشترک (پایگاه داده ، سطل های ذخیره سازی و غیره) مشترک هستند.

اگر شما چند ساخت انواع با IOS های مختلف بسته نرم افزاری شناسه یا نام بسته آندروید تعریف شده است، شما می توانید هر نوع با یک پروژه فایربیس جداگانه ثبت نام کنید. با این حال، اگر شما انواع که سهم منابع فایربیس همان، ثبت نام آنها با پروژه فایربیس است.

در اینجا برخی محدودیت های کلی برای پروژه ها ، برنامه ها و سایت های Firebase وجود دارد:

  • تعداد پروژه ها در هر حساب

    • طرح قیمت گذاری جرقه ای - سهمیه ایجاد پروژه به تعداد کمتری از پروژه ها محدود می شود (معمولاً در حدود 5-10).
    • طرح قیمت گذاری Blaze - سهمیه ایجاد پروژه برای هر حساب به میزان قابل توجهی افزایش می یابد تا زمانی که حساب Cloud Billing مرتبط باشد.

    در حد سهمیه پروژه ایجاد ندرت نگران برای بسیاری از توسعه دهندگان، اما در صورت نیاز، شما می توانید افزایش سهمیه پروژه درخواست .

    توجه داشته باشید که حذف کامل پروژه به 30 روز زمان نیاز دارد و تا زمانی که پروژه به طور کامل حذف شود ، در سهمیه پروژه حساب می شود.

  • تعداد برنامه ها در هر پروژه

    Firebase تعداد کل برنامه های Firebase را در یک پروژه Firebase به 30 مورد محدود می کند.

    شما باید اطمینان حاصل کنید که همه برنامه های Firebase در یک پروژه Firebase تنها از نظر کاربر نهایی ، نسخه های پلتفرم همان برنامه هستند. اطلاعات بیشتر در مورد بهترین شیوه برای چند اجاره زیر کلیک کنید.

    اطلاعات بیشتر در مورد بدانید محدودیتی در برنامه های هر پروژه در پرسش و پاسخ.

  • تعداد سایت های میزبان در هر پروژه

    فایربیس میزبانی قابلیت شبکه پشتیبانی از حداکثر 36 سایت در هر پروژه.

چند اجاره ای

اتصال چندین برنامه و یا وب سایت مختلف از نظر منطقی و مستقل به یک پروژه Firebase (اغلب "چند اجاره ای" نامیده می شود) توصیه نمی شود. اجاره چندگانه می تواند منجر به مشکلات جدی در پیکربندی و حریم خصوصی داده ها شود ، از جمله مسائل ناخواسته با تجمیع تجزیه و تحلیل ، احراز هویت مشترک ، ساختارهای پایگاه داده بسیار پیچیده و مشکلات قوانین امنیتی.

به طور کلی، اگر مجموعه ای از برنامه های انجام داده و تنظیمات مشابه ندارند، به شدت در نظر ثبت نام هر برنامه با یک پروژه متفاوت فایربیس.

به عنوان مثال ، اگر یک برنامه برچسب سفید ایجاد کرده اید ، هر برنامه دارای برچسب مستقل باید پروژه Firebase خود را داشته باشد ، اما نسخه های iOS و Android این برچسب می توانند در همان پروژه باشند. هر برنامه دارای برچسب مستقل نباید (به دلایل حریم خصوصی) داده ها را با دیگران به اشتراک بگذارد.

راه اندازی برنامه