Overview of PermissionFlow
mainPermissionFlow
PermissionFlow is a macOS-specific library designed to guide users through the permission authorization process. It provides two main capabilities:
- Permission Guidance: For supported drag-based authorization pages in macOS, it opens the correct
System Settingsprivacy pane and displays a floating panel. This panel follows theSystem Settingswindow and allows users to drag the current application bundle directly into the permission list. - SystemSettingsKit: A utility for creating strongly typed deep links into various
System Settingspages and subsections on macOS (with partial support for iOS).
Key Features
- Automatic Navigation: Automatically opens the specific
System Settingsprivacy pane required for a permission. - Floating Guidance Panel:
- Animates from the trigger position to the
System Settingswindow. - Tracks the
System Settingswindow as it moves. - Provides the current app as a native drag source.
- Automatically closes when
System Settingsis closed. - Supports adaptive height based on content.
- Animates from the trigger position to the
- Real-time Status: UI components (buttons) provide visual feedback on permission status (e.g., green checkmark for granted, blue arrow for not granted).
- Intelligent Detection: Uses official Apple APIs to check permission status accurately without triggering unnecessary system prompts.