App Reviewは、App Storeに公開する前にアプリケーションを審査するプロセスです。各アプリケーションは、Appleのルールへの準拠を確認するためにモデレーションを受けます:セキュリティ、プライバシー、インターフェースの品質、安定性。Apple Developer Guidelines、2024によると、申請提出後の平均審査時間は48時間です。審査基準を理解することで、開発者は初回でモデレーションを通過できます。
重要ポイント
App Reviewは、App Storeに公開する前にAppleがアプリケーションをモデレーションするプロセスです。すべてのアプリケーション、アップデート、拡張機能は、セキュリティ、プライバシー、デザイン、法的基準、コンテンツをカバーする複数のセクションからなるApp Store Review Guidelinesへの準拠を審査されます。
この手続きはAppleエコシステムのすべての開発者に必須です。App Reviewに合格しなければ、アプリケーションはApp Storeカタログに表示されず、ダウンロードできず、TestFlightを通じて配布することもできません。例外は社内企業配布用のEnterprise証明書です。
Appleは2008年のApp Store開始とともにApp Reviewを導入しました。当初、審査には7〜14日かかり、形式化も進んでいませんでした。CNBCの調査(2023年)によると、15年間でAppleはさまざまな理由により200万以上のアプリケーションを却下しました。2020年には、信頼度の高い開発者向けの迅速審査プログラムを開始しました。
事前モデレーションなしで公開が可能なGoogle Playとは異なり、App Storeは事前モデレーションを採用しています。各アプリケーションは公開前に審査されます。Google Playは事後モデレーションと自動スキャナーを適用します。Appfiguresの分析(2024年)によると、App Storeの平均承認時間は48時間で、Google Playの4時間と比較されます。同時に、App Storeの却下率は35%高くなっています。
App Store Connectを通じてビルドをアップロードすると、複数段階の審査が始まります。開発者はバージョンを選択しメタデータを入力して、アプリケーションを審査に提出します。Appleはアプリケーションのカテゴリと地域に応じて、モデレーターチームに申請を振り分けます。
最初の段階は自動的に実行されます。Appleのスキャナーはバイナリコード内の悪意あるフレームワーク、プライベートAPIの使用、App Store形式への準拠をチェックします。システムはメタデータ(名前、説明、スクリーンショット、年齢レーティング)を分析します。自動審査には5〜30分かかります。
import StoreKit
func checkReviewStatus() {
let url = URL("https://api.appstoreconnect.apple.com/v1/apps/<APP_ID>/reviewSubmissions")!
var request = URLRequest(url: url)
request.setValue("Bearer <JWT_TOKEN>", forHTTPHeaderField: "Authorization")
URLSession.shared.dataTask(with: request) { data, _, _ in
guard let data = data else { return }
let status = try? JSONDecoder().decode(ReviewStatus.self, from: data)
print("Review status: \(status?.attributes.state ?? \`"unknown\`")")
}.resume()
}
自動審査の後、申請は人間のモデレーターに渡されます。モデレーターはアプリケーションの機能を確認し、主要なシナリオをテストし、Human Interface Guidelinesへの準拠についてデザインを評価し、コンテンツを審査します。Appleのレポート(2024年)によると、手動モデレーションは全審査時間の40〜70%を占めます。
App Store Review Guidelinesは、6つの主要カテゴリに分かれたルールセットです:セキュリティ、プライバシー、デザイン、法的要件、コンテンツ、技術基準。各カテゴリには5〜30のサブ項目と具体的な要件が含まれています。
| カテゴリ | 主な要件 | Guidelines |
|---|---|---|
| セキュリティ | 悪意あるコードの禁止、データ保護 | 1.0–1.5 |
| プライバシー | 個人データの処理、許可の要求 | 2.0–2.5 |
| デザイン | HIG準拠、インターフェースの安定性 | 3.0–3.4 |
| 法的 | 年齢レーティング、ギャンブル、コンテンツ | 4.0–4.9 |
| コンテンツ | 不快なコンテンツの禁止、著作権 | 5.0–5.6 |
AppleはPrivacy Manifestsの使用とデータ収集目的の説明を厳格にチェックします。2024年以降、すべてのアプリケーションはデータ収集に使用するAPIを指定し、その必要性を正当化する必要があります。Privacy Manifestの欠如は、却下の一般的な原因の1つです。
アプリケーションはHuman Interface Guidelinesに従う必要があります。Appleは機能しない要素、壊れたリンク、異なるデバイスでの不適切な表示、読みにくいテキストがあるアプリケーションを却下します。Dynamic TypeとVoiceOverへの対応には特に注意が払われます。
App Reviewの準備は開発段階から始まります。ほとんどの却下はコードのエラーではなく、テストアカウントの欠如、不完全なメタデータ、不正確な年齢レーティングなどの形式的要件の違反によるものです。以下は提出準備のためのチェックリストです。
// App Reviewの提出前チェック
struct PreReviewChecklist {
let hasPrivacyManifest: Bool
let hasTestAccount: Bool
let screenshotsValid: Bool
func isReadyForReview() -> Bool {
let checks = [hasPrivacyManifest, hasTestAccount, screenshotsValid]
return checks.allSatisfy { $0 }
}
}
App Store Connectでは、アプリケーションカテゴリ、キーワード、説明、連絡先情報を指定する必要があります。サブスクリプションのあるアプリケーションの場合は、価格とサブスクリプション期間の情報を入力する必要があります。Appleは15〜30秒のビデオプレビューを追加することを推奨しています。これによりインストールコンバージョンが20〜25%向上します。
審査に提出する前に、異なるiOSバージョンの実機でテストを実施してください。シミュレーターではパフォーマンス、発熱、バッテリー消費の問題は発見できません。Appleは標準的な使用シナリオでクラッシュやフリーズするアプリケーションを却下します。
アプリケーションが複数の言語にローカライズされている場合、ローカライズされた文字列とデータフォーマットの正確性を確認してください。Appleは別の言語が選択されているにもかかわらず、インターフェースの一部が英語のままであるアプリケーションを却下します。EUまたは中国でコンテンツを提供するアプリケーションの場合は、地域法(GDPR、CCPA、中国の認証要件)への準拠を確認してください。
App Reviewプロセスを自動化するには、App Store Connect APIを使用します。APIを使用すると、プログラムでビルドをアップロードし、審査ステータスを追跡し、変更に関する通知を受け取ることができます。FastlaneやGitHub Actionsを介したCI/CDとの統合により、コミットから審査提出までの時間を数時間から10〜15分に短縮できます。
Appleが2024年に公開したApp Reviewの統計によると、5つの理由で全却下の60%以上を占めています。そのほとんどは技術的なエラーではなく、プレゼンテーションと説明のルール違反に関連しています。
| 理由 | Guideline | 却下割合 |
|---|---|---|
| 不完全な情報 | 3.0–3.4 | 22% |
| 同意なしのデータ収集 | 2.0–2.5 | 18% |
| クラッシュとバグ | 1.0–1.5 | 12% |
| IAPなしの有料コンテンツ | 4.0–4.2 | 10% |
| 不正確な年齢レーティング | 5.0–5.6 | 8% |
却下されると、AppleはGuidelinesの特定セクションへのリンク付きで理由を詳細に記したレターを送信します。開発者は問題を修正し、App Store Connectを通じてアプリケーションを再提出できます。却下理由を明確にするために、Resolution Center(Appleモデレーターとのチャット)が利用可能です。
開発者がモデレーターの決定に同意しない場合、異議申し立てを行うことができます。Resolution Centerでは、アプリケーションがルールに準拠している理由を説明し、証拠を添付する必要があります。Appfiguresのレポート(2024年)によると、約35%の異議申し立てが再審査後に承認されています。
標準のApp Review時間は24〜48時間です。ただし、WWDC後、年末年始前、iOSアップデートシーズンなどの高負荷期間には、期間が5〜7日に延長されます。AppleはApp Review Statusページで現在の平均時間を公開しています。
重大な修正のために、AppleはExpedited Review(2〜6時間以内の迅速審査)を提供しています。申請はApp Store Connectを通じて理由(重大な脆弱性の修正、サービスの復旧、ユーザー活動を妨げるバグ)を明記して提出します。誤った迅速化リクエストは、以降の提出の却下につながる可能性があります。
迅速審査は、アプリケーションが機能しなくなるか、法律に違反する状況でのみ正当化されます。Apple Developer Support(2024年)によると、Expedited Reviewは正当な理由がある場合、70%のケースで承認されます。新機能を含む計画的なアップデートでの迅速化リクエストは推奨されません。
よくある質問
標準的な審査には24〜48時間かかります。高負荷期間中は5〜7日に延長されます。現在の平均時間はApp Store ConnectのApp Review Statusページで公開されています。
はい、Expedited Reviewの仕組みを通じて可能です。迅速審査は2〜6時間かかります。申請はApp Store Connectで理由(重大な脆弱性、サービスの中断、ブロックエラー)を明記して提出します。誤ったリクエストは却下につながります。
レターに記載された違反事項を修正し、App Store Connectを通じてアプリケーションを再提出してください。理由を明確にするには、Resolution Center(Appleモデレーターとのチャット)をご利用ください。再審査に追加料金は必要ありません。
いいえ、再審査は無料です。違反事項を修正した後、新しいビルドをアップロードするかApp Store Connectでメタデータを更新し、再度申請してください。試行回数に制限はありません。
ステータスはApp Store Connectの「My Apps」→アプリを選択→「App Review」タブに表示されます。ステータスはWaiting for Review、In Review、Approved、Rejectedです。通知は開発者のメールに送信されます。
まとめ
ターンキー方式のモバイルアプリケーションを開発します
IT Sectrは2017年からスタートアップや企業向けにiOS・Androidアプリケーションを開発しています。私たちがご相談に乗り、最適なソリューションをご提案します。