Skip to content

Commit 4ab759e

Browse files
committed
feat(docs): Update the permission request description and add new permission support
- Updated the permission request description in Info.plist and added support for critical alert permissions - Updated the key correspondence table between permissions and Info.plist in README.md
1 parent 616d817 commit 4ab759e

File tree

3 files changed

+26
-22
lines changed

3 files changed

+26
-22
lines changed

permission_handler/README.md

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -147,27 +147,27 @@ You must list the permission you want to use in your application:
147147
e.g. when you don't need camera permission, just delete 'NSCameraUsageDescription'
148148
The following lists the relationship between `Permission` and `The key of Info.plist`:
149149

150-
| Permission | Info.plist | Macro |
151-
|---------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------|----------------------------------------|
152-
| PermissionGroup.calendar (< iOS 17) | NSCalendarsUsageDescription | PERMISSION_EVENTS |
153-
| PermissionGroup.calendarWriteOnly (iOS 17+) | NSCalendarsWriteOnlyAccessUsageDescription | PERMISSION_EVENTS |
154-
| PermissionGroup.calendarFullAccess (iOS 17+) | NSCalendarsFullAccessUsageDescription | PERMISSION_EVENTS_FULL_ACCESS |
155-
| PermissionGroup.reminders | NSRemindersUsageDescription | PERMISSION_REMINDERS |
156-
| PermissionGroup.contacts | NSContactsUsageDescription | PERMISSION_CONTACTS |
157-
| PermissionGroup.camera | NSCameraUsageDescription | PERMISSION_CAMERA |
158-
| PermissionGroup.microphone | NSMicrophoneUsageDescription | PERMISSION_MICROPHONE |
159-
| PermissionGroup.speech | NSSpeechRecognitionUsageDescription | PERMISSION_SPEECH_RECOGNIZER |
160-
| PermissionGroup.photos | NSPhotoLibraryUsageDescription | PERMISSION_PHOTOS |
161-
| PermissionGroup.photosAddOnly | NSPhotoLibraryAddUsageDescription | PERMISSION_PHOTOS_ADD_ONLY |
162-
| PermissionGroup.location, PermissionGroup.locationAlways, PermissionGroup.locationWhenInUse | NSLocationUsageDescription, NSLocationAlwaysAndWhenInUseUsageDescription, NSLocationWhenInUseUsageDescription | PERMISSION_LOCATION |
163-
| PermissionGroup.locationWhenInUse | NSLocationWhenInUseUsageDescription | PERMISSION_LOCATION_WHENINUSE |
164-
| PermissionGroup.notification | PermissionGroupNotification | PERMISSION_NOTIFICATIONS |
165-
| PermissionGroup.mediaLibrary | NSAppleMusicUsageDescription, kTCCServiceMedia | PERMISSION_MEDIA_LIBRARY |
166-
| PermissionGroup.sensors | NSMotionUsageDescription | PermissionGroupSensors |
167-
| PermissionGroup.bluetooth | NSBluetoothAlwaysUsageDescription, NSBluetoothPeripheralUsageDescription | PermissionGroupBluetooth |
168-
| PermissionGroup.appTrackingTransparency | NSUserTrackingUsageDescription | PermissionGroupAppTrackingTransparency |
169-
| PermissionGroup.criticalAlerts | UNAuthorizationOptionCriticalAlert | PermissionGroupCriticalAlerts |
170-
| PermissionGroup.assistant | NSSiriUsageDescription | PermissionGroupAssistant |
150+
| Permission | Info.plist | Macro |
151+
|---------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------|--------------------------------------|
152+
| PermissionGroup.calendar (< iOS 17) | NSCalendarsUsageDescription | PERMISSION_EVENTS |
153+
| PermissionGroup.calendarWriteOnly (iOS 17+) | NSCalendarsWriteOnlyAccessUsageDescription | PERMISSION_EVENTS |
154+
| PermissionGroup.calendarFullAccess (iOS 17+) | NSCalendarsFullAccessUsageDescription | PERMISSION_EVENTS_FULL_ACCESS |
155+
| PermissionGroup.reminders | NSRemindersUsageDescription | PERMISSION_REMINDERS |
156+
| PermissionGroup.contacts | NSContactsUsageDescription | PERMISSION_CONTACTS |
157+
| PermissionGroup.camera | NSCameraUsageDescription | PERMISSION_CAMERA |
158+
| PermissionGroup.microphone | NSMicrophoneUsageDescription | PERMISSION_MICROPHONE |
159+
| PermissionGroup.speech | NSSpeechRecognitionUsageDescription | PERMISSION_SPEECH_RECOGNIZER |
160+
| PermissionGroup.photos | NSPhotoLibraryUsageDescription | PERMISSION_PHOTOS |
161+
| PermissionGroup.photosAddOnly | NSPhotoLibraryAddUsageDescription | PERMISSION_PHOTOS_ADD_ONLY |
162+
| PermissionGroup.location, PermissionGroup.locationAlways, PermissionGroup.locationWhenInUse | NSLocationUsageDescription, NSLocationAlwaysAndWhenInUseUsageDescription, NSLocationWhenInUseUsageDescription | PERMISSION_LOCATION |
163+
| PermissionGroup.locationWhenInUse | NSLocationWhenInUseUsageDescription | PERMISSION_LOCATION_WHENINUSE |
164+
| PermissionGroup.notification | | PERMISSION_NOTIFICATIONS |
165+
| PermissionGroup.mediaLibrary | NSAppleMusicUsageDescription, kTCCServiceMedia | PERMISSION_MEDIA_LIBRARY |
166+
| PermissionGroup.sensors | NSMotionUsageDescription | PERMISSION_SENSORS |
167+
| PermissionGroup.bluetooth | NSBluetoothAlwaysUsageDescription, NSBluetoothPeripheralUsageDescription | PERMISSION_BLUETOOTH |
168+
| PermissionGroup.appTrackingTransparency | NSUserTrackingUsageDescription | PERMISSION_APP_TRACKING_TRANSPARENCY |
169+
| PermissionGroup.criticalAlerts | UNAuthorizationOptionCriticalAlert | PERMISSION_CRITICAL_ALERTS |
170+
| PermissionGroup.assistant | NSSiriUsageDescription | PERMISSION_ASSISTANT |
171171

172172

173173
4. Clean & Rebuild

permission_handler_apple/example/ios/Runner/AppDelegate.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import UIKit
22
import Flutter
33

4-
@UIApplicationMain
4+
@main
55
@objc class AppDelegate: FlutterAppDelegate {
66
override func application(
77
_ application: UIApplication,

permission_handler_apple/example/ios/Runner/Info.plist

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,10 @@
102102
<key>NSUserTrackingUsageDescription</key>
103103
<string>appTrackingTransparency</string>
104104

105+
<!-- Permission options for the `criticalAlerts` -->
106+
<key>UNAuthorizationOptionCriticalAlert</key>
107+
<string>Authorization Option Critical Alert</string>
108+
105109
<!-- Permission options for the `assistant` group -->
106110
<key>NSSiriUsageDescription</key>
107111
<string>The example app would like access to Siri Kit to demonstrate requesting authorization.</string>

0 commit comments

Comments
 (0)