Added in API level 21

RestrictionsReceiver


abstract class RestrictionsReceiver : BroadcastReceiver
kotlin.Any
   ↳ android.content.BroadcastReceiver
   ↳ android.service.restrictions.RestrictionsReceiver

Abstract implementation of a Restrictions Provider BroadcastReceiver. To implement a Restrictions Provider, extend from this class and implement the abstract methods. Export this receiver in the manifest. A profile owner device admin can then register this component as a Restrictions Provider using android.app.admin.DevicePolicyManager#setRestrictionsProvider(ComponentName,ComponentName).

The function of a Restrictions Provider is to transport permission requests from apps on this device to an administrator (most likely on a remote device or computer) and deliver back responses. The response should be sent back to the app via RestrictionsManager#notifyPermissionResponse(String, PersistableBundle).

Summary

Public constructors

Public methods
open Unit
onReceive(context: Context!, intent: Intent!)

Intercept standard Restrictions Provider broadcasts.

abstract Unit
onRequestPermission(context: Context!, packageName: String!, requestType: String!, requestId: String!, request: PersistableBundle!)

An asynchronous permission request made by an application for an operation that requires authorization by a local or remote administrator other than the user.

Inherited functions

Public constructors

RestrictionsReceiver

RestrictionsReceiver()

Public methods

onReceive

Added in API level 21
open fun onReceive(
    context: Context!,
    intent: Intent!
): Unit

Intercept standard Restrictions Provider broadcasts. Implementations should not override this method; it is better to implement the convenience callbacks for each action.

Parameters
context Context!: The Context in which the receiver is running.
intent Intent!: The Intent being received.

onRequestPermission

Added in API level 21
abstract fun onRequestPermission(
    context: Context!,
    packageName: String!,
    requestType: String!,
    requestId: String!,
    request: PersistableBundle!
): Unit

An asynchronous permission request made by an application for an operation that requires authorization by a local or remote administrator other than the user. The Restrictions Provider should transfer the request to the administrator and deliver back a response, when available. The calling application is aware that the response could take an indefinite amount of time.

If the request bundle contains the key RestrictionsManager#REQUEST_KEY_NEW_REQUEST, then a new request must be sent. Otherwise the provider can look up any previous response to the same requestId and return the cached response.

Parameters
packageName String!: the application requesting permission.
requestType String!: the type of request, which determines the content and presentation of the request data.
request PersistableBundle!: the request data bundle containing at a minimum a request id.