CkPermission class
A modern, developer-friendly permission manager for CoreKit.
Easily ensure permissions before triggering hardware features:
final status = await CkPermission.camera.ensure();
if (!status) return;
final picked = await ImagePicker().pickImage(
source: ImageSource.camera,
);
Constructors
- CkPermission(Permission permission)
-
Creates a CkPermission instance wrapping a Permission.
const
- CkPermission.from(Permission permission)
-
Creates a CkPermission instance from a Permission.
const
Properties
- hashCode → int
-
The hash code for this object.
no setteroverride
-
isDenied
→ Future<
bool> -
Returns
trueif the permission is denied.no setter -
isGranted
→ Future<
bool> -
Returns
trueif the permission is granted.no setter -
isLimited
→ Future<
bool> -
Returns
trueif the permission is limited (e.g. limited photo library access on iOS).no setter -
isPermanentlyDenied
→ Future<
bool> -
Returns
trueif the permission is permanently denied.no setter -
isRestricted
→ Future<
bool> -
Returns
trueif the permission is restricted (e.g. by parental controls).no setter - name → String
-
Friendly display name for the permission.
no setter
- permission → Permission
-
The underlying Permission from
permission_handler.final - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
status
→ Future<
PermissionStatus> -
The current PermissionStatus.
no setter
Methods
-
ensure(
{bool showDialog = true, BuildContext? context}) → Future< bool> -
Checks if the permission is granted. If not, requests it.
If permanently denied, shows the settings dialog if
showDialogis true. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
request(
) → Future< PermissionStatus> - Requests the permission from the operating system.
-
showDialog(
{BuildContext? context}) → Future - Displays the permanently denied dialog guiding the user to open app settings.
-
toString(
) → String -
A string representation of this object.
override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
override
Static Methods
-
ensureMultiple(
List< CkPermission> permissions, {bool showDialog = true, BuildContext? context}) → Future<Map< CkPermission, bool> > - Ensures multiple CkPermission permissions concurrently.
-
ensurePermission(
Permission permission, {bool showDialog = true, BuildContext? context}) → Future< bool> - Ensures a standard Permission.
-
getPermissionName(
Permission permission) → String - Gets the friendly name of any Permission.
-
openSettings(
) → Future< bool> - Opens the operating system app settings page.
-
showPermissionDialog(
Permission permission, {BuildContext? context}) → Future - Displays the permission denied dialog for any Permission.
Constants
- accessMediaLocation → const CkPermission
-
Access media location permission (
Permission.accessMediaLocation). - accessNotificationPolicy → const CkPermission
-
Access notification policy permission (
Permission.accessNotificationPolicy). - activityRecognition → const CkPermission
-
Activity recognition permission (
Permission.activityRecognition). - appTrackingTransparency → const CkPermission
-
App tracking transparency permission (
Permission.appTrackingTransparency). - assistant → const CkPermission
-
Assistant permission (
Permission.assistant). - audio → const CkPermission
-
Audio permission (
Permission.audio). - backgroundRefresh → const CkPermission
-
Background refresh permission (
Permission.backgroundRefresh). - bluetooth → const CkPermission
-
Bluetooth permission (
Permission.bluetooth). - bluetoothAdvertise → const CkPermission
-
Bluetooth advertise permission (
Permission.bluetoothAdvertise). - bluetoothConnect → const CkPermission
-
Bluetooth connect permission (
Permission.bluetoothConnect). - bluetoothScan → const CkPermission
-
Bluetooth scan permission (
Permission.bluetoothScan). - calendar → const CkPermission
-
Calendar permission (
Permission.calendar). - calendarFullAccess → const CkPermission
-
Calendar full access permission (
Permission.calendarFullAccess). - calendarWriteOnly → const CkPermission
-
Calendar write-only permission (
Permission.calendarWriteOnly). - camera → const CkPermission
-
Camera permission (
Permission.camera). - contacts → const CkPermission
-
Contacts permission (
Permission.contacts). - criticalAlerts → const CkPermission
-
Critical alerts permission (
Permission.criticalAlerts). - ignoreBatteryOptimizations → const CkPermission
-
Ignore battery optimizations permission (
Permission.ignoreBatteryOptimizations). - location → const CkPermission
-
General Location permission (
Permission.location). - locationAlways → const CkPermission
-
Location always permission (
Permission.locationAlways). - locationWhenInUse → const CkPermission
-
Location when in use permission (
Permission.locationWhenInUse). - manageExternalStorage → const CkPermission
-
Manage external storage permission (
Permission.manageExternalStorage). - mediaLibrary → const CkPermission
-
Media Library permission (
Permission.mediaLibrary). - microphone → const CkPermission
-
Microphone permission (
Permission.microphone). - nearbyWifiDevices → const CkPermission
-
Nearby Wi-Fi devices permission (
Permission.nearbyWifiDevices). - notification → const CkPermission
-
Notification permission (
Permission.notification). - phone → const CkPermission
-
Phone permission (
Permission.phone). - photos → const CkPermission
-
Photos / Photo Library permission (
Permission.photos). - photosAddOnly → const CkPermission
-
Photos Add-Only permission (
Permission.photosAddOnly). - reminders → const CkPermission
-
Reminders permission (
Permission.reminders). - requestInstallPackages → const CkPermission
-
Request install packages permission (
Permission.requestInstallPackages). - scheduleExactAlarm → const CkPermission
-
Schedule exact alarm permission (
Permission.scheduleExactAlarm). - sensors → const CkPermission
-
Sensors permission (
Permission.sensors). - sensorsAlways → const CkPermission
-
Sensors always permission (
Permission.sensorsAlways). - sms → const CkPermission
-
SMS permission (
Permission.sms). - speech → const CkPermission
-
Speech recognition permission (
Permission.speech). - storage → const CkPermission
-
Storage permission (
Permission.storage). - systemAlertWindow → const CkPermission
-
System alert window permission (
Permission.systemAlertWindow). - videos → const CkPermission
-
Videos permission (
Permission.videos).