PermissionHelper

Helper de permissions centralisé.

Deux modes d'utilisation :

1. Vérification synchrone (sans Activity) :

val status = permissionHelper.check(PermissionRequest.Camera)

2. Demande runtime (nécessite une FragmentActivity) :

// Dans onCreate ou onStart :
val launcher = permissionHelper.registerLauncher(activity) { results ->
results.forEach { (permission, status) -> /* … */}
}

// Déclenchement — le callback est toujours invoqué, même si tout est déjà accordé :
permissionHelper.request(PermissionRequest.Camera, launcher)

Enregistrement Koin :

single { PermissionHelper(androidContext()) }

Constructors

Link copied to clipboard
constructor(context: Context)

Functions

Link copied to clipboard

Vérifie le statut d'une PermissionRequest sans déclencher de dialogue. Pour une request multi-permissions, retourne PermissionStatus.Granted seulement si toutes les permissions sont accordées.

Link copied to clipboard

true si toutes les permissions du request sont accordées.

Link copied to clipboard
fun openAppSettings(context: Context)

Ouvre les réglages de l'app — utile après un PermissionStatus.PermanentlyDenied.

Link copied to clipboard

Enregistre un launcher de permission à partir d'une FragmentActivity. À appeler dans onCreate ou onStart, avant que l'Activity soit started.

Link copied to clipboard
fun request(request: PermissionRequest, launcher: ActivityResultLauncher<Array<String>>, onAllGranted: () -> Unit = {})

Déclenche la demande pour le request via le launcher fourni. Les permissions déjà accordées sont filtrées et ne déclenchent pas de dialogue.