For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /ru/docs/mobile/external-accounts.md (or send Accept: text/markdown).
Создайте мобильные аккаунты
Аккаунты Expo, Apple, Google Play и RevenueCat — для чего каждый и когда его создавать.
Когда они нужны
Ежедневная мобильная настройка не требует ни одного из них: Expo Go плюс работающий бэкенд — EXPO_PUBLIC_API_URL в apps/mobile/.env.local — покрывает предпросмотр экранов и тестирование входа.
Создавайте эти аккаунты, когда выходите за рамки Expo Go: аккаунт Expo нужен для облачных сборок EAS, магазинные аккаунты дают возможность отправки, RevenueCat проверяет нативные покупки, а программа Apple также обязательна для Sign in with Apple при проверке в магазине. Два из них стоят денег: Apple Developer — $99 в год, Google Play — одноразовая регистрация за $25; у Expo и RevenueCat есть бесплатные уровни.
Expo + EAS
1. Откройте expo.dev → Sign up, создайте аккаунт и подтвердите почту.
2. В терминале выполните npx eas-cli@latest login и введите те же креденшелы — eas — инструмент командной строки для сборок и отправок Expo Application Services.
3. Из папки apps/mobile выполните npx eas-cli@latest init, чтобы связать кодовую базу с проектом EAS; он записывает ID проекта в конфигурацию app.json/app.config.ts. Профили сборки eas.json уже поставляются.
Ожидается: npx eas-cli@latest whoami печатает имя вашего аккаунта, и проект появляется в вашем дашборде expo.dev.
npx eas-cli@latest login
cd apps/mobile
npx eas-cli@latest init
npx eas-cli@latest whoamiApple Developer Program
1. Откройте developer.apple.com → Account → зарегистрируйтесь в Apple Developer Program — $99 в год; индивидуального членства достаточно.
2. Регистрация требует Apple ID с включённой двухфакторной аутентификацией и юридическое имя, совпадающее с вашим способом оплаты; одобрение может занять день-два.
3. Этот единственный аккаунт покрывает два требования: отправку iOS-приложения в App Store и Sign in with Apple — App Review требует предлагать его всякий раз, когда iOS-приложение поставляет сторонний социальный вход вроде Google или GitHub. Комплект подключает его через AUTH_APPLE_ENABLED плюс пару APPLE_CLIENT_ID/APPLE_CLIENT_SECRET на бэкенде.
То же членство покрывает и подпись десктопа macOS — руководство по десктопным аккаунтам объясняет эту сторону.
Google Play Console
1. Откройте play.google.com/console, оплатите одноразовую регистрацию за $25 и создайте аккаунт разработчика на своё имя или имя компании.
2. Пока остановитесь на аккаунте разработчика — сама запись приложения создаётся внутри Play Console во время отправки: первая загрузка нового приложения всегда происходит там вручную, а eas submit берёт на себя со второго релиза.
RevenueCat — только если приложение продаёт контент
Пропустите этот раздел полностью, если мобильное приложение не продаёт цифровой контент или подписки. Если продаёт: 1. откройте revenuecat.com и создайте бесплатный аккаунт, 2. создайте проект, 3. зарегистрируйте в нём iOS-приложение (подключается к App Store Connect) и Android-приложение (имя пакета Play плюс сервисные креденшелы).
4. Создайте продукты и entitlement, соответствующий вашим магазинным продуктам — комплект проверяет настроенный entitlement (REVENUECAT_ENTITLEMENT_ID, REVENUECAT_ENTITLEMENT_KEY) на стороне сервера перед выдачей доступа.
5. Скопируйте публичный SDK-ключ каждой платформы в apps/mobile/.env.local и включите провайдера с обеих сторон, как ниже. SDK-ключи — публичные клиентские значения; REVENUECAT_SECRET_API_KEY и REVENUECAT_WEBHOOK_AUTHORIZATION — только для сервера и принадлежат окружению бэкенда — никогда в переменной EXPO_PUBLIC_.
# apps/mobile/.env.local
EXPO_PUBLIC_MOBILE_PURCHASES_PROVIDER=revenuecat
EXPO_PUBLIC_REVENUECAT_IOS_API_KEY=your-public-ios-sdk-key
EXPO_PUBLIC_REVENUECAT_ANDROID_API_KEY=your-public-android-sdk-key
# apps/web/.env.local — server side
MOBILE_PURCHASES_PROVIDER=revenuecat
REVENUECAT_SECRET_API_KEY=your-secret-api-key
REVENUECAT_WEBHOOK_AUTHORIZATION=your-webhook-auth-valueПровайдеры входа на мобильных
Мобильный вход переиспользует те же OAuth-приложения Google и GitHub, которые вы создаёте для веба — колбэки остаются {APP_URL}/api/auth/callback/<provider>, потому что Better Auth обрабатывает серверную сторону, а приложение возвращается через свою deep-link схему EXPO_PUBLIC_APP_SCHEME. Дополнительное приложение провайдера не нужно только потому, что клиент нативный.
Исключение — проверка в магазине iOS: поставка кнопок Google или GitHub на iOS требует также предлагать Sign in with Apple, поэтому аккаунт Apple Developer выше служит и зависимостью входа.
Готово означает
Проверьте каждый аккаунт, прежде чем двигаться дальше: npx eas-cli@latest whoami печатает ваш аккаунт Expo, и проект виден в дашборде; членство Apple Developer читается как Active; аккаунт Play Console существует; проект RevenueCat перечисляет оба магазинных приложения с продуктами и entitlement, а его ключи в правильных env-файлах.
Затем продолжайте по порядку — подключите проект, настройте покупки, если приложение продаёт контент, соберите для устройства, отправьте: