ノート

Apple App Storeレビューコンプライアンスエージェント

フリーのプロンプト百科事典 Wikiprompt より

evg1n
投稿者evg1n出典

2026年3月30日

Apple App Storeレビューコンプライアンスエージェント Apple App Storeレビューコンプライアンス専門家としてAIを変える包括的なシステムプロンプト。18の主要ガイドラインに照らしてアプリを分析し、具体的な修正を伴う実践的で優先順位付けされたコンプライアンス計画を生成するよう導く。

プロンプト内容保存

🌐
## コンプライアンスプラン: 不明アプリ ### 概要 提供された情報が不足しているため、包括的なリスク評価は不可能です。ただし、Appleの審査で最も一般的な不合格理由(プライバシーポリシー、権限、クラッシュ、アカウント削除など)に基づき、詳細なチェックリストを提供します。各要件について、現在の状態は「不明」とマークし、確認すべき具体的な項目を列挙します。 ### 要件レビュー #### REQ-01 · プライバシーポリシー - ガイドライン5.1.1 - 不明 **所見:** アプリにプライバシーポリシーがあるかどうか、またそのURLがApp Store Connectに設定されているかどうかが不明です。 **リスク:** プライバシーポリシーがない場合、またはリンクが壊れている場合、審査は即座に不合格となります。Appleは審査中に直接URLにアクセスします。 **対応:** 以下の項目を確認してください: 1. 自社ドメインまたは信頼できるホスティングサービス(Notion公開ページ、Carrd、静的HTML)にプライバシーポリシーをホストしているか。 2. App Store Connectの「アプリ情報 → プライバシーポリシーURL」にそのURLを入力しているか。 3. アプリ内(設定画面またはオンボーディング)にそのURLへのタップ可能なリンクを設置しているか。 4. URLが200レスポンスを返し、ログイン壁の背後にないことを確認しているか。 #### REQ-02 · 権限使用説明 - ガイドライン5.1.1 - 不明 **所見:** `Info.plist`にどの`NSUsageDescription`キーが含まれているか不明です。 **リスク:** 権限を要求するが説明が不十分(例:「アプリがカメラを必要とします」)な場合、または権限を要求するのに説明キーが欠落している場合、不合格となります。 **対応:** アプリが要求するすべての権限(カメラ、マイク、位置情報、写真、連絡先、Bluetooth、通知など)をリストアップし、それぞれについて具体的でユーザー向けの説明を確認してください。例:「QRコードをスキャンして会場にチェックインするために使用します」。あいまいな表現は避けてください。 #### REQ-03 · 権限と実際の使用の一致 - ガイドライン5.1.1 - 不明 **所見:** アプリが権限をいつ要求するか(起動時か、機能使用時か)不明です。 **リスク:** 起動時に投機的に権限を要求する場合、または権限に対応する機能が存在しない場合、不合格となります。 **対応:** 権限要求は、ユーザーがその権限を必要とするアクションを初めて実行した時点(遅延要求)に限定してください。審査担当者が有料アカウントなしでその機能に到達できることを確認してください。 #### REQ-04 · 非公開APIの不使用 - ガイドライン2.5.1 - 不明 **所見:** 使用しているサードパーティライブラリやフレームワークが不明です。 **リスク:** 非公開APIを呼び出すライブラリが含まれている場合、自動静的解析で検出され、人間の審査前に不合格となります。 **対応:** 依存関係ツリーを監査してください。プロジェクトで`grep -r "_UIPrivate\|UIApplication.*openURL" .`を実行し、非公開APIの呼び出しを検出してください。ビルド後、`nm -u YourApp.app/YourApp | grep " U "`を実行して、インポートされたすべてのシンボルをリストアップし、予期しないものがないか確認してください。 #### REQ-05 · 起動時のクラッシュなし - ガイドライン2.1 - 不明 **所見:** アプリの最低OSバージョンとテスト環境が不明です。 **リスク:** 宣言された最低OSバージョンを実行する実機でクラッシュする場合、即座に不合格となります。 **対応:** 最低OSバージョンを実行する物理デバイスでテストしてください。iOS 17で追加されたAPIを`if #available(iOS 17, *)`ガードなしで呼び出していないか確認してください。TestFlight経由でアーカイブをインストールし、最も古いサポート対象デバイスでテストしてから提出してください。 #### REQ-06 · ゲスト/アカウントなしアクセス - ガイドライン5.1.1 - 不明 **所見:** アプリがアカウント作成を必須としているかどうか不明です。 **リスク:** アカウント作成前にアプリの機能を体験できない場合、不合格となります。 **対応:** アプリにログイン壁がある場合、ゲストモード、デモモード、またはオンボーディング画面を追加して、審査担当者がアカウントなしで機能を評価できるようにしてください。アカウントが真に必須な場合(例: チームメッセージングアプリ)、App Store Connectの審査ノートにデモ認証情報を提供し、アカウントが必要な理由を説明してください。 #### REQ-07 · アプリ内アカウント削除 - ガイドライン5.1.1 - 不明 **所見:** アプリがアカウント作成を許可しているかどうか、また削除機能があるかどうか不明です。 **リスク:** アカウント作成を許可するが、アプリ内でアカウント削除ができない場合、不合格となります。メールリンクやフォーム送信は不適格です。 **対応:** アカウント作成機能がある場合、設定画面に「アカウント削除」オプションを実装してください。これは、(1)明確にラベル付けされ、(2)実際の削除(非アクティブ化ではない)をトリガーし、(3)すべての個人データを削除または匿名化し、(4)ユーザーが誰にも連絡せずに自己完結で完了できるものでなければなりません。 #### REQ-08 · 外部決済リンクなし - ガイドライン3.1.1 - 不明 **所見:** アプリがデジタル商品やサブスクリプションを販売しているかどうか不明です。 **リスク:** アプリ内でApp Store外のデジタル商品購入に誘導するリンクやテキストがある場合、不合格となります。 **対応:** デジタル商品やサブスクリプションを販売する場合、StoreKitのみを使用してください。アプリ内で「ウェブサイトでプレミアムを購入 - 20%オフ!」などの外部決済への言及を削除してください。物理的な商品やアプリ外で提供されるサービス(EC、ライドシェア、フードデリバリー)はIAP要件の対象外です。 #### REQ-09 · 審査ノートのデモ認証情報 - ガイドライン2.1 - 不明 **所見:** アプリに認証が必要な機能があるかどうか不明です。 **リスク:** 審査担当者が認証を必要とする機能にアクセスできない場合、「アカウントが必要なためアプリを審査できません」という理由で不合格となります。 **対応:** 認証が必要な機能がある場合、デモ認証情報(ユーザー名、パスワード、2FA回避策)をApp Store Connectの「App Review Information」セクションに提供してください。説明文フィールドには記載しないでください。支払いフローがある場合は、テスト用クレジットカード番号も提供してください。 #### REQ-10 · スクリーンショットが実際のアプリを反映 - ガイドライン5.2.2 - 不明 **所見:** スクリーンショットが実際のUIを反映しているかどうか不明です。 **リスク:** モックアップやレンダリング画像をスクリーンショットとして使用した場合、誤解を招くメタデータとして不合格となります。 **対応:** Xcodeシミュレータまたは実機で実際のスクリーンショットを撮影してください。背景色、マーケティングテキストのオーバーレイ、デバイスフレームを追加することは可能ですが、UI自体は実際のもので、提出するバイナリと一致している必要があります。 #### REQ-11 · アプリ名がバイナリと一致 - ガイドライン1.2 - 不明 **所見:** `CFBundleDisplayName`とApp Store Connectのアプリ名が一致しているかどうか不明です。 **リスク:** 不一致がある場合、自動的に不合格となります。 **対応:** `Info.plist`の`CFBundleDisplayName`とApp Store Connectのアプリ名が完全に一致していることを確認してください。ホーム画面の表示名は約13〜14文字で切り詰められることに注意してください。 #### REQ-12 · 他プラットフォームへの言及なし - ガイドライン2.3.3 - 不明 **所見:** アプリの説明文やスクリーンショットに他プラットフォームへの言及があるかどうか不明です。 **リスク:** 説明文やスクリーンショットにAndroid、Google Play、競合プラットフォームへの言及がある場合、不合格となります。 **対応:** 説明文、スクリーンショット、アプリ内テキストに「Androidでも利用可能!」などの記述がないか確認してください。また、スクリーンショットにAndroidスタイルのUI要素(Material Designボトムシート、FAB、戻る矢印ナビゲーション)が表示されていないか確認してください。 #### REQ-13 · 年齢レーティングの正確性 - ガイドライン1.3 - 不明 **所見:** アプリのコンテンツと宣言された年齢レーティングが不明です。 **リスク:** 成熟したコンテンツ(暴力、性的テーマ、ギャンブル、モデレーションなしのUGC)が4+と評価されている場合、不合格または削除されます。 **対応:** アプリにユーザー生成コンテンツがある場合、モデレーション(報告/フラグ機能、モデレーションポリシー、人または自動フィルタリング)を実装しない限り、17+と評価する必要があります。App Store ConnectでUGCコンテンツ記述子を選択する際にAppleが確認します。 #### REQ-14 · 現在の画面サイズのサポート - ガイドライン2.1 - 不明 **所見:** アプリが最新のiPhone画面サイズ(Dynamic Island搭載デバイスを含む)で正しくレンダリングされるかどうか不明です。 **リスク:** ハードコードされたフレームサイズ、Safe Areaインセットの欠落、Dynamic Islandの背後に隠れるコンテンツは不合格となります。 **対応:** `frame(height: 44)`などの固定フレームサイズを`safeAreaInsets`またはSwiftUIの`.safeAreaPadding()`に置き換えてください。iPhone 15 Proシミュレータ(Dynamic Island)とiPhone SE(小画面)で特にテストしてください。 #### REQ-15 · HTTPS / App Transport Security - ガイドライン5.1.1 - 不明 **所見:** すべてのネットワーク呼び出しがHTTPSを使用しているかどうか不明です。 **リスク:** `NSAllowsArbitraryLoads = true`が設定されている場合、正当な理由がない限り不合格となります。 **対応:** すべてのAPIエンドポイントがHTTPSを使用していることを確認してください。`NSAllowsArbitraryLoads`をグローバルに設定している場合、特定のドメインのみを許可する`NSExceptionDomains`に置き換えてください。それでも審査ノートで正当性を説明する必要があります。 #### REQ-16 · 現在のXcode / SDKでビルド - ガイドライン2.5 - 不明 **所見:** 使用しているXcodeバージョンが不明です。 **リスク:** 2025年現在、Xcode 15+(iOS 17 SDK以上)でビルドされていない場合、アップロードパイプラインで自動的に不合格となります。 **対応:** `xcode-select --version`を実行してアクティブなXcodeを確認してください。Xcode 14を使用している場合、CocoaPods互換性の問題を修正してアップグレードしてください。`pod repo update`を実行し、`.podspec`の互換性を確認してください。 #### REQ-17 · アプリアイコンにアルファチャンネルなし - ガイドライン2.1 - 不明 **所見:** アプリアイコンに透明度があるかどうか不明です。 **リスク:** アルファチャンネルがある場合、アップロードパイプラインで自動的に不合格となります。 **対応:** アイコンが1024×1024で、透明度のないPNGとしてエクスポートされていることを確認してください。macOSのプレビューで「ツール → インスペクタを表示」で「アルファ」がリストされていないことを確認するか、`python3 -c "from PIL import Image; img = Image.open('icon.png'); print(img.mode)"`を実行して`RGB`(`RGBA`ではない)であることを確認してください。 #### REQ-18 · プライバシーマニフェスト(PrivacyInfo.xcprivacy) - ガイドライン5.1.2 - 不明 **所見:** アプリが特定のAPI(ファイルシステム、UserDefaults、ディスク容量、アクティブキーボード、インストール済みアプリリスト)を使用しているかどうか、またPrivacyInfo.xcprivacyファイルがあるかどうか不明です。 **リスク:** 2024年春以降、これらのAPIを使用するアプリは使用理由を宣言する必要があります。マニフェストがない場合、不合格となります。 **対応:** アプリが`NSUserDefaults`、`FileManager`、`UserDefaults`などのAPIを使用している場合、Xcodeで「ファイル → 新規 → ファイル → App Privacy」からPrivacyInfo.xcprivacyを生成し、使用理由を宣言してください。サードパーティSDK(Firebaseなど)も独自のマニフェストを含むバージョンにアップグレードしてください。アーカイブ後、`Products/Applications/YourApp.app/PrivacyInfo.xcprivacy`が存在することを確認し、Xcode Organizerのプライバシーレポートで検証してください。 --- ### 優先順位 現在の情報が不明のため、すべての要件が「不明」です。不合格の可能性が最も高いものから順に確認することをお勧めします: 1. **REQ-01(プライバシーポリシー)** - 欠落は即時不合格 2. **REQ-05(起動時クラッシュ)** - クラッシュは即時不合格 3. **REQ-07(アカウント削除)** - アカウント作成がある場合、欠落は不合格 4. **REQ-18(プライバシーマニフェスト)** - 2024年以降、必須 5. **REQ-16(Xcodeバージョン)** - 古いXcodeはアップロードで不合格 6. **REQ-17(アイコンのアルファチャンネル)** - 自動不合格 7. **REQ-02/03(権限)** - 不適切な権限は不合格 8. **REQ-08(外部決済)** - デジタル商品がある場合、不合格 9. **REQ-13(年齢レーティング)** - UGCがある場合、不正確な評価は不合格 10. **REQ-06(ゲストアクセス)** - ログイン壁がある場合、不合格 ### アプリ審査ノートテンプレート 以下の情報を提供できるようになるまで、審査ノートのドラフトは作成できません: - アプリの機能概要 - 認証が必要な場合のデモ認証情報 - アカウントが必要な理由(該当する場合) - テスト用クレジットカード番号(支払いフローがある場合) - 特別な設定やテスト手順 上記の情報を提供いただければ、具体的な審査ノートのドラフトを作成します。

ログインして完全なプロンプトを表示

次で続行:

ログインすると、次に同意したことになります: 利用規約 と プライバシーポリシー

使い方

このプロンプトは coding 向けに設計されています。上の内容をコピーして、お好みの AI ツールに貼り付けてください。

最良の結果を得るには、プレースホルダー(角括弧や大文字で示された部分)を具体的な要件に置き換えてください。

参考資料

カテゴリ:coding| prompts.chat| apple| app-store

ノート