AndroidPermissionsManager

class AndroidPermissionsManager(context: Context = ApplicationHolder.applicationContext, permissions: Array<String> = emptyArray(), coroutineScope: CoroutineScope, logTag: String = "AndroidPermissionManager", logger: Logger = RestrictedLogger(RestrictedLogLevel.None), onPermissionChanged: AndroidPermissionStateHandler) : CoroutineScope

Convenience class for requesting a Permission and monitoring AndroidPermissionState

Parameters

context

The context for which to request the Permission

permissions

List of permissions to request. Should correspond to android.Manifest.permission.

coroutineScope

the CoroutineScope to launch permission requests in.

logTag

The tag used for logging

logger

The Logger used for logging

onPermissionChanged

A AndroidPermissionStateHandler that will be notified of changes to AndroidPermissionState

Constructors

Link copied to clipboard
constructor(context: Context = ApplicationHolder.applicationContext, permissions: Array<String> = emptyArray(), coroutineScope: CoroutineScope, logTag: String = "AndroidPermissionManager", logger: Logger = RestrictedLogger(RestrictedLogLevel.None), onPermissionChanged: AndroidPermissionStateHandler)

Properties

Link copied to clipboard
Link copied to clipboard

true if the permission has been granted.

Functions

Link copied to clipboard

Starts to request the permissions. Ensure startMonitoring was called to get notified of the permission change. Sets the state to AndroidPermissionState.DENIED_DO_NOT_ASK if the permission cannot be requested.

Link copied to clipboard
fun startMonitoring(interval: Duration)

Starts monitoring for changes to the AndroidPermissionState.

Link copied to clipboard

Stops monitoring for changes to the AndroidPermissionState.