Серверная часть и аккаунты
Серверная часть Firebase (база данных и аккаунты)
Дайте приложениям, созданным ИИ, облачную базу данных и вход пользователей с помощью вашего собственного бесплатного проекта Firebase
1Что это даёт вашему приложению#
Обычно созданное приложение хранит данные только на телефоне, на котором работает. Включение Firebase даёт приложению бесплатную облачную базу данных, поэтому одни и те же данные видны с любого устройства и (если нужно) люди могут регистрироваться по email и паролю.
Это ВАШ СОБСТВЕННЫЙ ключ: приложение работает с ВАШИМ бесплатным проектом Firebase. AppMint ничего не хранит и не берёт с вас дополнительной платы. Вы один раз вставляете конфигурацию, а ИИ пишет весь код.
Вам НЕ нужно ничего писать или проектировать — ни таблиц, ни схемы, ни SQL. Firebase и AppMint разберутся по описанию вашего приложения.
2Создайте проект Firebase (5 минут, бесплатно)#
Проще всего на компьютере:
- Откройте console.firebase.google.com и войдите с любым аккаунтом Google.
- Нажмите «Add project» → дайте любое имя → нажимайте «Continue» → пропустите Google Analytics → «Create project». Подождите ~30 секунд.
- В левом меню: Databases & Storage → Firestore → «Create database».
- Выберите расположение рядом с вашими пользователями (позже изменить нельзя).
- Выберите «Start in production mode» — НЕ «test mode». Тестовый режим автоматически истекает через 30 дней, и ваше приложение тихо перестанет работать.
- В левом меню: Security → Authentication → «Get started» → вкладка «Sign-in method»:
- Включите «Email/Password» (включите первый переключатель, сохраните).
- ТАКЖЕ включите «Anonymous» (прокрутите вниз, включите, сохраните) — нужно для приложений с гостевым входом и таблицами лидеров.
Вот и всё. Проектировать схему не нужно.
3Скопируйте веб-конфигурацию#
По-прежнему в Firebase Console:
- Нажмите ⚙️ шестерёнку (слева вверху) → «Project settings».
- Прокрутите до «Your apps» → нажмите значок </> (веб).
- Дайте приложению любой псевдоним → нажмите «Register app» (пропустите «Firebase Hosting»).
- Вы увидите фрагмент кода. Скопируйте ТОЛЬКО объект firebaseConfig — всё от открывающей { до закрывающей }.
Веб-ключ API предназначен для публичного использования — ваши данные защищены правилами безопасности из шага 6, а не сокрытием ключа.
const firebaseConfig = {
apiKey: "AIza...",
authDomain: "my-app.firebaseapp.com",
projectId: "my-app",
storageBucket: "my-app.appspot.com",
messagingSenderId: "123456789",
appId: "1:123:web:abc"
}; ← copy the { ... } part4Вставьте его в AppMint (один раз)#
Откройте AI Studio → Settings → прокрутите до «BACKEND - FIREBASE (OPTIONAL)»:
- Вставьте скопированный firebaseConfig в большое текстовое поле.
- Включите переключатель «Enable Firebase backend».
- Нажмите «Save Firebase config». Вы должны увидеть «Saved Firebase project: <your-project-id>».
Он хранится в зашифрованном виде на вашем устройстве и используется для каждого создаваемого приложения — делать это нужно только один раз.
5Опишите своё приложение — остальное сделает ИИ#
Просто скажите, чего хотите, простыми словами. ИИ сам решает, добавлять ли экраны входа, исходя из вашего запроса:
- «Приложение для заметок, где каждый пользователь хранит свои заметки» → ИИ создаёт регистрацию и вход плюс личные заметки.
- «Глобальная таблица лидеров для игры в тапы, без аккаунтов» → ИИ использует тихий гостевой вход, публичные результаты, без экрана входа.
- «Общая доска объявлений, на которой может писать каждый» → ИИ использует гостевой вход, без экрана входа.
Если устройство офлайн или конфигурация отсутствует, приложение автоматически переходит на хранение только на телефоне, поэтому оно никогда не падает.
6Примените правила безопасности (ОБЯЗАТЕЛЬНО)#
Без этого шага приложение будет получать ошибки «permission denied» при попытке чтения или записи. ИИ пишет правила ЗА ВАС; вам нужно только вставить их.
- После создания приложения откройте представление Code (или распакуйте скачанный проект) и найдите файл «firestore.rules». Откройте его и скопируйте ВЕСЬ текст.
- В Firebase Console: Databases & Storage → Firestore → вкладка «Rules» → нажмите «Edit rules» → удалите всё, что там есть → вставьте правила от ИИ → нажмите «Publish».
Делайте это один раз для каждого приложения. Правила подстроены под ваше приложение: пользователи могут записывать только свои данные, а таблицы лидеров остаются доступными для чтения всем.
7Проверьте, что всё работает#
Быстрая проверка после установки APK:
- Откройте приложение на телефоне и выполните одно действие, которое должно сохранить данные (создайте заметку, отправьте результат и т. д.).
- Снова в Firebase Console: Databases & Storage → Firestore → вкладка «Data» → вы должны увидеть новую коллекцию (например, «notes» или «scores») с только что введёнными данными.
- Security → Authentication → вкладка «Users» → если ваше приложение использует вход, здесь должен появиться ваш аккаунт.
Если ничего не появилось: проверьте 3 самые частые причины на следующем шаге.
8Если что-то не работает#
Самые частые ошибки:
- «permission-denied» или данные не сохраняются → вы пропустили шаг 6 (публикацию правил).
- «auth/operation-not-allowed» при регистрации/входе → вы не включили Email/Password на шаге 2.
- «auth/operation-not-allowed» для приложений с гостевым входом и таблицами лидеров → вы не включили Anonymous на шаге 2.
- «auth/operation-not-allowed» при входе через Google → вы не включили Google И не вставили отпечаток SHA-256 (см. шаг «Добавьте вход через Google» ниже).
- Вставленная конфигурация отклонена («Couldn't find a { ... } config object») → вставьте ВЕСЬ блок { ... } вместе с фигурными скобками, а не только содержимое.
Поддерживаемые способы входа в созданных приложениях: Email/Password, Anonymous (гость), Google Sign-In (через встроенный Credential Manager) и Phone/SMS (через reCAPTCHA). Вход через Facebook ПОДДЕРЖИВАЕТСЯ: введите Facebook App ID и Client Token на шаге «Integrate» мастера (вход открывается во вкладке браузера). Вход через Apple/Twitter по-прежнему НЕ поддерживается — им нужны OAuth-окна, которые Google блокирует внутри Android WebView.
9Добавьте Google Sign-In (необязательно)#
Созданные приложения могут использовать Google Sign-In через встроенный Credential Manager Android — он работает внутри WebView (в отличие от OAuth-окон). Разовая настройка для каждого приложения:
- Firebase Console → Security → Authentication → вкладка «Sign-in method» → включите «Google». Сохраните.
- Firebase Console → ⚙ Project settings → «Your apps» → если у вас ещё нет зарегистрированного приложения Android, нажмите «Add app» → Android → введите имя пакета (то, которое будете использовать в AppMint).
- Один раз соберите APK в AppMint. Откройте скачанный файл «<appname>_signkey_info.txt» — вверху вы увидите отпечатки SHA-1 и SHA-256.
- Вернитесь в Firebase Console → ⚙ Project settings → Your apps → приложение Android → «Add fingerprint» → вставьте SHA-1, затем снова «Add fingerprint» для SHA-256. Нажмите «Save». Google Sign-In проверяет SHA-1: только с SHA-256 вход завершится ошибкой «No credentials available». (Это делается ТОЛЬКО ОДИН РАЗ для приложения — один и тот же ключ подписи используется для каждой следующей сборки.)
- Публикуете в Google Play? Play переподписывает ваше приложение своим ключом, поэтому у установки из Play ДРУГОЙ отпечаток. Play Console → ваше приложение → Test and release → App integrity → скопируйте SHA-1 и SHA-256 из «App signing key certificate» и добавьте оба в то же приложение Android в Firebase. Если пропустить, вход будет работать из APK, но не у всех, кто установил из Play.
- Firebase Console → ⚙ Project settings → General → прокрутите до «Your apps» → найдите раздел Web SDK → скопируйте «Web client ID» (заканчивается на .apps.googleusercontent.com).
- Откройте настройки AppMint → вставьте его в «GOOGLE SIGN-IN - OAUTH WEB CLIENT ID». Сохраните.
- Пересоберите приложение. Теперь Google Sign-In работает.
10Добавьте вход по телефону / SMS (необязательно)#
Вход по телефону использует Firebase Web SDK и reCAPTCHA (работает внутри WebView). Пользователь вводит номер телефона, проходит проверку «Я не робот», получает SMS с кодом и вводит его.
Настройка:
- Firebase Console → Security → Authentication → вкладка «Sign-in method» → включите «Phone». Сохраните.
- SHA не нужен (мы используем проверку reCAPTCHA, а не Play Integrity).
- Просто попросите ИИ добавить вход по телефону в описании приложения (например, «Пользователи входят по номеру телефона»).
⚠️ Оплата: для отправки настоящих SMS с кодом подтверждения теперь нужен тариф Blaze (оплата по факту) — бесплатный тариф Spark больше не включает бесплатную квоту SMS. Перейдите на него в Firebase Console → ⚙ Project settings → Usage and billing. На Blaze Firebase Authentication допускает до 3000 SMS с кодом в день; цены на SMS зависят от страны.
💡 Чтобы проверить БЕЗ оплаты и реальных SMS: Authentication → Settings → «Phone numbers for testing» позволяет добавить фиксированный тестовый номер и код (SMS не отправляется).
11Стоимость — чего ожидать#
Бесплатный тариф Firebase «Spark» покрывает большинство любительских приложений. Бесплатно в день:
- 50 000 чтений документов
- 20 000 записей
- 20 000 удалений
- 1 ГиБ общего хранилища
- 10 ГиБ в месяц исходящего сетевого трафика
Для справки: небольшое приложение для заметок со 100 активными пользователями делает ~5000 чтений в день. Популярная таблица лидеров в игре может превысить 50 тысяч чтений за час.
⚠️ Настройте оповещение о бюджете: Google Cloud Console → Billing → Budgets & alerts → задайте «Alert me at $1». Вы будете в безопасности, а Firebase пришлёт письмо, как только использование начнёт стоить денег.