perk
0.2.0indexedExperimental permission management library for managing Android and iOS permissions. Allows checking, requesting, and handling permission statuses with customizable callbacks.
0
Stars
—
Used by
dependents
—
Health
/ 100
Experimental permission management library for managing Android and iOS permissions. Allows checking, requesting, and handling permission statuses with customizable callbacks.
Heavily experimental Compose Multiplatform (Android/iOS) permission management library.
More permissions will be added when needed. Anyone can open an issue with a permission request.
To use this library, add perk as a dependency to your project:
[versions]
perk = "0.2.0"
[libraries]
perk = { module = "io.github.hristogochev:perk", version.ref = "perk" }
Check if a permission is granted:
val permissionChecker = rememberPermissionChecker()
permissionChecker.isPermissionGranted(Permission.PostNotifications) { isGranted: Boolean ->
println("Permission granted: $isGranted")
}
Request a permission:
val permissionRequestLauncher = rememberPermissionRequestLauncher { permission:Permission, permissionStatus:PermissionStatus ->
when (permissionStatus) {
PermissionStatus.Granted -> println("Permission granted")
PermissionStatus.PermanentlyDeclined -> println("Permission permanently declined")
PermissionStatus.TemporarilyDeclined -> println("Permission temporary declined")
}
}
permissionRequestLauncher.launch(Permission.PostNotifications)
Request a permission until the user grants it or cancels the request:
val permissionRequestDialogLauncher = rememberPermissionRequestDialogLauncher(Permission.PostNotifications) { permission: Permission ->
println("Permission granted")
}
permissionRequestDialogLauncher.launch()
Licensed under MIT license.
Surfaced from shared tags and platforms — no rankings paid for.