チェックリスト2026年6月 更新

Info.plist 審査チェックリスト完全版

Info.plistはiOSアプリの設定ファイルです。権限の使用説明文(NSUsageDescription)が不備だったり、 App Storeで使用する機能の申告が漏れていると審査でリジェクトされます。 このガイドでよくある落とし穴をすべて確認しましょう。

権限説明文(NSUsageDescription)一覧

アプリが使用する権限ごとに、ユーザーに表示される説明文をInfo.plistに記載する必要があります。 説明文が空・曖昧・実態と異なる場合はリジェクトされます。

カメラNSCameraUsageDescription

記載例:

「写真や動画を撮影してプロフィール画像や投稿に使用するため」

写真ライブラリ(読み取り)NSPhotoLibraryUsageDescription

記載例:

「プロフィール画像を写真ライブラリから選択するため」

写真ライブラリ(書き込み)NSPhotoLibraryAddUsageDescription

記載例:

「撮影した写真をカメラロールに保存するため」

マイクNSMicrophoneUsageDescription

記載例:

「動画撮影時に音声を録音するため」

位置情報(使用中)NSLocationWhenInUseUsageDescription

記載例:

「近くの店舗を検索し、現在地周辺の情報を表示するため」

位置情報(常時)NSLocationAlwaysAndWhenInUseUsageDescription

記載例:

「移動経路を記録し、運動量を自動でトラッキングするため」

連絡先NSContactsUsageDescription

記載例:

「友人を招待するために連絡先から検索できるようにするため」

カレンダーNSCalendarsUsageDescription

記載例:

「予定をカレンダーに追加し、リマインダーを設定するため」

Face IDNSFaceIDUsageDescription

記載例:

「アプリへのログインをFace IDで素早く行うため」

ヘルスケア(読み取り)NSHealthShareUsageDescription

記載例:

「歩数・心拍数データを読み取り、健康レポートを作成するため」

ヘルスケア(書き込み)NSHealthUpdateUsageDescription

記載例:

「トレーニング記録をヘルスケアアプリに保存するため」

BluetoothNSBluetoothAlwaysUsageDescription

記載例:

「Bluetooth対応デバイスと接続してデータを同期するため」

広告トラッキング(ATT)NSUserTrackingUsageDescription

記載例:

「あなたの興味に合った広告を表示し、無関係な広告を減らすため」

審査でよく見られるその他の項目

CFBundleVersion / CFBundleShortVersionString

バージョン番号(CFBundleVersion)は毎回の提出で前回より大きい値を設定する必要があります。同じバージョン番号での再提出は処理されません。

URLスキーム(CFBundleURLTypes)

カスタムURLスキームを設定している場合、そのスキームがユニークであることを確認してください。他の一般的なスキーム名(「fb」「twitter」など)と重複するとリジェクトされます。

Google Sign-InやFacebook SDKなどの外部認証を使用する場合、SDKが要求するURLスキームの追加を忘れずに。

LSApplicationQueriesSchemes

canOpenURL()で確認するURLスキームを宣言します。宣言なしに使用するとiOS 9以降では常に「開けない」が返されます。また、宣言できるスキームは50個まで制限されています。

UIBackgroundModes

バックグラウンド処理を行う場合に設定します。宣言した機能を実際に使用していない場合、または宣言なしにバックグラウンド機能を使用している場合はリジェクトされます。

  • audio:バックグラウンド音声再生
  • location:バックグラウンド位置情報
  • fetch:バックグラウンドフェッチ
  • remote-notification:プッシュ通知

NSAppTransportSecurity

HTTPSではなくHTTP通信を許可する設定です。NSAllowsArbitraryLoads: trueは原則禁止されており、正当な理由なく設定するとリジェクトされます。 特定ドメインのみをNSExceptionDomainsで許可する方法を使用してください。

提出前チェックリスト

□

使用する権限すべてにNSUsageDescriptionが設定されている

□

権限説明文が具体的で、ユーザーが理解できる内容になっている

□

バージョン番号が前回より大きい値になっている

□

バックグラウンドモードを宣言した機能を実際に使用している

□

NSAllowsArbitraryLoadsがfalse(またはキーが存在しない)

□

カスタムURLスキームが他のアプリと重複していない

□

Privacy Manifestファイル(PrivacyInfo.xcprivacy)が含まれている

□

サードパーティSDKのPrivacy Manifestが統合されている

Info.plistを自動解析

AppReview AIにInfo.plistファイルをアップロードすると、権限申告の漏れや設定ミスを自動で検出します。

無料でInfo.plistをチェック →