Functions
suspend fun FragmentActivity.ensurePermissions(vararg permissions: String): PermissionCheckResult {
// TODO
}
class PermissionCheckResult(
val isSuccessful: Boolean,
val deniedPermissions: List<String>)
Use Cases
launch {
val result = ensurePermissions(Manifest.permission.CAMERA)
if (result.isSuccessful) {
// TODO do something
}
else {
val denieds: List<String> = result.deniedPermissions
// TODO show alert message.
// snackbar().addButton("retry") { this@launch() }
}
}
Functions
Use Cases
launch { val result = ensurePermissions(Manifest.permission.CAMERA) if (result.isSuccessful) { // TODO do something } else { val denieds: List<String> = result.deniedPermissions // TODO show alert message. // snackbar().addButton("retry") { this@launch() } } }