permission_manager 2.0.5
permission_manager: ^2.0.5 copied to clipboard
A Flutter plugin to check and request app permissions on Android and iOS using a unified and simple API.
2.0.5 #
๐ Bug Fixes #
- Fixed Swift Package Manager (SPM) product name mismatch (
permission_manager->permission-manager) - Fixed iOS build error caused by
CBCentralManager.authorizationrequirement (Bumped minimum iOS version to 13.0)
2.0.3 #
๐ Bug Fixes #
- Fixed critical iOS plugin syntax error (missing
switchkeyword) that prevented compilation - Fixed macOS permission denial issue where permissions were denied without showing system prompts
๐ Documentation Improvements #
- Added comprehensive macOS Setup section with:
- Complete Info.plist usage descriptions guide
- Required App Sandbox entitlements configuration
- Troubleshooting guide for "denied without prompt" issues
- Added Windows Setup section explaining OS-level permission handling
- Added Linux Setup section with distribution-specific notes
- Added Web Setup section with:
- HTTPS requirements and browser compatibility
- Supported permissions table
- Testing tips for localhost development
- Enhanced iOS setup section with best practices and tips
๐ง Example App Configuration #
- Added all required permission usage descriptions to macOS example app Info.plist
- Added complete App Sandbox entitlements to macOS DebugProfile.entitlements
- Added complete App Sandbox entitlements to macOS Release.entitlements
- Ensured iOS example app has all permission descriptions
๐๏ธ Swift Package Manager #
- Fixed Swift Package Manager (SPM) structure to align with Flutter official guidelines
- Resolved conflict between CocoaPods (
.podspec) and SwiftPM (Package.swift) - Moved Swift Package Manager configuration to root
.swiftpm/Package.swift - Ensured iOS and macOS native source files are correctly scoped under
Classes/ - Improved compatibility with Xcode Swift Package Manager integration
Note for macOS Users: If you're experiencing permission denials without prompts on macOS 14.7.5+, make sure to add the required Info.plist usage descriptions and App Sandbox entitlements as documented in the README.
2.0.2 #
- ๐ Fixed Swift Package Manager & CocoaPods conflict
2.0.1 #
- ๐ Fixed Swift switch-case compilation error on iOS/macOS
2.0.0 #
- ๐ Full Linux Support: Added native implementation for Linux platform mapping, achieving parity across all 6 Flutter platforms.
- ๐ฆ Swift Package Manager (SPM) Support: Integrated
Package.swiftfor both iOS and macOS, enabling modern dependency management. - ๐ 100% Documentation Coverage: Added comprehensive dartdoc comments for all public API members (classes, methods, enums).
- ๐ Improved Code Quality: Enabled
public_member_api_docslint and resolved all analysis warnings. - ๐งช Enhanced Testing: Updated unit tests to support the expanded platform interface and verified functionality.
1.0.0 #
๐ Features #
- ๐ Federated Architecture: Refactored to a modern federated structure for robust cross-platform extensibility.
- ๐ Expanded Platform Support:
- Android & iOS: Optimized native implementations for all permissions.
- Web: Initial support for core permissions using the Browser Permissions API.
- macOS: Full native support with parity to iOS.
- Windows: Infrastructure added for future expansion.
- ๐ก Real-time Updates: Listen to permission status changes via
statusStream(). - ๐ฆ Batch Operations: Check or request multiple permissions simultaneously with
checkMultiple()andrequestMultiple(). - ๐ค Specialized Android Permissions:
- Battery Optimization bypass.
- System Alert Window (Overlay).
- Schedule Exact Alarms.
- ๐ผ Granular Media Support (Android 13+):
mediaImages,mediaVideo, andmediaAudiosupport.
โ Supported Permissions #
- General: Camera, Microphone, Location (Always/InUse), Contacts, Phone, Notifications, Photos, Storage.
- Bluetooth:
bluetooth,bluetoothScan,bluetoothConnect,bluetoothAdvertise. - Connectivity:
nearbyDevices. - Productivity:
calendar. - Messaging:
sms,sendSms(Android). - Health:
activityRecognition. - Media:
accessMediaLocation.
๐ฑ Supported Statuses #
granted,denied,permanentlyDenied(Android),restricted(iOS/macOS),limited(iOS/macOS Photos).