iOS のユーザデータにアクセスするための Info.plist への許可設定まとめ
iOS アプリを作る時に、カメラや連絡先など、ユーザデータにアクセスする際は、Info.plist にキーと使用目的を明記する必要がある。
このキーを忘れっぽいので、自分用にまとめる。
| Key | Key (Xcode Name) | 対象操作 |
|---|---|---|
| NSCameraUsageDescription | Privacy - Camera Usage Description |
カメラへのアクセス |
| NSMicrophoneUsageDescription | Privacy - Microphone Usage Description |
マイクへのアクセス |
| NSPhotoLibraryUsageDescription | Privacy - Photo Library Usage Description |
フォトライブラリへのアクセス |
| NSPhotoLibraryAddUsageDescription | Privacy - Photo Library Additions Usage Description |
フォトライブラリへの書き込み |
| NSAppleMusicUsageDescription | Privacy - Media Library Usage Description |
メディアライブラリへのアクセス |
| NSLocationAlwaysUsageDescription | Privacy - Location Always Usage Description |
位置情報へのアクセス (常に許可) |
| NSLocationWhenInUseUsageDescription | Privacy - Location When In Use Usage Description |
位置情報へのアクセス (使用中のみ許可) |
| NSMotionUsageDescription | Privacy - Motion Usage Description |
加速度計へのアクセス |
| NSBluetoothPeripheralUsageDescription | Privacy - Bluetooth Peripheral Usage Description |
Bluetooth インターフェースへのアクセス |
| NSCalendarsUsageDescription | Privacy - Calendars Usage Description |
カレンダーへのアクセス |
| NSContactsUsageDescription | Privacy - Contacts Usage Description |
連絡先へのアクセス |
| NSHealthShareUsageDescription | Privacy - Health Share Usage Description |
ヘルスデータへのアクセス |
| NSHealthUpdateUsageDescription | Privacy - Health Update Usage Description |
ヘルスデータの変更 |
| NSHomeKitUsageDescription | Privacy - HomeKit Usage Description |
HomeKit の設定データへのアクセス |
| NSRemindersUsageDescription | Privacy - Reminders Usage Description |
リマインダへのアクセス |
| NSSiriUsageDescription | Privacy - Siri Usage Description |
Siri へのユーザデータ送信 |
| NSSpeechRecognitionUsageDescription | Privacy - Speech Recognition Usage Description |
Speech Recognition Server へのユーザデータ送信 |
| NFCReaderUsageDescription | Privacy - NFC Reader Usage Description |
NFC タグの利用 |
| NSFaceIDUsageDescription | Privacy - Face ID Usage Description |
FaceID 認証の利用 |
| NSVideoSubscriberAccountUsageDescription | Privacy - TV Provider Usage Description |
tvOS 用 |
Xcode 上でキーを追加する際は「Key」を入力しても「Key (Xcode Name)」の表示に自動的に切り替わる。
NSLocationAlwaysUsageDescription (常に許可) と NSLocationWhenInUseUsageDescription (使用中のみ許可) は iOS 8 からできたもの。それまでは NSLocationUsageDescription (Privacy - Location Usage Description) というキーでまとめて設定だった。
NSPhotoLibraryAddUsageDescription は iOS 11 から新たにできたモノで、フォトライブラリへの保存時に必要になった。