Общие рекомендации по настройке проектов Firebase

На этой странице представлены общие рекомендации высокого уровня по настройке проектов Firebase и регистрации ваших приложений в проекте, чтобы у вас был четкий рабочий процесс разработки с использованием разных сред. Ознакомившись с рекомендациями на этой странице, ознакомьтесь с нашими общими рекомендациями по безопасности .

Понимание иерархии проектов Firebase

Схема, показывающая базовую иерархию проекта 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 представляет собой отдельный поток данных в этом ресурсе.

Какое место в этой иерархии занимает проект Google Cloud?

Один из аспектов иерархии проектов Firebase, который не показан на приведенной выше диаграмме, — это связь с проектом Google Cloud. Проект Firebase на самом деле является просто проектом Google Cloud, для которого включены дополнительные конфигурации и сервисы, специфичные для Firebase . Обратите внимание, что все приложения, зарегистрированные в одном и том же проекте Firebase, также имеют доступ ко всем одним и тем же ресурсам и службам Google Cloud.

Узнайте больше о взаимоотношениях Firebase и Google Cloud в разделе Общие сведения о проектах Firebase.

Регистрация вариантов приложения в проектах Firebase

Вот несколько важных советов по регистрации вариантов вашего приложения в проекте Firebase:

  • Убедитесь, что все приложения, зарегистрированные в проекте Firebase, являются вариантами платформы одного и того же приложения с точки зрения конечного пользователя. Зарегистрируйте iOS, Android и веб-версии одного и того же приложения или игры в одном проекте Firebase.

  • Если у вас есть несколько вариантов сборки, которые могут использовать одни и те же ресурсы Firebase , зарегистрируйте варианты в одном и том же проекте Firebase. Некоторые примеры — это блог и веб-приложение в одном проекте или бесплатная и платная версии одного и того же приложения в одном проекте.

  • Если у вас есть несколько вариантов сборки, основанных на статусе выпуска (а не на общих действиях или доступе конечных пользователей, как указано выше), зарегистрируйте каждый вариант в отдельном проекте Firebase. Примером может служить ваша сборка отладки и выпуска — зарегистрируйте каждую из этих сборок в своем собственном проекте Firebase.

    • Сборки, основанные на статусе выпуска, не должны использовать одни и те же ресурсы Firebase, потому что это может привести к тому, что ваши отладочные данные загрязнят или даже переопределят ваши рабочие данные.

    • Варианты платформы каждого из этих вариантов сборки должны находиться в одном и том же проекте Firebase. Например, зарегистрируйте отладочные сборки iOS и Android в проекте Firebase "dev", поскольку обе они могут взаимодействовать с одними и теми же непроизводственными данными и ресурсами.

Избегайте мультиарендности

Мультиарендность может привести к серьезным проблемам с конфигурацией и конфиденциальностью данных, включая непреднамеренные проблемы с агрегацией аналитики, общей аутентификацией, чрезмерно сложными структурами баз данных и трудностями с правилами безопасности.

Как правило, если набор приложений не использует одни и те же данные и конфигурации, настоятельно рекомендуется зарегистрировать каждое приложение в другом проекте Firebase.

Например, если вы разрабатываете приложение с белой меткой, каждое приложение с независимой меткой должно иметь свой собственный проект Firebase, а версии этой метки для iOS и Android должны находиться в одном проекте Firebase. Каждое приложение с независимой маркировкой не должно (из соображений конфиденциальности) делиться данными с другими.

Следующие шаги