Mapper  0.9.0
API documentation
Enumerations | Functions
AppPermissions Namespace Reference

A generic utility for requesting app permissions from the user. More...

Enumerations

enum  AppPermission { LocationAccess, StorageAccess }
 Permissions which are required for certain features of the application. More...
 
enum  PermissionResult { Denied, Granted }
 Possible results of requesting a permission. More...
 

Functions

PermissionResult checkPermission (AppPermission permission)
 Checks if the permission was granted or not. More...
 
template<class T >
void requestPermission (AppPermission permission, T *object, void(T::*function)())
 Asynchronously requests a new permission to be granted. More...
 
PermissionResult requestPermissionSync (AppPermission permission)
 Requests a permissions to be granted to the application. More...
 
QStringList androidPermissions (AppPermission permission)
 
bool permissionsGranted (const QStringList &requested_permissions, const QtAndroid::PermissionResultMap &actual_permissions)
 

Detailed Description

A generic utility for requesting app permissions from the user.

This class is modeled after the patterns found in [Qt]Android, but provides an abstraction from OS specific aspects.

Enumeration Type Documentation

◆ AppPermission

Permissions which are required for certain features of the application.

Enumerator
LocationAccess 
StorageAccess 

◆ PermissionResult

Possible results of requesting a permission.

Enumerator
Denied 
Granted 

Function Documentation

◆ androidPermissions()

QStringList AppPermissions::androidPermissions ( AppPermission  permission)

◆ checkPermission()

PermissionResult AppPermissions::checkPermission ( AppPermission  permission)
inline

Checks if the permission was granted or not.

◆ permissionsGranted()

bool AppPermissions::permissionsGranted ( const QStringList requested_permissions,
const QtAndroid::PermissionResultMap &  actual_permissions 
)

◆ requestPermission()

template<class T >
void AppPermissions::requestPermission ( AppPermission  permission,
T *  object,
void(T::*)()  function 
)

Asynchronously requests a new permission to be granted.

The given member function on the receiver will be called when the permission is actually granted.

This function must not be called while the requested permission is granted.

◆ requestPermissionSync()

PermissionResult AppPermissions::requestPermissionSync ( AppPermission  permission)
inline

Requests a permissions to be granted to the application.

This function must not be called while the requested permission is granted.