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 /ja/docs/mobile/external-accounts.md (or send Accept: text/markdown).
モバイルアカウントを作成する
Expo、Apple、Google Play、RevenueCat のアカウント——それぞれの用途と作成タイミング。
これらが必要になるとき
日常のモバイルセットアップにはこれらは一切不要です。Expo Go と稼働中のバックエンド——apps/mobile/.env.local の EXPO_PUBLIC_API_URL——が画面のプレビューとサインインのテストをカバーします。
これらのアカウントは Expo Go を超えたときに作成します。Expo アカウントは EAS クラウドビルドを動かし、ストアアカウントは提出を可能にし、RevenueCat はネイティブ購入を検証し、Apple のプログラムはストア審査時の Sign in with Apple にも必要です。このうち 2 つは費用がかかります。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 と、支払い方法と一致する正式な氏名が必要です。承認には 1〜2 日かかる場合があります。
3. この 1 つのアカウントで 2 つの要件をカバーします。App Store への iOS アプリ提出と Sign in with Apple です——App Review は、iOS アプリが Google や GitHub などのサードパーティソーシャルログインを提供する場合、必ず Sign in with Apple の提供を要求します。キットはバックエンドの AUTH_APPLE_ENABLED と APPLE_CLIENT_ID/APPLE_CLIENT_SECRET のペアでこれを配線します。
同じメンバーシップは macOS デスクトップ署名もカバーします——デスクトップアカウントガイドがその側面を説明しています。
Google Play Console
1. play.google.com/console を開き、一回限りの $25 登録料を支払い、自分または会社名義で開発者アカウントを作成します。
2. 今のところは開発者アカウントで止めておきます——アプリエントリー自体は提出時に Play Console 内で作成されます。新しいアプリの最初のアップロードは常にそこで手動で行われ、2 回目のリリースからは eas submit が引き継ぎます。
RevenueCat——アプリがコンテンツを販売する場合のみ
モバイルアプリがデジタルコンテンツやサブスクリプションを販売しない場合、このセクションは完全にスキップしてください。販売する場合:1. revenuecat.com を開き、無料アカウントを作成します。2. プロジェクトを作成します。3. その中に iOS アプリ(App Store Connect に接続)と Android アプリ(Play パッケージ名とサービス認証情報)を登録します。
4. ストア製品に対応するプロダクトとエンタイトルメントを作成します——キットはアクセスを許可する前に、設定されたエンタイトルメント(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モバイルでのサインインプロバイダー
モバイルサインインは、Web 用に作成したのと同じ Google と GitHub の OAuth アプリを再利用します——Better Auth がサーバーサイドを処理するため、コールバックは {APP_URL}/api/auth/callback/<provider> のままです。アプリは EXPO_PUBLIC_APP_SCHEME ディープリンクスキーム経由で戻ります。クライアントがネイティブだからといって、追加のプロバイダーアプリは不要です。
例外は iOS ストア審査です。iOS で Google や GitHub のボタンを出荷するには Sign in with Apple の提供も必要です——上記の Apple Developer アカウントがサインインの依存関係を兼ねるのはこのためです。
完了とは
先に進む前に各アカウントを確認します。npx eas-cli@latest whoami が Expo アカウントを出力し、ダッシュボードにプロジェクトが表示されること。Apple Developer メンバーシップが Active(アクティブ)と表示されること。Play Console アカウントが存在すること。RevenueCat プロジェクトに両方のストアアプリとプロダクト、エンタイトルメントがリストされ、そのキーが正しい env ファイルにあること。
その後、順番に進みます——プロジェクトを接続し、アプリがコンテンツを販売する場合は購入をセットアップし、デバイス向けにビルドし、提出します: