PermissionRequester

@ExperimentalTestApi
@TargetApi(value = 23)
public class PermissionRequester


Requests a runtime permission on devices running Android M (API 23) and above.

This class is usually used to grant runtime permissions to avoid the permission dialog from showing up and blocking the App's Ui. This is especially helpful for Ui-Testing to avoid loosing control over your application under test.

The requested permissions will be granted for all test methods in the test class. Use addPermissions to add a permission to the permission list. To request all permissions use the requestPermissions method.

Note: Usually this class would not be used directly, but through .

This API is currently in beta.

Summary

Public constructors

Public methods

void
addPermissions(@NonNull String[] permissions)

Adds a permission to the list of permissions which will be requested when requestPermissions is called.

void

Request all permissions previously added using addPermissions

Protected methods

void

Public constructors

PermissionRequester

public PermissionRequester()

Public methods

addPermissions

public void addPermissions(@NonNull String[] permissions)

Adds a permission to the list of permissions which will be requested when requestPermissions is called.

Precondition: This method does nothing when called on an API level lower than M.

Parameters
@NonNull String[] permissions

a list of Android runtime permissions.

requestPermissions

public void requestPermissions()

Request all permissions previously added using addPermissions

Precondition: This method does nothing when called on an API level lower than M.

Protected methods

setAndroidRuntimeVersion

@VisibleForTesting
protected void setAndroidRuntimeVersion(int sdkInt)