ExpoアプリをGoogle Playで公開する手順はすでに経験しました。その記事を読んだ方ならご存じのとおり、Google PlayとApp Storeは大きく異なります。Appleには独自のエコシステム、ツール、審査プロセスがあり、独特な難しさもあります。
この記事では、Apple Developerアカウントの作成から「審査に提出」をクリックするまで、ExpoアプリをiOS App Storeで公開する手順を順を追って説明します。始める前に知っておきたかったことをまとめました。
事前準備
始める前に、以下を用意してください。
- 動作するExpoプロジェクト(ManagedまたはBareワークフロー)
- Mac、またはその利用環境。iOSアプリをネイティブにビルドするにはmacOSが必要ですが、EAS Buildを使えば回避できます。
- Xcode(最新の安定版)
- Apple ID
❇️ ステップ1:Apple Developer Programに登録する
最初のハードルです。Androidの一度限りの25ドルとは異なり、Appleは年間99ドルを請求します。
- アクセス developer.apple.com
- 「Account」をクリックし、Apple IDでサインイン
- Apple Developer Programに登録
- 個人または組織の情報を入力
- 99ドルを支払う
登録が承認されると、App Store ConnectとApple Developer Portalを利用できます。以降の作業で使う2つの主要な管理画面です。
❇️ ステップ2:App Store Connectでアプリを設定する
App Store Connectでは、アプリの掲載情報、ビルド、価格、提出を管理します。
- アクセス appstoreconnect.apple.com
- 「+」ボタンをクリックし、「新規App」を選択
- アプリの詳細を入力:
- プラットフォーム:iOS
- 名前:アプリの表示名(変更が難しいため慎重に決めましょう)
- Bundle ID:Expo設定の値と完全に一致させる
- SKU:一意の内部識別子
- 「作成」をクリック
App Store Connectにアプリのレコードが作成されました。まだビルドはなく、アプリの入れ物だけが用意されています。
❇️ ステップ3:ExpoプロジェクトをiOS向けに設定する
app.json(またはapp.config.js)を開き、iOSセクションが完成していることを確認します。
{
"expo": {
"name": "Your App Name",
"slug": "your-app-slug",
"version": "1.0.0",
"ios": {
"bundleIdentifier": "com.yourname.yourapp",
"buildNumber": "1",
"supportsTablet": true,
"infoPlist": {
"NSCameraUsageDescription": "We need camera access to...",
"NSPhotoLibraryUsageDescription": "We need photo access to..."
}
}
}
}特に次の点を確認してください。
- bundleIdentifierはApp Store Connectに登録した値と完全に一致させます。
- バージョンが同じでも、アップロードごとにbuildNumberを増やします。
- アプリで使用するすべての権限を、明確な説明とともにinfoPlistに追加します。説明がない、または曖昧な場合、Appleに却下されることがあります。
❇️ ステップ4:証明書とプロビジョニングプロファイルを管理する
AppleがAndroidと最も異なる部分で、多くの開発者が時間を費やすところです。必要なものは2つあります。
- 配布証明書:ビルドが自分によって作成されたことを証明
- プロビジョニングプロファイル:アプリのBundle IDと証明書を結び、配布を許可
方法A:EASに任せる(推奨)
EAS Buildを使えば、これらをすべて自動で管理できます。
npx eas-cli credentialsEASからAppleアカウントへのサインインを求められ、その後必要なものを生成・保存します。
方法B:XcodeまたはApple Developer Portalで手動設定
- Apple Developer Portalで「Certificates, IDs & Profiles」を開く。
- 新しいiOS配布証明書を作成する。
- Bundle Identifierに一致するApp IDを作成する。
- 両者を紐付ける配布用プロビジョニングプロファイルを作成する。
💡 学んだこと:可能であれば複数の開発者証明書を管理しないようにしましょう。Appleはアカウントごとに数を制限しており、証明書を失効させると、それを使うプロビジョニングプロファイルも無効になります。
❇️ ステップ5:アプリをビルドする
EAS Buildを使う(推奨)
npm install -g eas-cli
eas login
eas build:configure本番用にeas.jsonを設定します。
{
"build": {
"production": {
"ios": {
"distribution": "store"
}
}
}
}次にビルドを開始します。
eas build --platform ios --profile productionEASはクラウド上でアプリをビルドし、コード署名を行い、アップロード可能な.ipaファイルを用意します。この手順にMacは不要です。
Xcodeを使う(ローカルビルド)
npx expo run:ios --configuration ReleaseまたはXcodeでios/フォルダを開き、ターゲットに「Any iOS Device」を選択して、Product → Archiveを実行します。
❇️ ステップ6:ビルドをApp Store Connectにアップロードする
方法A:EAS Submit(最も簡単)
eas submit --platform ios --latest方法B:Transporter — Mac App Storeからダウンロードしてサインインし、.ipaファイルを追加して「Deliver」をクリックします。
方法C:Xcode Organizer — アーカイブ後にWindow → Organizerを開き、アーカイブを選択してDistribute App → App Store Connect → Uploadを実行します。
❇️ ステップ7:TestFlightでテストする
App Storeに提出する前に、必ずTestFlightでテストしましょう。
- App Store ConnectでTestFlightを開きます。
- ビルドの処理後、内部テスターを追加します(チームから最大100人)。
- 外部テスターの場合、先にベータ版App審査へ提出します(通常1〜2日)。
❇️ ステップ8:App Storeの掲載情報を準備する
Appleへの提出前に、以下をすべて用意する必要があります。
- 名前(最大30文字)とサブタイトル(最大30文字)
- カテゴリ(メインと任意のサブカテゴリ)
- プライバシーポリシーのURL(必須)
- 説明文(最大4,000文字。冒頭の数行が重要です)
- キーワード(合計最大100文字、カンマ区切り)
スクリーンショット — Appleが指定するサイズ:
- iPhone 6.9インチ(iPhone 16 Pro Max)— 必須
- iPhone 6.7インチ(iPhone 14 Plus / 15 Plus)— 任意ですが推奨
- iPad Pro 13インチ(M4)— iPadに対応する場合は必須
❇️ ステップ9:価格と配信地域を設定する
- 「価格および配信状況」を開きます。
- 「無料」を選ぶか、価格帯を設定します。
- アプリを配信する地域を選択します(初期設定はすべての地域)。
- 必要に応じて配信開始日を設定します。
❇️ ステップ10:Appのプライバシーに関する質問に回答する
Appleはデータの取り扱いについて申告を求めます。この情報はApp Storeページのプライバシーラベルに表示されます。App Store Connectで「Appのプライバシー」を開き、収集するデータ、ユーザーの身元との関連付け、トラッキングへの利用について正確に回答してください。
❇️ ステップ11:審査に提出する
「審査に関する情報」にAppleの審査担当者へのメモを記入します。ログインが必要なアプリの場合は、ここにテスト用の認証情報を入力します。その後、「審査に追加」→「App審査に提出」を選択します。
❇️ ステップ12:リリースする!
承認されると、アプリのステータスは「販売準備完了」になります。提出時に次のいずれかを選択できます。
- 手動リリース:公開するタイミングを自分で決めます。
- 自動リリース:承認後すぐにアプリが公開されます。
🎉 おめでとうございます。アプリがApp Storeで公開されました。
❇️ まとめ
App Storeの手続きはGoogle Playより分かりにくいものの、一度経験すれば次回以降はずっとスムーズです。特に時間がかかるのは次の点です。
- 証明書とプロビジョニング — EASに任せましょう。
- スクリーンショット — デザインに十分な時間を確保しましょう。
- 初回審査 — 1〜3日を見込み、クラッシュがないか確認しましょう。
Appleのエコシステムは習得に時間がかかりますが、App Storeのユーザー層には大きな価値があります。公開後は高い品質基準も強みになります。リリース頑張ってください!🚀
この記事が役に立ったら、こちらもご覧ください: ExpoアプリをGoogle Playで公開する — Android向けの手順を同じように解説しています。私のアプリは vladsiu.com.
