この記事でわかること
- 個人開発アプリをApp StoreとGoogle Playに出すまでの全体スケジュール
- 申請で求められるWebページ(プライバシーポリシー/サポート)の用意
- 両ストアの入力項目と、よくあるリジェクトの回避策
まず結論だけ知りたい場合は、Google Playのアカウントを先に作り、クローズドテストの14日間を回しながら、その間にWebページと申請項目を埋めていくのが最短です。14日間の進め方は別記事にまとめました。
はじめに
個人で作ったアプリをApp StoreとGoogle Playに出すまでの手順を、入力する項目ごとにまとめました。2026年10月時点の要件です。
アプリはできたのに申請で止まってしまう理由は、だいたい次の3つです。
- 入力項目が多く、どこに何を書けばよいかわからない
- プライバシーポリシーやサポートページのような「Webページ」を求められる
- Google Playの個人アカウントには、公開前に14日間のテスト期間がある
この記事では、全体のスケジュール、必要なWebページ、各ストアの入力項目、プライバシーの申告、よくあるリジェクトの順に説明します。
ストアの要件は毎年変わります。申請の前にAppleとGoogleの公式ドキュメントで最新の情報を確認してください。
全体のスケジュール
両ストアに出すなら、最初にGoogle Playのアカウントを作ってクローズドテストを始めるのがおすすめです。2023年11月13日以降に作った個人アカウントでは、12人以上のテスターが14日間続けて参加しないと、本番に公開できません。テストを待つ間にApp Storeの申請とWebページの準備を進めると、待ち時間を無駄にせずに済みます。
申請で必要になるWebページ
アプリの中身とは別に、ブラウザで開ける公開ページのURLが求められます。
Webページをお持ちの場合はそちらに下記を追加してください。
お持ちでない場合はhttps://indiepick-oms.com/for-developers/guide/privacyで無料作成がおすすめです。
| ページ | App Store | Google Play |
|---|---|---|
| プライバシーポリシー | 必須。アプリ内からも見られるようにする | 必須。アプリ内からも見られるようにする |
| サポートページ | 必須(サポートURL) | 任意(ストアの「ウェブサイト」欄) |
| アカウント削除の案内 | アプリ内で削除できれば不要 | アプリでアカウントを作れる場合は必須 |
プライバシーポリシーに書くこと
アプリの実態に合わせて、次の項目を書くのが一般的です。
| 項目 | 書く内容の例 |
|---|---|
| 運営者と連絡先 | 開発者名、問い合わせ用のメールアドレス |
| 取得する情報 | 広告ID、端末情報、クラッシュログ、購入履歴、位置情報など |
| 利用目的 | 広告の配信、不具合の調査、利用状況の分析など |
| 第三者への提供 | 組み込んでいるSDKの名前と、各社のプライバシーポリシーへのリンク |
| 保存と削除 | 保存期間、削除を依頼する方法 |
| 子どもの情報 | 13歳未満を対象にする場合の扱い |
| 改定 | 内容を変えるときの告知方法 |
自分のコードで何も集めていなくても、広告や解析のSDKを入れていれば、そのSDKが集める情報を書く必要があります。
サポートページに書くこと
AppleのサポートURLには、実際に連絡がつく情報が載っている必要があります。問い合わせ用のメールアドレスかフォーム、動作環境、よくある質問、プライバシーポリシーへのリンクがあれば十分です。
Webサイトを持っていない場合
個人開発では、Webサイトを持っていない人も多いと思います。無料で公開ページを用意する方法には、次のようなものがあります。
| 方法 | 向いている人 | 注意点 |
|---|---|---|
| GitHub Pages | GitとMarkdownに慣れている | 文章は自分で書く |
| Googleサイト、Notionの公開ページ | すぐに作りたい | 文章は自分で書く。URLが長くなりやすい |
| IndiePickのストア提出用ページ | 文章を書く時間を減らしたい | 作られる文章はテンプレートなので、内容の確認は必要 |
IndiePickは個人開発ゲームの紹介サイトで、ストア提出用のページ作成を無料で提供しています。広告SDKや解析ツール、課金の有無などの質問に答えると、プライバシーポリシーとサポートページが日本語と英語で公開されます。
プライバシーポリシーの質問では、組み込んでいるSDKを選びます。選んだSDKの名前と各社ポリシーへのリンクが、ページに入ります。
作成すると日本語と英語のURLが発行されるので、これをストアに貼ります。
サポートページは、課金や機種変更などの質問に答えると、よくある質問が入った形で作られます。
どの方法を選ぶ場合も、ストアに貼るURLは、あとから中身を直せるものにしておくと安心です。SDKを追加したときに、URLを変えずに内容だけ更新できます。
App Storeの申請手順
1. Apple Developer Programに登録する
https://developer.apple.com/programs/ から登録します。費用は年額99米ドルで、日本では円建ての価格が表示されます。2ファクタ認証を有効にしたApple Accountが必要です。
個人で登録すると、ストアの「販売元」には本名が表示されます。屋号や会社名で出したい場合は組織として登録し、D-U-N-S番号を用意します。
2. App Store Connectでアプリを作成する
App Store Connectの「アプリ」→「+」→「新規App」で、次の項目を入れます。
| 項目 | 内容 |
|---|---|
| プラットフォーム | iOS |
| 名前 | ストアに表示される名前。2〜30文字。ほかのアプリと重複できない |
| プライマリ言語 | 日本語など |
| バンドルID | Xcodeのプロジェクトと同じもの。あとから変えられない |
| SKU | 自分用の管理番号。英数字で自由に決める。あとから変えられない |
| ユーザアクセス | 個人ならフルアクセスのままでよい |
バンドルIDが一覧に出ない場合は、XcodeのSigning & Capabilitiesで自動署名を有効にしてビルドすると登録されます。
3. App 情報を入力する
| 項目 | ポイント |
|---|---|
| サブタイトル | 30文字。名前の下に表示され、検索にも使われる |
| カテゴリ | ゲームならプライマリを「ゲーム」にして、サブカテゴリを2つまで選ぶ |
| 年齢制限指定 | 質問に答えると決まる |
| コンテンツ配信権 | 他者の著作物(音楽、画像、キャラクターなど)を使っているか |
| デジタルサービス法 | EUに配信する場合、トレーダーかどうかを申告する |
年齢制限指定は2025年に見直され、4+、9+、13+、16+、18+の区分になりました。アプリ内の管理機能、AIなどの機能、医療・ウェルネス、暴力的な表現についての質問が加わっています。2026年1月31日以降、新しい質問に答えていないアプリはアップデートを提出できません。
4. 価格および配信状況を設定する
価格(無料か有料か)と、配信する国と地域を選びます。日本だけで出すこともできます。EUを含める場合は、手順3のデジタルサービス法の申告が必要です。
5. App のプライバシーを入力する
左のメニューの「App のプライバシー」で、次の2つを入力します。
- 「プライバシーポリシー」の「編集」から、プライバシーポリシーのURLを入れる
- 「はじめに」から、アプリが集めるデータを申告する(プライバシーラベル)
URLの変更は、次のバージョンの公開と一緒に反映されます。一方、データの申告は「公開」を押すとすぐにストアに反映されます。申告の中身は、後半の「プライバシーの申告」の章で説明します。
6. バージョンのページを入力する
左のメニューの「1.0 提出準備中」を開きます。
| 項目 | 上限 | ポイント |
|---|---|---|
| スクリーンショット | 1〜10枚 | 下の画像サイズの図を参照 |
| プロモーション用テキスト | 170文字 | 審査なしでいつでも書き換えられる。セールやイベントの告知向き |
| 概要 | 4,000文字 | 最初の数行が一覧で見えるので、何のアプリかを先に書く |
| キーワード | 100バイト | カンマ区切り。日本語は1文字3バイトなので、全角だけだと約33文字 |
| サポートURL | 必須 | 用意したサポートページ |
| マーケティングURL | 任意 | 公式サイトや紹介ページがあれば |
| 著作権 | 必須 | 「2026開発者名」の形式。©は自動で付く |
キーワードには、アプリ名やカテゴリ名に含まれる言葉を入れる必要はありません。カンマのあとにスペースを入れると、そのぶんバイト数を使ってしまいます。
スクリーンショットは、iPhone対応のアプリなら6.9インチ(1320×2868)が必要です。6.5インチ(1284×2778)でもかまいません。iPadでも動くアプリは、13インチ(2064×2752)も必要になります。iPadに対応しないなら、Xcodeの対象デバイスからiPadを外しておくと、iPad用の画像を用意せずに済みます。
7. ビルドをアップロードする
2026年4月28日以降、App Store Connectにアップロードするアプリは、Xcode 26以降とiOS 26 SDKでビルドする必要があります。これはビルドに使うSDKの話で、対応OS(Deployment Target)は古いバージョンのままでかまいません。
Xcodeの「Product」→「Archive」でアーカイブを作り、Organizerの「Distribute App」から「App Store Connect」を選んでアップロードします。
標準のHTTPS通信しか使っていないアプリは、Info.plistに次の行を入れておくと、ビルドごとに聞かれる輸出コンプライアンスの質問を省けます。
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
もう1つ確認したいのが、プライバシーマニフェスト(PrivacyInfo.xcprivacy)です。FirebaseやAdMobなど主要なSDKは、最近のバージョンにマニフェストが含まれています。古いSDKのままだとアップロード時に指摘されることがあるので、SDKは最新にしておきましょう。自分のコードでUserDefaultsやファイルのタイムスタンプなど「理由の申告が必要なAPI」を使っている場合は、アプリ側のマニフェストにも理由を書きます。
アップロードしたビルドは、処理が終わるとバージョンのページの「ビルド」で選べるようになります。
8. App Reviewに関する情報を入力する
| 項目 | 内容 |
|---|---|
| サインイン情報 | ログインが必要なアプリは、審査用のアカウントを用意する |
| 連絡先情報 | 氏名、電話番号(+81から始まる国際形式)、メールアドレス |
| メモ | 見つけにくい機能や、動作確認の手順を書いておく |
審査担当者がアプリの機能にたどり着けないと、リジェクトの原因になります。課金アイテムや隠し要素がある場合は、メモで場所を説明しておきましょう。
9. 審査に提出する
右上の「審査用に追加」を押し、内容を確認して「審査へ提出」を押します。「バージョンのリリース」で、承認後に自動で公開するか、手動で公開するかを選べます。
審査は多くの場合1〜2日程度で終わりますが、混み具合や内容によってはもっとかかります。
Google Playの申請手順
1. デベロッパー アカウントを作る
https://play.google.com/console/ から登録します。登録料は1回だけで、25米ドルです。
アカウントの種類は「個人」か「組織」を選びます。組織にはD-U-N-S番号が必要です。登録後に本人確認書類の提出があります。新しい個人アカウントでは、Android 10以降の実機でPlay Consoleアプリを使い、端末を持っていることの確認も求められます。
2. アプリを作成する
「アプリを作成」で、次の項目を入れます。
| 項目 | ポイント |
|---|---|
| アプリ名 | 30文字まで |
| デフォルトの言語 | 日本語など |
| アプリかゲームか | あとから変更できる |
| 無料か有料か | 一度無料で公開すると、有料には変えられない |
| 宣言 | デベロッパー プログラム ポリシーと米国輸出法への同意 |
3. アプリのコンテンツ(ポリシーの申告)
ダッシュボードの「アプリのセットアップ」に並ぶタスクを、上から順に片づけます。
| 項目 | ポイント |
|---|---|
| プライバシー ポリシー | URLを入れる。アプリ内からも見られるようにしておく |
| アプリのアクセス権 | ログインが必要なら審査用のアカウントを入れる |
| 広告 | SDK経由のものも含め、広告を表示するなら「含む」 |
| コンテンツのレーティング | IARCの質問票に答えると、各国のレーティングが決まる |
| ターゲット ユーザーとコンテンツ | 対象年齢を選ぶ。13歳未満を含めるとファミリー向けのポリシーが適用され、広告SDKにも条件がつく |
| データ セーフティ | 後半の「プライバシーの申告」の章を参照 |
| 広告ID | 広告IDを使うかどうか。広告SDKを入れていれば通常は「使う」 |
| 政府アプリ、金融機能、健康 | 該当しなければ「いいえ」 |
4. ストアの設定と掲載情報
「ストアの設定」ではカテゴリと連絡先を入れます。メールアドレスは必須で、ウェブサイトは任意です。ウェブサイト欄にサポートページのURLを入れておくと、利用者が困ったときの窓口になります。
「メインのストアの掲載情報」では、次の項目を入れます。
| 項目 | 上限・サイズ |
|---|---|
| アプリ名 | 30文字 |
| 簡単な説明 | 80文字 |
| 詳しい説明 | 4,000文字 |
| アプリのアイコン | 512×512、32ビットPNG、1MBまで |
| フィーチャー グラフィック | 1024×500、JPEGか24ビットPNG |
| スマートフォンのスクリーンショット | 2〜8枚。辺の長さ320〜3840px |
5. App Bundleを用意する
Google PlayにはApp Bundle(.aab)でアップロードします。署名はPlayアプリ署名を使うのが一般的です。
2026年8月31日以降、新しいアプリとアップデートはAndroid 16(APIレベル36)以上をターゲットにする必要があります。期限の延長を申請した場合は、2026年11月1日まで猶予されます。
android {
defaultConfig {
targetSdk = 36
}
}
6. クローズドテストを行う
個人アカウントでは、この手順に最も時間がかかります。
- 「テストとリリース」→「クローズド テスト」でトラックを作り、App Bundleをアップロードする
- テスターのメールアドレスかGoogleグループを登録する
- 発行されたリンクから、テスターにテストへの参加(オプトイン)とインストールをしてもらう
- 12人以上が14日間続けて参加した状態を保つ
途中で参加者が12人を下回ると、日数が最初から数え直しになります。少し多めに集めておきましょう。2026年からは、テスターが実際にアプリを使っているかも確認されるようになりました。参加してもらうだけでなく、遊んで感想をもらうところまでお願いしておくと安心です。
14日たつと、ダッシュボードから「製品版へのアクセスを申請」できます。テストの様子、アプリの対象ユーザー、公開の準備ができたと判断した理由などを聞かれます。審査は通常7日以内です。
7. 製品版を公開する
アクセスが認められたら、「製品版」でリリースを作成し、リリースノートを書いて審査に出します。
プライバシーの申告
両ストアとも、アプリが集めるデータの種類と目的を申告します。自分のコードだけでなく、組み込んでいるSDKが集めるデータも対象です。
App Storeの「App のプライバシー」
データの種類ごとに、次の3つを答えます。
- 使用目的(他社広告、解析、App の機能など)
- ユーザに紐付けられているか
- トラッキングに使用するか
広告と解析を入れたゲームの例です。AdMobとFirebase Analytics、Crashlyticsを使う場合の一般的な目安になります。
| データの種類 | 使用目的 | ユーザに紐付け | 理由になるSDK |
|---|---|---|---|
| ID> デバイスID | 他社広告、解析 | いいえ | AdMob、Analytics、Crashlytics |
| 使用状況データ > 広告データ | 他社広告 | いいえ | AdMob |
| 使用状況データ > 製品の操作 | 他社広告、解析 | いいえ | AdMob、Analytics |
| 位置情報 > おおよその位置情報 | 他社広告、解析 | いいえ | AdMob、Analytics |
| 診断 > パフォーマンスデータ | 解析 | いいえ | AdMob |
| 診断 > クラッシュデータ | App の機能、解析 | いいえ | Crashlytics |
IDFAを使ってパーソナライズ広告を出す場合は、デバイスIDと広告データの行で「トラッキングに使用」を「はい」にします。このときはアプリの起動時にATT(App Tracking Transparency)のダイアログを出す必要があり、Info.plistに説明文を入れます。
<key>NSUserTrackingUsageDescription</key>
<string>あなたの興味に合った広告を表示するために使用します。</string>
Google Playの「データ セーフティ」
最初に、データを収集・共有しているか、送信時に暗号化しているか、削除をリクエストする方法があるかを答えます。そのあと、データの種類ごとに「収集」「共有」と目的を選びます。
迷いやすいのが「共有」です。広告SDKにデータを渡すのは「共有」に当たり、解析ツールのように処理を任せる「サービス提供者」に渡すのは「共有」に含めません。端末の中だけで使い、外に送らないデータは申告の対象外です。
SDKの申告内容を調べる方法
SDKの多くは、ストアの申告用の資料を公開しています。「SDK名data safety」「SDK名privacy manifest」などで検索すると見つかります。バージョンや設定で集めるデータが変わるので、使っているバージョンの記載を確認しましょう。
IndiePickでプライバシーポリシーを作った場合は、その回答をもとに、上の表のような申告の目安と各社の資料へのリンクが自動で表示されます。最初のたたき台を作るのに便利です。
よくあるリジェクトと対策
| ガイドライン | よくある原因 | 対策 |
|---|---|---|
| Apple 2.1 App の完成度 | 起動時のクラッシュ、仮の画面やリンク切れ | 実機で最後まで動作確認する |
| Apple 2.3正確なメタデータ | 実際の画面と違うスクリーンショット | 実際のゲーム画面を使う |
| Apple 4.2最低限の機能 | 機能が少なすぎる、Webサイトを包んだだけ | アプリならではの機能を用意する |
| Apple 4.8ログインサービス | Googleログインなどだけを用意している | Sign in with Appleなど、同等のログイン手段も用意する |
| Apple 5.1.1データの収集 | 権限の説明文がない、アカウントを削除できない |
NS...UsageDescriptionを具体的に書く。アプリ内に削除機能を置く |
| Apple 5.1.2データの使用 | ATTなしでトラッキングしている | ATTのダイアログと申告をそろえる |
| Googleユーザーデータ | プライバシーポリシーがアプリ内にない、申告と実態が違う | 設定画面などにリンクを置く。データ セーフティを見直す |
| Googleファミリー | 子ども向けなのに条件を満たさない広告SDK | ファミリー向けの認定を受けた広告SDKを使う |
リジェクトされた場合は、App Store Connectの「App Review」やPlay Consoleの受信トレイに理由が届きます。理由を読んで修正し、再提出すれば問題ありません。App Store Connectでは、返信で審査担当者に質問することもできます。
提出前のチェックリスト
- プライバシーポリシーとサポートページのURLが、ブラウザで開ける
- プライバシーポリシーへのリンクを、アプリ内(設定画面など)に置いた
- 組み込んでいるSDKを、プライバシーポリシーとストアの申告の両方に反映した
-
IDFAを使うなら、ATTのダイアログと
NSUserTrackingUsageDescriptionを入れた - カメラや位置情報などの権限に、目的がわかる説明文を入れた
- アカウントを作れるアプリに、アプリ内からの削除機能を用意した(Google Playは削除依頼用のURLも)
- 課金があるなら、購入を復元するボタンを用意した
- Xcode 26以降でビルドした、targetSdkを36にした
- SDKを最新版にした
- Google Playのクローズドテストで、12人以上が14日間参加している
まとめ
ストア申請で時間がかかるのは、アプリそのものよりも、Webページの用意とプライバシーの申告です。最初に全体のスケジュールを決め、Google Playのテストを早めに始めておくと、公開までの待ち時間を減らせます。
一度手順をまとめておけば、2本目からはずっと楽になります。この記事が申請の参考になればうれしいです。
Webページの用意に困ったときは、IndiePickのストア提出用ページも使ってみてください。











