permission
class permission
kotlin.Any | |
↳ | android.Manifest.permission |
Summary
Constants | |
---|---|
static String |
Allows a calling app to continue a call which was started in another app. |
static String |
Allows an app to access location in the background. |
static String |
Allows an application to access data blobs across users. |
static String |
Allows read/write access to the "properties" table in the checkin database, to change values that get uploaded. |
static String |
Allows an app to access approximate location. |
static String |
Allows an app to access precise location. |
static String |
Allows applications to access profiles with |
static String |
Allows an application to access extra location provider commands. |
static String |
Allows an application to access any geographic locations persisted in the user's shared collection. |
static String |
Allows applications to access information about networks. |
static String |
Marker permission for applications that wish to access notification policy. |
static String |
Allows applications to access information about Wi-Fi networks. |
static String |
Allows applications to call into AccountAuthenticators. |
static String |
Allows an application to recognize physical activity. |
static String |
Allows an application to add voicemails into the system. |
static String |
Allows the app to answer an incoming phone call. |
static String |
Allows an application to collect battery statistics |
static String |
Must be required by an |
static String |
Allows an application to tell the AppWidget service which application can access AppWidget's data. |
static String |
Must be required by a |
static String |
Must be required by a |
static String |
A subclass of |
static String | |
static String |
The system process that is allowed to bind to services in carrier apps will have this permission. |
static String |
Must be required by a , to ensure that only the system can bind to it. |
static String |
Must be required by any |
static String |
Must be required by a , to ensure that only the system can bind to it. |
static String |
Allows SystemUI to request third party controls. |
static String |
Must be required by a CredentialProviderService to ensure that only the system can bind to it. |
static String |
Must be required by device administration receiver, to ensure that only the system can interact with it. |
static String |
Must be required by an |
static String |
Must be required by a |
static String |
Must be required by an |
static String |
Must be required by an |
static String |
Must be required by a |
static String |
Must be required by an , to ensure that only the system can bind to it. |
static String |
Must be required by a |
static String |
Must be required by a |
static String |
Allows an application to bind to third party quick settings tiles. |
static String |
Must be required by a |
static String |
Must be required by a |
static String |
Must be required by a |
static String |
Must be required by a TextService (e.g. SpellCheckerService) to ensure that only the system can bind to it. |
static String |
Must be required by a |
static String |
Must be required by a |
static String |
Must be required by a link |
static String |
Must be required by a |
static String |
Must be required by a |
static String |
Must be required by an |
static String |
Must be required by a |
static String |
Allows applications to connect to paired bluetooth devices. |
static String |
Allows applications to discover and pair bluetooth devices. |
static String |
Required to be able to advertise to nearby Bluetooth devices. |
static String |
Required to be able to connect to paired Bluetooth devices. |
static String |
Allows applications to pair bluetooth devices without user interaction, and to allow or disallow phonebook access or message access. |
static String |
Required to be able to discover and pair nearby Bluetooth devices. |
static String |
Allows an application to access data from sensors that the user uses to measure what is happening inside their body, such as heart rate. |
static String |
Allows an application to access data from sensors that the user uses to measure what is happening inside their body, such as heart rate. |
static String |
Allows an application to broadcast a notification that an application package has been removed. |
static String |
Allows an application to broadcast an SMS receipt notification. |
static String |
Allows an application to broadcast sticky intents. |
static String |
Allows an application to broadcast a WAP PUSH receipt notification. |
static String |
Allows an app which implements the |
static String |
Allows an application to initiate a phone call without going through the Dialer user interface for the user to confirm the call. |
static String |
Allows an application to call any phone number, including emergency numbers, without going through the Dialer user interface for the user to confirm the call being placed. |
static String |
Required to be able to access the camera device. |
static String |
Allows an application to capture audio output. |
static String |
Allows an application to change whether an application component (other than its own) is enabled or not. |
static String |
Allows an application to modify the current configuration, such as locale. |
static String |
Allows applications to change network connectivity state. |
static String |
Allows applications to enter Wi-Fi Multicast mode. |
static String |
Allows applications to change Wi-Fi connectivity state. |
static String |
Allows an application to clear the caches of all installed applications on the device. |
static String |
Allows an application to configure and connect to Wifi displays |
static String |
Allows enabling/disabling location update notifications from the radio. |
static String |
Allows a browser to invoke the set of query apis to get metadata about credential candidates prepared during the CredentialManager. |
static String |
Allows specifying candidate credential providers to be queried in Credential Manager get flows, or to be preferred as a default in the Credential Manager create flows. |
static String |
Allows a browser to invoke credential manager APIs on behalf of another RP. |
static String |
Old permission for deleting an app's cache files, no longer used, but signals for us to quietly ignore calls instead of throwing an exception. |
static String |
Allows an application to delete packages. |
static String |
Allows an application to deliver companion messages to system |
static String |
Allows an application to get notified when a screen capture of its windows is attempted. |
static String |
Allows an application to get notified when it is being recorded. |
static String |
Allows applications to RW to diagnostic resources. |
static String |
Allows applications to disable the keyguard if it is not secure. |
static String |
Allows an application to retrieve state dump information from system services. |
static String |
Allows an application to indicate via |
static String |
Allows an assistive application to perform actions on behalf of users inside of applications. |
static String |
Allows an application to expand or collapse the status bar. |
static String |
Run as a manufacturer test application, running as the root user. |
static String |
Allows a regular application to use android. |
static String |
Allows a regular application to use android. |
static String |
Allows a regular application to use android. |
static String |
Allows a regular application to use android. |
static String |
Allows a regular application to use android. |
static String |
Allows a regular application to use android. |
static String |
Allows a regular application to use android. |
static String |
Allows a regular application to use android. |
static String |
Allows a regular application to use android. |
static String |
Allows a regular application to use android. |
static String |
Allows a regular application to use android. |
static String |
Allows a regular application to use android. |
static String |
Allows a regular application to use android. |
static String |
Allows a regular application to use android. |
static String |
Allows access to the list of accounts in the Accounts Service. |
static String |
Allows access to the list of accounts in the Accounts Service. |
static String |
Allows an application to find out the space used by any package. |
static String | |
static String |
This permission can be used on content providers to allow the global search system to access their data. |
static String |
Allows an app to prevent non-system-overlay windows from being drawn on top of it |
static String |
Allows an app to access sensor data with a sampling rate greater than 200 Hz. |
static String |
Allows an application to install a location provider into the Location Manager. |
static String |
Allows an application to install packages. |
static String |
Allows an application to install a shortcut in Launcher. |
static String |
Allows an instant app to create foreground services. |
static String |
Allows interaction across profiles in the same profile group. |
static String |
Allows applications to open network sockets. |
static String |
Allows an application to call |
static String |
Allows an application to capture screen content to perform a screenshot using the intent action |
static String |
An application needs this permission for |
static String |
Allows a data loader to read a package's access logs. |
static String |
Allows an application to use location features in hardware, such as the geofencing api. |
static String |
Allows financed device kiosk apps to perform actions on the Device Lock service |
static String |
Allows an application to manage policy related to accessibility. |
static String |
Allows an application to set policy related to account management. |
static String |
Allows an application to set device policies outside the current user that are required for securing device ownership without accessing user data. |
static String |
Allows an application to set device policies outside the current user. |
static String |
Allows an application to set device policies outside the current user that are critical for securing data within the current user. |
static String |
Allows an application to set policy related to airplane mode. |
static String |
Allows an application to manage policy regarding modifying applications. |
static String |
Allows an application to manage application restrictions. |
static String |
Allows an application to manage policy related to application user data. |
static String |
Allows an application to set policy related to sending assist content to a privileged app such as the Assistant app. |
static String |
Allows an application to set policy related to audio output. |
static String |
Allows an application to set policy related to autofill. |
static String |
Allows an application to manage backup service policy. |
static String |
Allows an application to manage policy related to block package uninstallation. |
static String |
Allows an application to set policy related to bluetooth. |
static String |
Allows an application to request bugreports with user consent. |
static String |
Allows an application to manage calling policy. |
static String |
Allows an application to set policy related to restricting a user's ability to use or enable and disable the camera. |
static String |
Allows an application to manage policy related to camera toggle. |
static String |
Allows an application to set policy related to certificates. |
static String |
Allows an application to manage policy related to common criteria mode. |
static String |
Allows an application to manage policy related to content protection. |
static String |
Allows an application to manage debugging features policy. |
static String |
Allows an application to set policy related to the default sms application. |
static String |
Allows an application to manage policy related to device identifiers. |
static String |
Allows an application to set policy related to the display. |
static String |
Allows an application to set policy related to factory reset. |
static String |
Allows an application to set policy related to fun. |
static String |
Allows an application to set policy related to input methods. |
static String |
Allows an application to manage installing from unknown sources policy. |
static String |
Allows an application to set policy related to keeping uninstalled packages. |
static String |
Allows an application to manage policy related to keyguard. |
static String |
Allows an application to set policy related to locale. |
static String |
Allows an application to set policy related to location. |
static String |
Allows an application to lock a profile or the device with the appropriate cross-user permission. |
static String |
Allows an application to set policy related to lock credentials. |
static String |
Allows an application to manage lock task policy. |
static String |
Allows an application to set policy related to subscriptions downloaded by an admin. |
static String |
Allows an application to manage policy related to metered data. |
static String |
Allows an application to set policy related to restricting a user's ability to use or enable and disable the microphone. |
static String |
Allows an application to manage policy related to microphone toggle. |
static String |
Allows an application to set policy related to mobile networks. |
static String |
Allows an application to manage policy preventing users from modifying users. |
static String |
Allows an application to manage policy related to the Memory Tagging Extension (MTE). |
static String |
Allows an application to set policy related to nearby communications (e.g. Beam and nearby streaming). |
static String |
Allows an application to set policy related to network logging. |
static String |
Allows an application to manage the identity of the managing organization. |
static String |
Allows an application to set policy related to override APNs. |
static String |
Allows an application to set policy related to hiding and suspending packages. |
static String |
Allows an application to set policy related to physical media. |
static String |
Allows an application to set policy related to printing. |
static String |
Allows an application to set policy related to private DNS. |
static String |
Allows an application to set policy related to profiles. |
static String |
Allows an application to set policy related to interacting with profiles (e.g. Disallowing cross-profile copy and paste). |
static String |
Allows an application to set a network-independent global HTTP proxy. |
static String |
Allows an application query system updates. |
static String |
Allows an application to force set a new device unlock password or a managed profile challenge on current user. |
static String |
Allows an application to set policy related to restricting the user from configuring private DNS. |
static String |
Allows an application to set the grant state of runtime permissions on packages. |
static String |
Allows an application to set policy related to users running in the background. |
static String |
Allows an application to manage safe boot policy. |
static String |
Allows an application to set policy related to screen capture. |
static String |
Allows an application to set policy related to the usage of the contents of the screen. |
static String |
Allows an application to set policy related to security logging. |
static String |
Allows an application to set policy related to settings. |
static String |
Allows an application to set policy related to sms. |
static String |
Allows an application to set policy related to the status bar. |
static String |
Allows an application to set support messages for when a user action is affected by an active policy. |
static String |
Allows an application to set policy related to suspending personal apps. |
static String |
Allows an application to manage policy related to system apps. |
static String |
Allows an application to set policy related to system dialogs. |
static String |
Allows an application to set policy related to system updates. |
static String |
Allows an application to manage device policy relating to time. |
static String |
Allows an application to set policy related to usb data signalling. |
static String |
Allows an application to set policy related to usb file transfers. |
static String |
Allows an application to set policy related to users. |
static String |
Allows an application to set policy related to VPNs. |
static String |
Allows an application to set policy related to the wallpaper. |
static String |
Allows an application to set policy related to Wifi. |
static String |
Allows an application to set policy related to windows. |
static String |
Allows an application to manage policy related to wiping data. |
static String |
Allows an application to manage access to documents, usually as part of a document picker. |
static String |
Allows an application a broad access to external storage in scoped storage. |
static String |
Allows an application to modify and delete media files on this device or any connected storage device without user confirmation. |
static String |
Allows to query ongoing call details and manage ongoing calls |
static String |
Allows a calling application which manages its own calls through the self-managed |
static String |
Allows applications to get notified when a Wi-Fi interface request cannot be satisfied without tearing down one or more other interfaces, and provide a decision whether to approve the request or reject it. |
static String |
This permission is used to let OEMs grant their trusted app access to a subset of privileged wifi APIs to improve wifi performance. |
static String |
Not for use by third-party applications. |
static String |
Allows an application to know what content is playing and control its playback. |
static String |
Allows an application to control the routing of media apps. |
static String |
Allows an application to modify global audio settings. |
static String |
Allows modification of the telephony state - power on, mmi, etc. |
static String |
Allows formatting file systems for removable storage. |
static String |
Allows mounting and unmounting file systems for removable storage. |
static String |
Required to be able to advertise and connect to nearby devices via Wi-Fi. |
static String |
Allows applications to perform I/O operations over NFC. |
static String |
Allows applications to receive NFC preferred payment service information. |
static String |
Allows applications to receive NFC transaction events. |
static String |
Allows an application to modify any wifi configuration, even if created by another application. |
static String |
Allows an application to collect component usage statistics |
static String | |
static String |
Allows an app to post notifications |
static String |
Allows an application to see the number being dialed during an outgoing call with the option to redirect the call to a different number or abort the call altogether. |
static String |
Allows an application to display its suggestions using the autofill framework. |
static String |
Allows an application to be able to store and retrieve credentials from a remote device. |
static String |
Allows query of any normal app on the device, regardless of manifest declarations. |
static String |
Allows an application to query over global data in AppSearch that's visible to the ASSISTANT role. |
static String |
Allows read only access to phone state with a non dangerous permission, including the information like cellular network type, software version. |
static String |
Allows an application to read the user's calendar data. |
static String |
Allows an application to read the user's call log. |
static String |
Allows an application to read the user's contacts data. |
static String |
Allows an application to access the data in Dropbox. |
static String |
Allows an application to read from external storage. |
static String |
Allows an application to query over global data in AppSearch that's visible to the HOME role. |
static String |
Allows an application to retrieve the current state of keys and switches. |
static String |
Allows an application to read the low-level system log files. |
static String |
Allows an application to read audio files from external storage. |
static String |
Allows an application to read image files from external storage. |
static String |
Allows an application to read video files from external storage. |
static String |
Allows an application to read image or video files from external storage that a user has selected via the permission prompt photo picker. |
static String |
Allows an application to read nearby streaming policy. |
static String |
Allows read access to the device's phone number(s). |
static String |
Allows read only access to phone state, including the current cellular network information, the status of any ongoing calls, and a list of any |
static String |
Allows read only access to precise phone state. |
static String |
Allows an application to read SMS messages. |
static String |
Allows applications to read the sync settings. |
static String |
Allows applications to read the sync stats. |
static String |
Allows an application to read voicemails in the system. |
static String |
Required to be able to reboot the device. |
static String |
Allows an application to receive the |
static String |
Allows an application to monitor incoming MMS messages. |
static String |
Allows an application to receive SMS messages. |
static String |
Allows an application to receive WAP push messages. |
static String |
Allows an application to record audio. |
static String |
Allows an application to change the Z-order of tasks. |
static String |
Allows application to request to be associated with a virtual display capable of streaming Android applications ( |
static String |
Allows application to request to be associated with a vehicle head unit capable of automotive projection ( |
static String |
Allows application to request to be associated with a computer to share functionality and/or data with other devices, such as notifications, photos and media ( |
static String |
Allows app to request to be associated with a device via |
static String |
Allows application to request to stream content from an Android host to a nearby device ( |
static String |
Allows app to request to be associated with a device via |
static String |
Allows a companion app to run in the background. |
static String |
Allows an application to create a "self-managed" association. |
static String |
Allows a companion app to start a foreground service from the background. |
static String |
Allows a companion app to use data in the background. |
static String |
Allows an application to request deleting packages. |
static String |
Permission an application must hold in order to use |
static String |
Allows an application to request installing packages. |
static String |
Allows an application to subscribe to notifications about the presence status change of their associated companion device |
static String |
Allows an application to request the screen lock complexity and prompt users to update the screen lock to a certain complexity level. |
static String | |
static String |
Allows applications to use the user-initiated jobs API. |
static String |
Allows applications to use exact alarm APIs. |
static String |
Allows an application (Phone) to send a request to other applications to handle the respond-via-message action during incoming calls. |
static String |
Allows an application to send SMS messages. |
static String |
Allows an application to broadcast an Intent to set an alarm for the user. |
static String |
Allows an application to control whether activities are immediately finished when put in the background. |
static String |
Modify the global animation scaling factor. |
static String |
Allows an application to set the advanced features on BiometricDialog (SystemUI), including logo, logo description, and content view with more options button. |
static String |
Configure an application for debugging. |
static String | |
static String |
Allows an application to set the maximum number of (not needed) application processes that can be running. |
static String |
Allows applications to set the system time directly. |
static String |
Allows applications to set the system time zone directly. |
static String |
Allows applications to set the wallpaper. |
static String |
Allows applications to set the wallpaper hints. |
static String |
Allow an application to request that a signal be sent to all persistent processes. |
static String |
Allows financial apps to read filtered sms messages. |
static String |
Allows an application to start foreground services from the background at any time. |
static String |
Allows the holder to start the screen with a list of app features. |
static String |
Allows the holder to start the permission usage screen for an app. |
static String |
Allows an application to open, close, or disable the status bar and its icons. |
static String |
Allows an application to subscribe to keyguard locked (i.e., showing) state. |
static String |
Allows an app to create windows using the type |
static String |
Allows using the device's IR transmitter, if available. |
static String |
Allows an app to turn on the screen on, e. |
static String |
Don't use this permission in your app. |
static String |
Allows an application to update device statistics. |
static String |
Allows an application to indicate via |
static String |
Allows an app to use device supported biometric modalities. |
static String |
Allows apps to use exact alarms just like with |
static String |
Allows an app to use fingerprint hardware. |
static String |
Required for apps targeting |
static String |
Allows to read device identifiers and use ICC based authentication like EAP-AKA. |
static String |
Allows an application to use SIP service. |
static String |
Required to be able to range to devices using ultra-wideband. |
static String |
Allows access to the vibrator. |
static String |
Allows using PowerManager WakeLocks to keep processor from sleeping or screen from dimming. |
static String |
Allows applications to write the apn settings and read sensitive fields of an existing apn settings like user and password. |
static String |
Allows an application to write the user's calendar data. |
static String |
Allows an application to write and read the user's call log data. |
static String |
Allows an application to write the user's contacts data. |
static String |
Allows an application to write to external storage. |
static String |
Allows an application to modify the Google service map. |
static String |
Allows an application to read or write the secure system settings. |
static String |
Allows an application to read or write the system settings. |
static String |
Allows applications to write the sync settings. |
static String |
Allows an application to modify and remove existing voicemails in the system. |
Public constructors | |
---|---|
Constants
ACCEPT_HANDOVER
static val ACCEPT_HANDOVER: String
Allows a calling app to continue a call which was started in another app. An example is a video calling app that wants to continue a voice call on the user's mobile network.
When the handover of a call from one app to another takes place, there are two devices which are involved in the handover; the initiating and receiving devices. The initiating device is where the request to handover the call was started, and the receiving device is where the handover request is confirmed by the other party.
This permission protects access to the android.telecom.TelecomManager#acceptHandover(Uri, int, PhoneAccountHandle) which the receiving side of the handover uses to accept a handover.
Protection level: dangerous
Value: "android.permission.ACCEPT_HANDOVER"
ACCESS_BACKGROUND_LOCATION
static val ACCESS_BACKGROUND_LOCATION: String
Allows an app to access location in the background. If you're requesting this permission, you must also request either ACCESS_COARSE_LOCATION
or ACCESS_FINE_LOCATION
. Requesting this permission by itself doesn't give you location access.
Protection level: dangerous
This is a hard restricted permission which cannot be held by an app until the installer on record allowlists the permission. For more details see android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set).
Value: "android.permission.ACCESS_BACKGROUND_LOCATION"
ACCESS_BLOBS_ACROSS_USERS
static val ACCESS_BLOBS_ACROSS_USERS: String
Allows an application to access data blobs across users.
Value: "android.permission.ACCESS_BLOBS_ACROSS_USERS"
ACCESS_CHECKIN_PROPERTIES
static val ACCESS_CHECKIN_PROPERTIES: String
Allows read/write access to the "properties" table in the checkin database, to change values that get uploaded.
Not for use by third-party applications.
Value: "android.permission.ACCESS_CHECKIN_PROPERTIES"
ACCESS_COARSE_LOCATION
static val ACCESS_COARSE_LOCATION: String
Allows an app to access approximate location. Alternatively, you might want ACCESS_FINE_LOCATION
.
Protection level: dangerous
Value: "android.permission.ACCESS_COARSE_LOCATION"
ACCESS_FINE_LOCATION
static val ACCESS_FINE_LOCATION: String
Allows an app to access precise location. Alternatively, you might want ACCESS_COARSE_LOCATION
.
Protection level: dangerous
Value: "android.permission.ACCESS_FINE_LOCATION"
ACCESS_HIDDEN_PROFILES
static val ACCESS_HIDDEN_PROFILES: String
Allows applications to access profiles with android.content.pm.UserProperties#PROFILE_API_VISIBILITY_HIDDEN
user property, e.g. android.os.UserManager#USER_TYPE_PROFILE_PRIVATE
.
Protection level: normal
Value: "android.permission.ACCESS_HIDDEN_PROFILES"
ACCESS_LOCATION_EXTRA_COMMANDS
static val ACCESS_LOCATION_EXTRA_COMMANDS: String
Allows an application to access extra location provider commands.
Protection level: normal
Value: "android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"
ACCESS_MEDIA_LOCATION
static val ACCESS_MEDIA_LOCATION: String
Allows an application to access any geographic locations persisted in the user's shared collection.
Protection level: dangerous
Value: "android.permission.ACCESS_MEDIA_LOCATION"
ACCESS_NETWORK_STATE
static val ACCESS_NETWORK_STATE: String
Allows applications to access information about networks.
Protection level: normal
Value: "android.permission.ACCESS_NETWORK_STATE"
ACCESS_NOTIFICATION_POLICY
static val ACCESS_NOTIFICATION_POLICY: String
Marker permission for applications that wish to access notification policy. This permission is not supported on managed profiles.
Protection level: normal
Value: "android.permission.ACCESS_NOTIFICATION_POLICY"
ACCESS_WIFI_STATE
static val ACCESS_WIFI_STATE: String
Allows applications to access information about Wi-Fi networks.
Protection level: normal
Value: "android.permission.ACCESS_WIFI_STATE"
ACCOUNT_MANAGER
static val ACCOUNT_MANAGER: String
Allows applications to call into AccountAuthenticators.
Not for use by third-party applications.
Value: "android.permission.ACCOUNT_MANAGER"
ACTIVITY_RECOGNITION
static val ACTIVITY_RECOGNITION: String
Allows an application to recognize physical activity.
Protection level: dangerous
Value: "android.permission.ACTIVITY_RECOGNITION"
ADD_VOICEMAIL
static val ADD_VOICEMAIL: String
Allows an application to add voicemails into the system.
Protection level: dangerous
Value: "com.android.voicemail.permission.ADD_VOICEMAIL"
ANSWER_PHONE_CALLS
static val ANSWER_PHONE_CALLS: String
Allows the app to answer an incoming phone call.
Protection level: dangerous
Value: "android.permission.ANSWER_PHONE_CALLS"
BATTERY_STATS
static val BATTERY_STATS: String
Allows an application to collect battery statistics
Protection level: signature|privileged|development
Value: "android.permission.BATTERY_STATS"
BIND_ACCESSIBILITY_SERVICE
static val BIND_ACCESSIBILITY_SERVICE: String
Must be required by an android.accessibilityservice.AccessibilityService
, to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_ACCESSIBILITY_SERVICE"
BIND_APPWIDGET
static val BIND_APPWIDGET: String
Allows an application to tell the AppWidget service which application can access AppWidget's data. The normal user flow is that a user picks an AppWidget to go into a particular host, thereby giving that host application access to the private data from the AppWidget app. An application that has this permission should honor that contract.
Not for use by third-party applications.
Value: "android.permission.BIND_APPWIDGET"
BIND_AUTOFILL_SERVICE
static val BIND_AUTOFILL_SERVICE: String
Must be required by a android.service.autofill.AutofillService
, to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_AUTOFILL_SERVICE"
BIND_CALL_REDIRECTION_SERVICE
static val BIND_CALL_REDIRECTION_SERVICE: String
Must be required by a android.telecom.CallRedirectionService
, to ensure that only the system can bind to it.
Protection level: signature|privileged
Value: "android.permission.BIND_CALL_REDIRECTION_SERVICE"
BIND_CARRIER_MESSAGING_CLIENT_SERVICE
static val BIND_CARRIER_MESSAGING_CLIENT_SERVICE: String
A subclass of android.service.carrier.CarrierMessagingClientService
must be protected with this permission.
Protection level: signature
Value: "android.permission.BIND_CARRIER_MESSAGING_CLIENT_SERVICE"
BIND_CARRIER_MESSAGING_SERVICE
static valBIND_CARRIER_MESSAGING_SERVICE: String
Deprecated: Use android.Manifest.permission#BIND_CARRIER_SERVICES
instead
Value: "android.permission.BIND_CARRIER_MESSAGING_SERVICE"
BIND_CARRIER_SERVICES
static val BIND_CARRIER_SERVICES: String
The system process that is allowed to bind to services in carrier apps will have this permission. Carrier apps should use this permission to protect their services that only the system is allowed to bind to.
Protection level: signature|privileged
Value: "android.permission.BIND_CARRIER_SERVICES"
BIND_CHOOSER_TARGET_SERVICE
static valBIND_CHOOSER_TARGET_SERVICE: String
Deprecated: For publishing direct share targets, please follow the instructions in https://developer.android.com/training/sharing/receive.html#providing-direct-share-targets instead.
Must be required by a , to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_CHOOSER_TARGET_SERVICE"
BIND_COMPANION_DEVICE_SERVICE
static val BIND_COMPANION_DEVICE_SERVICE: String
Must be required by any android.companion.CompanionDeviceService
s to ensure that only the system can bind to it.
Value: "android.permission.BIND_COMPANION_DEVICE_SERVICE"
BIND_CONDITION_PROVIDER_SERVICE
static val BIND_CONDITION_PROVIDER_SERVICE: String
Must be required by a , to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_CONDITION_PROVIDER_SERVICE"
BIND_CONTROLS
static val BIND_CONTROLS: String
Allows SystemUI to request third party controls.
Should only be requested by the System and required by android.service.controls.ControlsProviderService
declarations.
Value: "android.permission.BIND_CONTROLS"
BIND_CREDENTIAL_PROVIDER_SERVICE
static val BIND_CREDENTIAL_PROVIDER_SERVICE: String
Must be required by a CredentialProviderService to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_CREDENTIAL_PROVIDER_SERVICE"
BIND_DEVICE_ADMIN
static val BIND_DEVICE_ADMIN: String
Must be required by device administration receiver, to ensure that only the system can interact with it.
Protection level: signature
Value: "android.permission.BIND_DEVICE_ADMIN"
BIND_DREAM_SERVICE
static val BIND_DREAM_SERVICE: String
Must be required by an android.service.dreams.DreamService
, to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_DREAM_SERVICE"
BIND_INCALL_SERVICE
static val BIND_INCALL_SERVICE: String
Must be required by a android.telecom.InCallService
, to ensure that only the system can bind to it.
Protection level: signature|privileged
Value: "android.permission.BIND_INCALL_SERVICE"
BIND_INPUT_METHOD
static val BIND_INPUT_METHOD: String
Must be required by an android.inputmethodservice.InputMethodService
, to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_INPUT_METHOD"
BIND_MIDI_DEVICE_SERVICE
static val BIND_MIDI_DEVICE_SERVICE: String
Must be required by an android.media.midi.MidiDeviceService
, to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_MIDI_DEVICE_SERVICE"
BIND_NFC_SERVICE
static val BIND_NFC_SERVICE: String
Must be required by a android.nfc.cardemulation.HostApduService
or android.nfc.cardemulation.OffHostApduService
to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_NFC_SERVICE"
BIND_NOTIFICATION_LISTENER_SERVICE
static val BIND_NOTIFICATION_LISTENER_SERVICE: String
Must be required by an , to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_NOTIFICATION_LISTENER_SERVICE"
BIND_PRINT_SERVICE
static val BIND_PRINT_SERVICE: String
Must be required by a android.printservice.PrintService
, to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_PRINT_SERVICE"
BIND_QUICK_ACCESS_WALLET_SERVICE
static val BIND_QUICK_ACCESS_WALLET_SERVICE: String
Must be required by a android.service.quickaccesswallet.QuickAccessWalletService
to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_QUICK_ACCESS_WALLET_SERVICE"
BIND_QUICK_SETTINGS_TILE
static val BIND_QUICK_SETTINGS_TILE: String
Allows an application to bind to third party quick settings tiles.
Should only be requested by the System, should be required by TileService declarations.
Value: "android.permission.BIND_QUICK_SETTINGS_TILE"
BIND_REMOTEVIEWS
static val BIND_REMOTEVIEWS: String
Must be required by a android.widget.RemoteViewsService
, to ensure that only the system can bind to it.
Protection level: signature|privileged
Value: "android.permission.BIND_REMOTEVIEWS"
BIND_SCREENING_SERVICE
static val BIND_SCREENING_SERVICE: String
Must be required by a android.telecom.CallScreeningService
, to ensure that only the system can bind to it.
Protection level: signature|privileged
Value: "android.permission.BIND_SCREENING_SERVICE"
BIND_TELECOM_CONNECTION_SERVICE
static val BIND_TELECOM_CONNECTION_SERVICE: String
Must be required by a android.telecom.ConnectionService
, to ensure that only the system can bind to it.
Protection level: signature|privileged
Value: "android.permission.BIND_TELECOM_CONNECTION_SERVICE"
BIND_TEXT_SERVICE
static val BIND_TEXT_SERVICE: String
Must be required by a TextService (e.g. SpellCheckerService) to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_TEXT_SERVICE"
BIND_TV_INPUT
static val BIND_TV_INPUT: String
Must be required by a android.media.tv.TvInputService
to ensure that only the system can bind to it.
Protection level: signature|privileged
Value: "android.permission.BIND_TV_INPUT"
BIND_TV_INTERACTIVE_APP
static val BIND_TV_INTERACTIVE_APP: String
Must be required by a android.media.tv.interactive.TvInteractiveAppService
to ensure that only the system can bind to it.
Protection level: signature|privileged
Value: "android.permission.BIND_TV_INTERACTIVE_APP"
BIND_VISUAL_VOICEMAIL_SERVICE
static val BIND_VISUAL_VOICEMAIL_SERVICE: String
Must be required by a link android.telephony.VisualVoicemailService
to ensure that only the system can bind to it.
Protection level: signature|privileged
Value: "android.permission.BIND_VISUAL_VOICEMAIL_SERVICE"
BIND_VOICE_INTERACTION
static val BIND_VOICE_INTERACTION: String
Must be required by a android.service.voice.VoiceInteractionService
, to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_VOICE_INTERACTION"
BIND_VPN_SERVICE
static val BIND_VPN_SERVICE: String
Must be required by a android.net.VpnService
, to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_VPN_SERVICE"
BIND_VR_LISTENER_SERVICE
static val BIND_VR_LISTENER_SERVICE: String
Must be required by an android.service.vr.VrListenerService
, to ensure that only the system can bind to it.
Protection level: signature
Value: "android.permission.BIND_VR_LISTENER_SERVICE"
BIND_WALLPAPER
static val BIND_WALLPAPER: String
Must be required by a android.service.wallpaper.WallpaperService
, to ensure that only the system can bind to it.
Protection level: signature|privileged
Value: "android.permission.BIND_WALLPAPER"
BLUETOOTH
static val BLUETOOTH: String
Allows applications to connect to paired bluetooth devices.
Protection level: normal
Value: "android.permission.BLUETOOTH"
BLUETOOTH_ADMIN
static val BLUETOOTH_ADMIN: String
Allows applications to discover and pair bluetooth devices.
Protection level: normal
Value: "android.permission.BLUETOOTH_ADMIN"
BLUETOOTH_ADVERTISE
static val BLUETOOTH_ADVERTISE: String
Required to be able to advertise to nearby Bluetooth devices.
Protection level: dangerous
Value: "android.permission.BLUETOOTH_ADVERTISE"
BLUETOOTH_CONNECT
static val BLUETOOTH_CONNECT: String
Required to be able to connect to paired Bluetooth devices.
Protection level: dangerous
Value: "android.permission.BLUETOOTH_CONNECT"
BLUETOOTH_PRIVILEGED
static val BLUETOOTH_PRIVILEGED: String
Allows applications to pair bluetooth devices without user interaction, and to allow or disallow phonebook access or message access.
Not for use by third-party applications.
Value: "android.permission.BLUETOOTH_PRIVILEGED"
BLUETOOTH_SCAN
static val BLUETOOTH_SCAN: String
Required to be able to discover and pair nearby Bluetooth devices.
Protection level: dangerous
Value: "android.permission.BLUETOOTH_SCAN"
BODY_SENSORS
static val BODY_SENSORS: String
Allows an application to access data from sensors that the user uses to measure what is happening inside their body, such as heart rate.
Protection level: dangerous
Value: "android.permission.BODY_SENSORS"
BODY_SENSORS_BACKGROUND
static val BODY_SENSORS_BACKGROUND: String
Allows an application to access data from sensors that the user uses to measure what is happening inside their body, such as heart rate. If you're requesting this permission, you must also request BODY_SENSORS
. Requesting this permission by itself doesn't give you Body sensors access.
Protection level: dangerous
This is a hard restricted permission which cannot be held by an app until the installer on record allowlists the permission. For more details see android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set).
Value: "android.permission.BODY_SENSORS_BACKGROUND"
BROADCAST_PACKAGE_REMOVED
static val BROADCAST_PACKAGE_REMOVED: String
Allows an application to broadcast a notification that an application package has been removed.
Not for use by third-party applications.
Value: "android.permission.BROADCAST_PACKAGE_REMOVED"
BROADCAST_SMS
static val BROADCAST_SMS: String
Allows an application to broadcast an SMS receipt notification.
Not for use by third-party applications.
Value: "android.permission.BROADCAST_SMS"
BROADCAST_STICKY
static val BROADCAST_STICKY: String
Allows an application to broadcast sticky intents. These are broadcasts whose data is held by the system after being finished, so that clients can quickly retrieve that data without having to wait for the next broadcast.
Protection level: normal
Value: "android.permission.BROADCAST_STICKY"
BROADCAST_WAP_PUSH
static val BROADCAST_WAP_PUSH: String
Allows an application to broadcast a WAP PUSH receipt notification.
Not for use by third-party applications.
Value: "android.permission.BROADCAST_WAP_PUSH"
CALL_COMPANION_APP
static val CALL_COMPANION_APP: String
Allows an app which implements the InCallService
API to be eligible to be enabled as a calling companion app. This means that the Telecom framework will bind to the app's InCallService implementation when there are calls active. The app can use the InCallService API to view information about calls on the system and control these calls.
Protection level: normal
Value: "android.permission.CALL_COMPANION_APP"
CALL_PHONE
static val CALL_PHONE: String
Allows an application to initiate a phone call without going through the Dialer user interface for the user to confirm the call.
Note: An app holding this permission can also call carrier MMI codes to change settings such as call forwarding or call waiting preferences.
Protection level: dangerous
Value: "android.permission.CALL_PHONE"
CALL_PRIVILEGED
static val CALL_PRIVILEGED: String
Allows an application to call any phone number, including emergency numbers, without going through the Dialer user interface for the user to confirm the call being placed.
Not for use by third-party applications.
Value: "android.permission.CALL_PRIVILEGED"
CAMERA
static val CAMERA: String
Required to be able to access the camera device.
This will automatically enforce the uses-feature manifest element for all camera features. If you do not require all camera features or can properly operate if a camera is not available, then you must modify your manifest as appropriate in order to install on devices that don't support all camera features.
Protection level: dangerous
Value: "android.permission.CAMERA"
CAPTURE_AUDIO_OUTPUT
static val CAPTURE_AUDIO_OUTPUT: String
Allows an application to capture audio output. Use the CAPTURE_MEDIA_OUTPUT
permission if only the USAGE_UNKNOWN
), USAGE_MEDIA
) or USAGE_GAME
) usages are intended to be captured.
Not for use by third-party applications.
Value: "android.permission.CAPTURE_AUDIO_OUTPUT"
CHANGE_COMPONENT_ENABLED_STATE
static val CHANGE_COMPONENT_ENABLED_STATE: String
Allows an application to change whether an application component (other than its own) is enabled or not.
Not for use by third-party applications.
Value: "android.permission.CHANGE_COMPONENT_ENABLED_STATE"
CHANGE_CONFIGURATION
static val CHANGE_CONFIGURATION: String
Allows an application to modify the current configuration, such as locale.
Protection level: signature|privileged|development
Value: "android.permission.CHANGE_CONFIGURATION"
CHANGE_NETWORK_STATE
static val CHANGE_NETWORK_STATE: String
Allows applications to change network connectivity state.
Protection level: normal
Value: "android.permission.CHANGE_NETWORK_STATE"
CHANGE_WIFI_MULTICAST_STATE
static val CHANGE_WIFI_MULTICAST_STATE: String
Allows applications to enter Wi-Fi Multicast mode.
Protection level: normal
Value: "android.permission.CHANGE_WIFI_MULTICAST_STATE"
CHANGE_WIFI_STATE
static val CHANGE_WIFI_STATE: String
Allows applications to change Wi-Fi connectivity state.
Protection level: normal
Value: "android.permission.CHANGE_WIFI_STATE"
CLEAR_APP_CACHE
static val CLEAR_APP_CACHE: String
Allows an application to clear the caches of all installed applications on the device.
Protection level: signature|privileged
Value: "android.permission.CLEAR_APP_CACHE"
CONFIGURE_WIFI_DISPLAY
static val CONFIGURE_WIFI_DISPLAY: String
Allows an application to configure and connect to Wifi displays
Value: "android.permission.CONFIGURE_WIFI_DISPLAY"
CONTROL_LOCATION_UPDATES
static val CONTROL_LOCATION_UPDATES: String
Allows enabling/disabling location update notifications from the radio.
Not for use by third-party applications.
Value: "android.permission.CONTROL_LOCATION_UPDATES"
CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS
static val CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS: String
Allows a browser to invoke the set of query apis to get metadata about credential candidates prepared during the CredentialManager.prepareGetCredential API.
Protection level: normal
Value: "android.permission.CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS"
CREDENTIAL_MANAGER_SET_ALLOWED_PROVIDERS
static val CREDENTIAL_MANAGER_SET_ALLOWED_PROVIDERS: String
Allows specifying candidate credential providers to be queried in Credential Manager get flows, or to be preferred as a default in the Credential Manager create flows.
Protection level: normal
Value: "android.permission.CREDENTIAL_MANAGER_SET_ALLOWED_PROVIDERS"
CREDENTIAL_MANAGER_SET_ORIGIN
static val CREDENTIAL_MANAGER_SET_ORIGIN: String
Allows a browser to invoke credential manager APIs on behalf of another RP.
Protection level: normal
Value: "android.permission.CREDENTIAL_MANAGER_SET_ORIGIN"
DELETE_CACHE_FILES
static val DELETE_CACHE_FILES: String
Old permission for deleting an app's cache files, no longer used, but signals for us to quietly ignore calls instead of throwing an exception.
Protection level: signature|privileged
Value: "android.permission.DELETE_CACHE_FILES"
DELETE_PACKAGES
static val DELETE_PACKAGES: String
Allows an application to delete packages.
Not for use by third-party applications.
Starting in android.os.Build.VERSION_CODES#N
, user confirmation is requested when the application deleting the package is not the same application that installed the package.
Value: "android.permission.DELETE_PACKAGES"
DELIVER_COMPANION_MESSAGES
static val DELIVER_COMPANION_MESSAGES: String
Allows an application to deliver companion messages to system
Value: "android.permission.DELIVER_COMPANION_MESSAGES"
DETECT_SCREEN_CAPTURE
static val DETECT_SCREEN_CAPTURE: String
Allows an application to get notified when a screen capture of its windows is attempted.
Protection level: normal
Value: "android.permission.DETECT_SCREEN_CAPTURE"
DETECT_SCREEN_RECORDING
static val DETECT_SCREEN_RECORDING: String
Allows an application to get notified when it is being recorded.
Protection level: normal
Value: "android.permission.DETECT_SCREEN_RECORDING"
DIAGNOSTIC
static val DIAGNOSTIC: String
Allows applications to RW to diagnostic resources.
Not for use by third-party applications.
Value: "android.permission.DIAGNOSTIC"
DISABLE_KEYGUARD
static val DISABLE_KEYGUARD: String
Allows applications to disable the keyguard if it is not secure.
Protection level: normal
Value: "android.permission.DISABLE_KEYGUARD"
DUMP
static val DUMP: String
Allows an application to retrieve state dump information from system services.
Not for use by third-party applications.
Value: "android.permission.DUMP"
ENFORCE_UPDATE_OWNERSHIP
static val ENFORCE_UPDATE_OWNERSHIP: String
Allows an application to indicate via android.content.pm.PackageInstaller.SessionParams#setRequestUpdateOwnership
that it has the intention of becoming the update owner.
Protection level: normal
Value: "android.permission.ENFORCE_UPDATE_OWNERSHIP"
EXECUTE_APP_ACTION
static val EXECUTE_APP_ACTION: String
Allows an assistive application to perform actions on behalf of users inside of applications.
For now, this permission is only granted to the Assistant application selected by the user.
Protection level: internal|role
Value: "android.permission.EXECUTE_APP_ACTION"
EXPAND_STATUS_BAR
static val EXPAND_STATUS_BAR: String
Allows an application to expand or collapse the status bar.
Protection level: normal
Value: "android.permission.EXPAND_STATUS_BAR"
FACTORY_TEST
static val FACTORY_TEST: String
Run as a manufacturer test application, running as the root user. Only available when the device is running in manufacturer test mode.
Not for use by third-party applications.
Value: "android.permission.FACTORY_TEST"
FOREGROUND_SERVICE
static val FOREGROUND_SERVICE: String
Allows a regular application to use android.app.Service#startForeground.
Protection level: normal
Value: "android.permission.FOREGROUND_SERVICE"
FOREGROUND_SERVICE_CAMERA
static val FOREGROUND_SERVICE_CAMERA: String
Allows a regular application to use android.app.Service#startForeground with the type "camera".
Protection level: normal|instant
Value: "android.permission.FOREGROUND_SERVICE_CAMERA"
FOREGROUND_SERVICE_CONNECTED_DEVICE
static val FOREGROUND_SERVICE_CONNECTED_DEVICE: String
Allows a regular application to use android.app.Service#startForeground with the type "connectedDevice".
Protection level: normal|instant
Value: "android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE"
FOREGROUND_SERVICE_DATA_SYNC
static val FOREGROUND_SERVICE_DATA_SYNC: String
Allows a regular application to use android.app.Service#startForeground with the type "dataSync".
Protection level: normal|instant
Value: "android.permission.FOREGROUND_SERVICE_DATA_SYNC"
FOREGROUND_SERVICE_HEALTH
static val FOREGROUND_SERVICE_HEALTH: String
Allows a regular application to use android.app.Service#startForeground with the type "health".
Protection level: normal|instant
Value: "android.permission.FOREGROUND_SERVICE_HEALTH"
FOREGROUND_SERVICE_LOCATION
static val FOREGROUND_SERVICE_LOCATION: String
Allows a regular application to use android.app.Service#startForeground with the type "location".
Protection level: normal|instant
Value: "android.permission.FOREGROUND_SERVICE_LOCATION"
FOREGROUND_SERVICE_MEDIA_PLAYBACK
static val FOREGROUND_SERVICE_MEDIA_PLAYBACK: String
Allows a regular application to use android.app.Service#startForeground with the type "mediaPlayback".
Protection level: normal|instant
Value: "android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK"
FOREGROUND_SERVICE_MEDIA_PROCESSING
static val FOREGROUND_SERVICE_MEDIA_PROCESSING: String
Allows a regular application to use android.app.Service#startForeground with the type "mediaProcessing".
Protection level: normal|instant
Value: "android.permission.FOREGROUND_SERVICE_MEDIA_PROCESSING"
FOREGROUND_SERVICE_MEDIA_PROJECTION
static val FOREGROUND_SERVICE_MEDIA_PROJECTION: String
Allows a regular application to use android.app.Service#startForeground with the type "mediaProjection".
Protection level: normal|instant
Value: "android.permission.FOREGROUND_SERVICE_MEDIA_PROJECTION"
FOREGROUND_SERVICE_MICROPHONE
static val FOREGROUND_SERVICE_MICROPHONE: String
Allows a regular application to use android.app.Service#startForeground with the type "microphone".
Protection level: normal|instant
Value: "android.permission.FOREGROUND_SERVICE_MICROPHONE"
FOREGROUND_SERVICE_PHONE_CALL
static val FOREGROUND_SERVICE_PHONE_CALL: String
Allows a regular application to use android.app.Service#startForeground with the type "phoneCall".
Protection level: normal|instant
Value: "android.permission.FOREGROUND_SERVICE_PHONE_CALL"
FOREGROUND_SERVICE_REMOTE_MESSAGING
static val FOREGROUND_SERVICE_REMOTE_MESSAGING: String
Allows a regular application to use android.app.Service#startForeground with the type "remoteMessaging".
Protection level: normal|instant
Value: "android.permission.FOREGROUND_SERVICE_REMOTE_MESSAGING"
FOREGROUND_SERVICE_SPECIAL_USE
static val FOREGROUND_SERVICE_SPECIAL_USE: String
Allows a regular application to use android.app.Service#startForeground with the type "specialUse".
Protection level: normal|appop|instant
Value: "android.permission.FOREGROUND_SERVICE_SPECIAL_USE"
FOREGROUND_SERVICE_SYSTEM_EXEMPTED
static val FOREGROUND_SERVICE_SYSTEM_EXEMPTED: String
Allows a regular application to use android.app.Service#startForeground with the type "systemExempted". Apps are allowed to use this type only in the use cases listed in android.content.pm.ServiceInfo#FOREGROUND_SERVICE_TYPE_SYSTEM_EXEMPTED
.
Protection level: normal|instant
Value: "android.permission.FOREGROUND_SERVICE_SYSTEM_EXEMPTED"
GET_ACCOUNTS
static val GET_ACCOUNTS: String
Allows access to the list of accounts in the Accounts Service.
Note: Beginning with Android 6.0 (API level 23), if an app shares the signature of the authenticator that manages an account, it does not need "GET_ACCOUNTS"
permission to read information about that account. On Android 5.1 and lower, all apps need "GET_ACCOUNTS"
permission to read information about any account.
Protection level: dangerous
Value: "android.permission.GET_ACCOUNTS"
GET_ACCOUNTS_PRIVILEGED
static val GET_ACCOUNTS_PRIVILEGED: String
Allows access to the list of accounts in the Accounts Service.
Protection level: signature|privileged
Value: "android.permission.GET_ACCOUNTS_PRIVILEGED"
GET_PACKAGE_SIZE
static val GET_PACKAGE_SIZE: String
Allows an application to find out the space used by any package.
Protection level: normal
Value: "android.permission.GET_PACKAGE_SIZE"
GET_TASKS
static valGET_TASKS: String
Deprecated: No longer enforced.
Value: "android.permission.GET_TASKS"
GLOBAL_SEARCH
static val GLOBAL_SEARCH: String
This permission can be used on content providers to allow the global search system to access their data. Typically it used when the provider has some permissions protecting it (which global search would not be expected to hold), and added as a read-only permission to the path in the provider where global search queries are performed. This permission can not be held by regular applications; it is used by applications to protect themselves from everyone else besides global search.
Protection level: signature|privileged
Value: "android.permission.GLOBAL_SEARCH"
HIDE_OVERLAY_WINDOWS
static val HIDE_OVERLAY_WINDOWS: String
Allows an app to prevent non-system-overlay windows from being drawn on top of it
Value: "android.permission.HIDE_OVERLAY_WINDOWS"
HIGH_SAMPLING_RATE_SENSORS
static val HIGH_SAMPLING_RATE_SENSORS: String
Allows an app to access sensor data with a sampling rate greater than 200 Hz.
Protection level: normal
Value: "android.permission.HIGH_SAMPLING_RATE_SENSORS"
INSTALL_LOCATION_PROVIDER
static val INSTALL_LOCATION_PROVIDER: String
Allows an application to install a location provider into the Location Manager.
Not for use by third-party applications.
Value: "android.permission.INSTALL_LOCATION_PROVIDER"
INSTALL_PACKAGES
static val INSTALL_PACKAGES: String
Allows an application to install packages.
Not for use by third-party applications.
Value: "android.permission.INSTALL_PACKAGES"
INSTALL_SHORTCUT
static val INSTALL_SHORTCUT: String
Allows an application to install a shortcut in Launcher.
In Android O (API level 26) and higher, the INSTALL_SHORTCUT
broadcast no longer has any effect on your app because it's a private, implicit broadcast. Instead, you should create an app shortcut by using the requestPinShortcut()
method from the android.content.pm.ShortcutManager
class.
Protection level: normal
Value: "com.android.launcher.permission.INSTALL_SHORTCUT"
INSTANT_APP_FOREGROUND_SERVICE
static val INSTANT_APP_FOREGROUND_SERVICE: String
Allows an instant app to create foreground services.
Protection level: signature|development|instant|appop
Value: "android.permission.INSTANT_APP_FOREGROUND_SERVICE"
INTERACT_ACROSS_PROFILES
static val INTERACT_ACROSS_PROFILES: String
Allows interaction across profiles in the same profile group.
Value: "android.permission.INTERACT_ACROSS_PROFILES"
INTERNET
static val INTERNET: String
Allows applications to open network sockets.
Protection level: normal
Value: "android.permission.INTERNET"
KILL_BACKGROUND_PROCESSES
static val KILL_BACKGROUND_PROCESSES: String
Allows an application to call android.app.ActivityManager#killBackgroundProcesses
.
As of Android version android.os.Build.VERSION_CODES#UPSIDE_DOWN_CAKE
, the android.app.ActivityManager#killBackgroundProcesses
is no longer available to third party applications. For backwards compatibility, the background processes of the caller's own package will still be killed when calling this API. If the caller has the system permission KILL_ALL_BACKGROUND_PROCESSES
, other processes will be killed too.
Protection level: normal
Value: "android.permission.KILL_BACKGROUND_PROCESSES"
LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE
static val LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE: String
Allows an application to capture screen content to perform a screenshot using the intent action android.content.Intent#ACTION_LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE
.
Protection level: internal|role
Intended for use by ROLE_NOTES only.
Value: "android.permission.LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE"
LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK
static val LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK: String
An application needs this permission for android.provider.Settings#ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY
to show its android.app.Activity
embedded in Settings app.
Value: "android.permission.LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK"
LOADER_USAGE_STATS
static val LOADER_USAGE_STATS: String
Allows a data loader to read a package's access logs. The access logs contain the set of pages referenced over time.
Declaring the permission implies intention to use the API and the user of the device can grant permission through the Settings application.
Protection level: signature|privileged|appop
A data loader has to be the one which provides data to install an app.
A data loader has to have both permission:LOADER_USAGE_STATS AND appop:LOADER_USAGE_STATS allowed to be able to access the read logs.
Value: "android.permission.LOADER_USAGE_STATS"
LOCATION_HARDWARE
static val LOCATION_HARDWARE: String
Allows an application to use location features in hardware, such as the geofencing api.
Not for use by third-party applications.
Value: "android.permission.LOCATION_HARDWARE"
MANAGE_DEVICE_LOCK_STATE
static val MANAGE_DEVICE_LOCK_STATE: String
Allows financed device kiosk apps to perform actions on the Device Lock service
Protection level: internal|role
Intended for use by the FINANCED_DEVICE_KIOSK role only.
Value: "android.permission.MANAGE_DEVICE_LOCK_STATE"
MANAGE_DEVICE_POLICY_ACCESSIBILITY
static val MANAGE_DEVICE_POLICY_ACCESSIBILITY: String
Allows an application to manage policy related to accessibility.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_ACCESSIBILITY"
MANAGE_DEVICE_POLICY_ACCOUNT_MANAGEMENT
static val MANAGE_DEVICE_POLICY_ACCOUNT_MANAGEMENT: String
Allows an application to set policy related to account management.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_ACCOUNT_MANAGEMENT"
MANAGE_DEVICE_POLICY_ACROSS_USERS
static val MANAGE_DEVICE_POLICY_ACROSS_USERS: String
Allows an application to set device policies outside the current user that are required for securing device ownership without accessing user data.
Holding this permission allows the use of other held MANAGE_DEVICE_POLICY_* permissions across all users on the device provided they do not grant access to user data.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_ACROSS_USERS"
MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
static val MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL: String
Allows an application to set device policies outside the current user.
Fuller form of android.Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS
that removes the restriction on accessing user data.
Holding this permission allows the use of any other held MANAGE_DEVICE_POLICY_* permissions across all users on the device.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL"
MANAGE_DEVICE_POLICY_ACROSS_USERS_SECURITY_CRITICAL
static val MANAGE_DEVICE_POLICY_ACROSS_USERS_SECURITY_CRITICAL: String
Allows an application to set device policies outside the current user that are critical for securing data within the current user.
Holding this permission allows the use of other held MANAGE_DEVICE_POLICY_* permissions across all users on the device provided they are required for securing data within the current user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_ACROSS_USERS_SECURITY_CRITICAL"
MANAGE_DEVICE_POLICY_AIRPLANE_MODE
static val MANAGE_DEVICE_POLICY_AIRPLANE_MODE: String
Allows an application to set policy related to airplane mode.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_AIRPLANE_MODE"
MANAGE_DEVICE_POLICY_APPS_CONTROL
static val MANAGE_DEVICE_POLICY_APPS_CONTROL: String
Allows an application to manage policy regarding modifying applications.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_APPS_CONTROL"
MANAGE_DEVICE_POLICY_APP_RESTRICTIONS
static val MANAGE_DEVICE_POLICY_APP_RESTRICTIONS: String
Allows an application to manage application restrictions.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_APP_RESTRICTIONS"
MANAGE_DEVICE_POLICY_APP_USER_DATA
static val MANAGE_DEVICE_POLICY_APP_USER_DATA: String
Allows an application to manage policy related to application user data.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_APP_USER_DATA"
MANAGE_DEVICE_POLICY_ASSIST_CONTENT
static val MANAGE_DEVICE_POLICY_ASSIST_CONTENT: String
Allows an application to set policy related to sending assist content to a privileged app such as the Assistant app.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_ASSIST_CONTENT"
MANAGE_DEVICE_POLICY_AUDIO_OUTPUT
static val MANAGE_DEVICE_POLICY_AUDIO_OUTPUT: String
Allows an application to set policy related to audio output.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_AUDIO_OUTPUT"
MANAGE_DEVICE_POLICY_AUTOFILL
static val MANAGE_DEVICE_POLICY_AUTOFILL: String
Allows an application to set policy related to autofill.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_AUTOFILL"
MANAGE_DEVICE_POLICY_BACKUP_SERVICE
static val MANAGE_DEVICE_POLICY_BACKUP_SERVICE: String
Allows an application to manage backup service policy.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_BACKUP_SERVICE"
MANAGE_DEVICE_POLICY_BLOCK_UNINSTALL
static val MANAGE_DEVICE_POLICY_BLOCK_UNINSTALL: String
Allows an application to manage policy related to block package uninstallation.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_BLOCK_UNINSTALL"
MANAGE_DEVICE_POLICY_BLUETOOTH
static val MANAGE_DEVICE_POLICY_BLUETOOTH: String
Allows an application to set policy related to bluetooth.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_BLUETOOTH"
MANAGE_DEVICE_POLICY_BUGREPORT
static val MANAGE_DEVICE_POLICY_BUGREPORT: String
Allows an application to request bugreports with user consent.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_BUGREPORT"
MANAGE_DEVICE_POLICY_CALLS
static val MANAGE_DEVICE_POLICY_CALLS: String
Allows an application to manage calling policy.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_CALLS"
MANAGE_DEVICE_POLICY_CAMERA
static val MANAGE_DEVICE_POLICY_CAMERA: String
Allows an application to set policy related to restricting a user's ability to use or enable and disable the camera.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_CAMERA"
MANAGE_DEVICE_POLICY_CAMERA_TOGGLE
static val MANAGE_DEVICE_POLICY_CAMERA_TOGGLE: String
Allows an application to manage policy related to camera toggle.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_CAMERA_TOGGLE"
MANAGE_DEVICE_POLICY_CERTIFICATES
static val MANAGE_DEVICE_POLICY_CERTIFICATES: String
Allows an application to set policy related to certificates.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_CERTIFICATES"
MANAGE_DEVICE_POLICY_COMMON_CRITERIA_MODE
static val MANAGE_DEVICE_POLICY_COMMON_CRITERIA_MODE: String
Allows an application to manage policy related to common criteria mode.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_COMMON_CRITERIA_MODE"
MANAGE_DEVICE_POLICY_CONTENT_PROTECTION
static val MANAGE_DEVICE_POLICY_CONTENT_PROTECTION: String
Allows an application to manage policy related to content protection.
Protection level: internal|role
Value: "android.permission.MANAGE_DEVICE_POLICY_CONTENT_PROTECTION"
MANAGE_DEVICE_POLICY_DEBUGGING_FEATURES
static val MANAGE_DEVICE_POLICY_DEBUGGING_FEATURES: String
Allows an application to manage debugging features policy.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_DEBUGGING_FEATURES"
MANAGE_DEVICE_POLICY_DEFAULT_SMS
static val MANAGE_DEVICE_POLICY_DEFAULT_SMS: String
Allows an application to set policy related to the default sms application.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_DEFAULT_SMS"
MANAGE_DEVICE_POLICY_DEVICE_IDENTIFIERS
static val MANAGE_DEVICE_POLICY_DEVICE_IDENTIFIERS: String
Allows an application to manage policy related to device identifiers.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_DEVICE_IDENTIFIERS"
MANAGE_DEVICE_POLICY_DISPLAY
static val MANAGE_DEVICE_POLICY_DISPLAY: String
Allows an application to set policy related to the display.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_DISPLAY"
MANAGE_DEVICE_POLICY_FACTORY_RESET
static val MANAGE_DEVICE_POLICY_FACTORY_RESET: String
Allows an application to set policy related to factory reset.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_FACTORY_RESET"
MANAGE_DEVICE_POLICY_FUN
static val MANAGE_DEVICE_POLICY_FUN: String
Allows an application to set policy related to fun.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_FUN"
MANAGE_DEVICE_POLICY_INPUT_METHODS
static val MANAGE_DEVICE_POLICY_INPUT_METHODS: String
Allows an application to set policy related to input methods.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_INPUT_METHODS"
MANAGE_DEVICE_POLICY_INSTALL_UNKNOWN_SOURCES
static val MANAGE_DEVICE_POLICY_INSTALL_UNKNOWN_SOURCES: String
Allows an application to manage installing from unknown sources policy.
MANAGE_SECURITY_CRITICAL_DEVICE_POLICY_ACROSS_USERS is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_INSTALL_UNKNOWN_SOURCES"
MANAGE_DEVICE_POLICY_KEEP_UNINSTALLED_PACKAGES
static val MANAGE_DEVICE_POLICY_KEEP_UNINSTALLED_PACKAGES: String
Allows an application to set policy related to keeping uninstalled packages.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_KEEP_UNINSTALLED_PACKAGES"
MANAGE_DEVICE_POLICY_KEYGUARD
static val MANAGE_DEVICE_POLICY_KEYGUARD: String
Allows an application to manage policy related to keyguard.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_SECURITY_CRITICAL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_KEYGUARD"
MANAGE_DEVICE_POLICY_LOCALE
static val MANAGE_DEVICE_POLICY_LOCALE: String
Allows an application to set policy related to locale.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_LOCALE"
MANAGE_DEVICE_POLICY_LOCATION
static val MANAGE_DEVICE_POLICY_LOCATION: String
Allows an application to set policy related to location.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_LOCATION"
MANAGE_DEVICE_POLICY_LOCK
static val MANAGE_DEVICE_POLICY_LOCK: String
Allows an application to lock a profile or the device with the appropriate cross-user permission.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_LOCK"
MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS
static val MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS: String
Allows an application to set policy related to lock credentials.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_SECURITY_CRITICAL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS"
MANAGE_DEVICE_POLICY_LOCK_TASK
static val MANAGE_DEVICE_POLICY_LOCK_TASK: String
Allows an application to manage lock task policy.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_LOCK_TASK"
MANAGE_DEVICE_POLICY_MANAGED_SUBSCRIPTIONS
static val MANAGE_DEVICE_POLICY_MANAGED_SUBSCRIPTIONS: String
Allows an application to set policy related to subscriptions downloaded by an admin.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_MANAGED_SUBSCRIPTIONS"
MANAGE_DEVICE_POLICY_METERED_DATA
static val MANAGE_DEVICE_POLICY_METERED_DATA: String
Allows an application to manage policy related to metered data.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_METERED_DATA"
MANAGE_DEVICE_POLICY_MICROPHONE
static val MANAGE_DEVICE_POLICY_MICROPHONE: String
Allows an application to set policy related to restricting a user's ability to use or enable and disable the microphone.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_MICROPHONE"
MANAGE_DEVICE_POLICY_MICROPHONE_TOGGLE
static val MANAGE_DEVICE_POLICY_MICROPHONE_TOGGLE: String
Allows an application to manage policy related to microphone toggle.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_MICROPHONE_TOGGLE"
MANAGE_DEVICE_POLICY_MOBILE_NETWORK
static val MANAGE_DEVICE_POLICY_MOBILE_NETWORK: String
Allows an application to set policy related to mobile networks.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_MOBILE_NETWORK"
MANAGE_DEVICE_POLICY_MODIFY_USERS
static val MANAGE_DEVICE_POLICY_MODIFY_USERS: String
Allows an application to manage policy preventing users from modifying users.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_MODIFY_USERS"
MANAGE_DEVICE_POLICY_MTE
static val MANAGE_DEVICE_POLICY_MTE: String
Allows an application to manage policy related to the Memory Tagging Extension (MTE).
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_MTE"
MANAGE_DEVICE_POLICY_NEARBY_COMMUNICATION
static val MANAGE_DEVICE_POLICY_NEARBY_COMMUNICATION: String
Allows an application to set policy related to nearby communications (e.g. Beam and nearby streaming).
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_NEARBY_COMMUNICATION"
MANAGE_DEVICE_POLICY_NETWORK_LOGGING
static val MANAGE_DEVICE_POLICY_NETWORK_LOGGING: String
Allows an application to set policy related to network logging.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_NETWORK_LOGGING"
MANAGE_DEVICE_POLICY_ORGANIZATION_IDENTITY
static val MANAGE_DEVICE_POLICY_ORGANIZATION_IDENTITY: String
Allows an application to manage the identity of the managing organization.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_ORGANIZATION_IDENTITY"
MANAGE_DEVICE_POLICY_OVERRIDE_APN
static val MANAGE_DEVICE_POLICY_OVERRIDE_APN: String
Allows an application to set policy related to override APNs.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_OVERRIDE_APN"
MANAGE_DEVICE_POLICY_PACKAGE_STATE
static val MANAGE_DEVICE_POLICY_PACKAGE_STATE: String
Allows an application to set policy related to hiding and suspending packages.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_PACKAGE_STATE"
MANAGE_DEVICE_POLICY_PHYSICAL_MEDIA
static val MANAGE_DEVICE_POLICY_PHYSICAL_MEDIA: String
Allows an application to set policy related to physical media.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_PHYSICAL_MEDIA"
MANAGE_DEVICE_POLICY_PRINTING
static val MANAGE_DEVICE_POLICY_PRINTING: String
Allows an application to set policy related to printing.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_PRINTING"
MANAGE_DEVICE_POLICY_PRIVATE_DNS
static val MANAGE_DEVICE_POLICY_PRIVATE_DNS: String
Allows an application to set policy related to private DNS.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_PRIVATE_DNS"
MANAGE_DEVICE_POLICY_PROFILES
static val MANAGE_DEVICE_POLICY_PROFILES: String
Allows an application to set policy related to profiles.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_PROFILES"
MANAGE_DEVICE_POLICY_PROFILE_INTERACTION
static val MANAGE_DEVICE_POLICY_PROFILE_INTERACTION: String
Allows an application to set policy related to interacting with profiles (e.g. Disallowing cross-profile copy and paste).
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_PROFILE_INTERACTION"
MANAGE_DEVICE_POLICY_PROXY
static val MANAGE_DEVICE_POLICY_PROXY: String
Allows an application to set a network-independent global HTTP proxy.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_PROXY"
MANAGE_DEVICE_POLICY_QUERY_SYSTEM_UPDATES
static val MANAGE_DEVICE_POLICY_QUERY_SYSTEM_UPDATES: String
Allows an application query system updates.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_QUERY_SYSTEM_UPDATES"
MANAGE_DEVICE_POLICY_RESET_PASSWORD
static val MANAGE_DEVICE_POLICY_RESET_PASSWORD: String
Allows an application to force set a new device unlock password or a managed profile challenge on current user.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_RESET_PASSWORD"
MANAGE_DEVICE_POLICY_RESTRICT_PRIVATE_DNS
static val MANAGE_DEVICE_POLICY_RESTRICT_PRIVATE_DNS: String
Allows an application to set policy related to restricting the user from configuring private DNS.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_RESTRICT_PRIVATE_DNS"
MANAGE_DEVICE_POLICY_RUNTIME_PERMISSIONS
static val MANAGE_DEVICE_POLICY_RUNTIME_PERMISSIONS: String
Allows an application to set the grant state of runtime permissions on packages.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_RUNTIME_PERMISSIONS"
MANAGE_DEVICE_POLICY_RUN_IN_BACKGROUND
static val MANAGE_DEVICE_POLICY_RUN_IN_BACKGROUND: String
Allows an application to set policy related to users running in the background.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_RUN_IN_BACKGROUND"
MANAGE_DEVICE_POLICY_SAFE_BOOT
static val MANAGE_DEVICE_POLICY_SAFE_BOOT: String
Allows an application to manage safe boot policy.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_SAFE_BOOT"
MANAGE_DEVICE_POLICY_SCREEN_CAPTURE
static val MANAGE_DEVICE_POLICY_SCREEN_CAPTURE: String
Allows an application to set policy related to screen capture.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_SCREEN_CAPTURE"
MANAGE_DEVICE_POLICY_SCREEN_CONTENT
static val MANAGE_DEVICE_POLICY_SCREEN_CONTENT: String
Allows an application to set policy related to the usage of the contents of the screen.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_SCREEN_CONTENT"
MANAGE_DEVICE_POLICY_SECURITY_LOGGING
static val MANAGE_DEVICE_POLICY_SECURITY_LOGGING: String
Allows an application to set policy related to security logging.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_SECURITY_LOGGING"
MANAGE_DEVICE_POLICY_SETTINGS
static val MANAGE_DEVICE_POLICY_SETTINGS: String
Allows an application to set policy related to settings.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_SETTINGS"
MANAGE_DEVICE_POLICY_SMS
static val MANAGE_DEVICE_POLICY_SMS: String
Allows an application to set policy related to sms.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_SMS"
MANAGE_DEVICE_POLICY_STATUS_BAR
static val MANAGE_DEVICE_POLICY_STATUS_BAR: String
Allows an application to set policy related to the status bar.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_STATUS_BAR"
MANAGE_DEVICE_POLICY_SUPPORT_MESSAGE
static val MANAGE_DEVICE_POLICY_SUPPORT_MESSAGE: String
Allows an application to set support messages for when a user action is affected by an active policy.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_SUPPORT_MESSAGE"
MANAGE_DEVICE_POLICY_SUSPEND_PERSONAL_APPS
static val MANAGE_DEVICE_POLICY_SUSPEND_PERSONAL_APPS: String
Allows an application to set policy related to suspending personal apps.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_SUSPEND_PERSONAL_APPS"
MANAGE_DEVICE_POLICY_SYSTEM_APPS
static val MANAGE_DEVICE_POLICY_SYSTEM_APPS: String
Allows an application to manage policy related to system apps.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_SYSTEM_APPS"
MANAGE_DEVICE_POLICY_SYSTEM_DIALOGS
static val MANAGE_DEVICE_POLICY_SYSTEM_DIALOGS: String
Allows an application to set policy related to system dialogs.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_SYSTEM_DIALOGS"
MANAGE_DEVICE_POLICY_SYSTEM_UPDATES
static val MANAGE_DEVICE_POLICY_SYSTEM_UPDATES: String
Allows an application to set policy related to system updates.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_SYSTEM_UPDATES"
MANAGE_DEVICE_POLICY_TIME
static val MANAGE_DEVICE_POLICY_TIME: String
Allows an application to manage device policy relating to time.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_TIME"
MANAGE_DEVICE_POLICY_USB_DATA_SIGNALLING
static val MANAGE_DEVICE_POLICY_USB_DATA_SIGNALLING: String
Allows an application to set policy related to usb data signalling.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_USB_DATA_SIGNALLING"
MANAGE_DEVICE_POLICY_USB_FILE_TRANSFER
static val MANAGE_DEVICE_POLICY_USB_FILE_TRANSFER: String
Allows an application to set policy related to usb file transfers.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_USB_FILE_TRANSFER"
MANAGE_DEVICE_POLICY_USERS
static val MANAGE_DEVICE_POLICY_USERS: String
Allows an application to set policy related to users.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_USERS"
MANAGE_DEVICE_POLICY_VPN
static val MANAGE_DEVICE_POLICY_VPN: String
Allows an application to set policy related to VPNs.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_VPN"
MANAGE_DEVICE_POLICY_WALLPAPER
static val MANAGE_DEVICE_POLICY_WALLPAPER: String
Allows an application to set policy related to the wallpaper.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_WALLPAPER"
MANAGE_DEVICE_POLICY_WIFI
static val MANAGE_DEVICE_POLICY_WIFI: String
Allows an application to set policy related to Wifi.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_WIFI"
MANAGE_DEVICE_POLICY_WINDOWS
static val MANAGE_DEVICE_POLICY_WINDOWS: String
Allows an application to set policy related to windows.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_WINDOWS"
MANAGE_DEVICE_POLICY_WIPE_DATA
static val MANAGE_DEVICE_POLICY_WIPE_DATA: String
Allows an application to manage policy related to wiping data.
Manifest.permission#MANAGE_DEVICE_POLICY_ACROSS_USERS
is required to call APIs protected by this permission on users different to the calling user.
Protection level: internal|role
Intended for use by the DEVICE_POLICY_MANAGEMENT role only.
Value: "android.permission.MANAGE_DEVICE_POLICY_WIPE_DATA"
MANAGE_DOCUMENTS
static val MANAGE_DOCUMENTS: String
Allows an application to manage access to documents, usually as part of a document picker.
This permission should only be requested by the platform document management app. This permission cannot be granted to third-party apps.
Value: "android.permission.MANAGE_DOCUMENTS"
MANAGE_EXTERNAL_STORAGE
static val MANAGE_EXTERNAL_STORAGE: String
Allows an application a broad access to external storage in scoped storage. Intended to be used by few apps that need to manage files on behalf of the users.
Protection level: signature|appop|preinstalled
Value: "android.permission.MANAGE_EXTERNAL_STORAGE"
MANAGE_MEDIA
static val MANAGE_MEDIA: String
Allows an application to modify and delete media files on this device or any connected storage device without user confirmation. Applications must already be granted the READ_EXTERNAL_STORAGE
or MANAGE_EXTERNAL_STORAGE
} permissions for this permission to take effect.
Even if applications are granted this permission, if applications want to modify or delete media files, they also must get the access by calling android.provider.MediaStore#createWriteRequest(ContentResolver, Collection), android.provider.MediaStore#createDeleteRequest(ContentResolver, Collection), or android.provider.MediaStore#createTrashRequest(ContentResolver, Collection, boolean).
This permission doesn't give read or write access directly. It only prevents the user confirmation dialog for these requests.
If applications are not granted ACCESS_MEDIA_LOCATION
, the system also pops up the user confirmation dialog for the write request.
Protection level: signature|appop|preinstalled
Value: "android.permission.MANAGE_MEDIA"
MANAGE_ONGOING_CALLS
static val MANAGE_ONGOING_CALLS: String
Allows to query ongoing call details and manage ongoing calls
Protection level: signature|appop
Value: "android.permission.MANAGE_ONGOING_CALLS"
MANAGE_OWN_CALLS
static val MANAGE_OWN_CALLS: String
Allows a calling application which manages its own calls through the self-managed android.telecom.ConnectionService
APIs. See android.telecom.PhoneAccount#CAPABILITY_SELF_MANAGED
for more information on the self-managed ConnectionService APIs.
Protection level: normal
Value: "android.permission.MANAGE_OWN_CALLS"
MANAGE_WIFI_INTERFACES
static val MANAGE_WIFI_INTERFACES: String
Allows applications to get notified when a Wi-Fi interface request cannot be satisfied without tearing down one or more other interfaces, and provide a decision whether to approve the request or reject it.
Not for use by third-party applications.
Value: "android.permission.MANAGE_WIFI_INTERFACES"
MANAGE_WIFI_NETWORK_SELECTION
static val MANAGE_WIFI_NETWORK_SELECTION: String
This permission is used to let OEMs grant their trusted app access to a subset of privileged wifi APIs to improve wifi performance. Allows applications to manage Wi-Fi network selection related features such as enable or disable global auto-join, modify connectivity scan intervals, and approve Wi-Fi Direct connections.
Not for use by third-party applications.
Value: "android.permission.MANAGE_WIFI_NETWORK_SELECTION"
MASTER_CLEAR
static val MASTER_CLEAR: String
Not for use by third-party applications.
Value: "android.permission.MASTER_CLEAR"
MEDIA_CONTENT_CONTROL
static val MEDIA_CONTENT_CONTROL: String
Allows an application to know what content is playing and control its playback.
Not for use by third-party applications due to privacy of media consumption
Value: "android.permission.MEDIA_CONTENT_CONTROL"
MEDIA_ROUTING_CONTROL
static val MEDIA_ROUTING_CONTROL: String
Allows an application to control the routing of media apps.
Only for use by role COMPANION_DEVICE_WATCH
Value: "android.permission.MEDIA_ROUTING_CONTROL"
MODIFY_AUDIO_SETTINGS
static val MODIFY_AUDIO_SETTINGS: String
Allows an application to modify global audio settings.
Protection level: normal
Value: "android.permission.MODIFY_AUDIO_SETTINGS"
MODIFY_PHONE_STATE
static val MODIFY_PHONE_STATE: String
Allows modification of the telephony state - power on, mmi, etc. Does not include placing calls.
Not for use by third-party applications.
Value: "android.permission.MODIFY_PHONE_STATE"
MOUNT_FORMAT_FILESYSTEMS
static val MOUNT_FORMAT_FILESYSTEMS: String
Allows formatting file systems for removable storage.
Not for use by third-party applications.
Value: "android.permission.MOUNT_FORMAT_FILESYSTEMS"
MOUNT_UNMOUNT_FILESYSTEMS
static val MOUNT_UNMOUNT_FILESYSTEMS: String
Allows mounting and unmounting file systems for removable storage.
Not for use by third-party applications.
Value: "android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
NEARBY_WIFI_DEVICES
static val NEARBY_WIFI_DEVICES: String
Required to be able to advertise and connect to nearby devices via Wi-Fi.
Protection level: dangerous
Value: "android.permission.NEARBY_WIFI_DEVICES"
NFC
static val NFC: String
Allows applications to perform I/O operations over NFC.
Protection level: normal
Value: "android.permission.NFC"
NFC_PREFERRED_PAYMENT_INFO
static val NFC_PREFERRED_PAYMENT_INFO: String
Allows applications to receive NFC preferred payment service information.
Protection level: normal
Value: "android.permission.NFC_PREFERRED_PAYMENT_INFO"
NFC_TRANSACTION_EVENT
static val NFC_TRANSACTION_EVENT: String
Allows applications to receive NFC transaction events.
Protection level: normal
Value: "android.permission.NFC_TRANSACTION_EVENT"
OVERRIDE_WIFI_CONFIG
static val OVERRIDE_WIFI_CONFIG: String
Allows an application to modify any wifi configuration, even if created by another application. Once reconfigured the original creator cannot make any further modifications.
Not for use by third-party applications.
Value: "android.permission.OVERRIDE_WIFI_CONFIG"
PACKAGE_USAGE_STATS
static val PACKAGE_USAGE_STATS: String
Allows an application to collect component usage statistics
Declaring the permission implies intention to use the API and the user of the device can grant permission through the Settings application.
Protection level: signature|privileged|development|appop|retailDemo
Value: "android.permission.PACKAGE_USAGE_STATS"
PERSISTENT_ACTIVITY
static valPERSISTENT_ACTIVITY: String
Deprecated: This functionality will be removed in the future; please do not use. Allow an application to make its activities persistent.
Value: "android.permission.PERSISTENT_ACTIVITY"
POST_NOTIFICATIONS
static val POST_NOTIFICATIONS: String
Allows an app to post notifications
Protection level: dangerous
Value: "android.permission.POST_NOTIFICATIONS"
PROCESS_OUTGOING_CALLS
static valPROCESS_OUTGOING_CALLS: String
Deprecated: Applications should use android.telecom.CallRedirectionService
instead of the android.content.Intent#ACTION_NEW_OUTGOING_CALL
broadcast.
Allows an application to see the number being dialed during an outgoing call with the option to redirect the call to a different number or abort the call altogether.
Protection level: dangerous
This is a hard restricted permission which cannot be held by an app until the installer on record allowlists the permission. For more details see android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set).
Value: "android.permission.PROCESS_OUTGOING_CALLS"
PROVIDE_OWN_AUTOFILL_SUGGESTIONS
static val PROVIDE_OWN_AUTOFILL_SUGGESTIONS: String
Allows an application to display its suggestions using the autofill framework.
For now, this permission is only granted to the Browser application.
Protection level: internal|role
Value: "android.permission.PROVIDE_OWN_AUTOFILL_SUGGESTIONS"
PROVIDE_REMOTE_CREDENTIALS
static val PROVIDE_REMOTE_CREDENTIALS: String
Allows an application to be able to store and retrieve credentials from a remote device.
Protection level: signature|privileged|role
Value: "android.permission.PROVIDE_REMOTE_CREDENTIALS"
QUERY_ALL_PACKAGES
static val QUERY_ALL_PACKAGES: String
Allows query of any normal app on the device, regardless of manifest declarations.
Protection level: normal
Value: "android.permission.QUERY_ALL_PACKAGES"
READ_ASSISTANT_APP_SEARCH_DATA
static val READ_ASSISTANT_APP_SEARCH_DATA: String
Allows an application to query over global data in AppSearch that's visible to the ASSISTANT role.
Value: "android.permission.READ_ASSISTANT_APP_SEARCH_DATA"
READ_BASIC_PHONE_STATE
static val READ_BASIC_PHONE_STATE: String
Allows read only access to phone state with a non dangerous permission, including the information like cellular network type, software version.
Value: "android.permission.READ_BASIC_PHONE_STATE"
READ_CALENDAR
static val READ_CALENDAR: String
Allows an application to read the user's calendar data.
Protection level: dangerous
Value: "android.permission.READ_CALENDAR"
READ_CALL_LOG
static val READ_CALL_LOG: String
Allows an application to read the user's call log.
Note: If your app uses the READ_CONTACTS
permission and both your minSdkVersion
and targetSdkVersion
values are set to 15 or lower, the system implicitly grants your app this permission. If you don't need this permission, be sure your targetSdkVersion
is 16 or higher.
Protection level: dangerous
This is a hard restricted permission which cannot be held by an app until the installer on record allowlists the permission. For more details see android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set).
Value: "android.permission.READ_CALL_LOG"
READ_CONTACTS
static val READ_CONTACTS: String
Allows an application to read the user's contacts data.
Protection level: dangerous
Value: "android.permission.READ_CONTACTS"
READ_DROPBOX_DATA
static val READ_DROPBOX_DATA: String
Allows an application to access the data in Dropbox.
Not for use by third-party applications.
Value: "android.permission.READ_DROPBOX_DATA"
READ_EXTERNAL_STORAGE
static val READ_EXTERNAL_STORAGE: String
Allows an application to read from external storage.
Note: Starting in API level 33, this permission has no effect. If your app accesses other apps' media files, request one or more of these permissions instead: READ_MEDIA_IMAGES
, READ_MEDIA_VIDEO
, READ_MEDIA_AUDIO
. Learn more about the storage permissions that are associated with media files.
This permission is enforced starting in API level 19. Before API level 19, this permission is not enforced and all apps still have access to read from external storage. You can test your app with the permission enforced by enabling Protect USB storage under Developer options in the Settings app on a device running Android 4.1 or higher.
Also starting in API level 19, this permission is not required to read or write files in your application-specific directories returned by android.content.Context#getExternalFilesDir
and android.content.Context#getExternalCacheDir
.
Starting in API level 29, apps don't need to request this permission to access files in their app-specific directory on external storage, or their own files in the MediaStore
. Apps shouldn't request this permission unless they need to access other apps' files in the MediaStore
. Read more about these changes in the scoped storage section of the developer documentation.
If both your minSdkVersion
and targetSdkVersion
values are set to 3 or lower, the system implicitly grants your app this permission. If you don't need this permission, be sure your targetSdkVersion
is 4 or higher.
This is a soft restricted permission which cannot be held by an app it its full form until the installer on record allowlists the permission. Specifically, if the permission is allowlisted the holder app can access external storage and the visual and aural media collections while if the permission is not allowlisted the holder app can only access to the visual and aural medial collections. Also the permission is immutably restricted meaning that the allowlist state can be specified only at install time and cannot change until the app is installed. For more details see android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set).
Protection level: dangerous
Value: "android.permission.READ_EXTERNAL_STORAGE"
READ_HOME_APP_SEARCH_DATA
static val READ_HOME_APP_SEARCH_DATA: String
Allows an application to query over global data in AppSearch that's visible to the HOME role.
Value: "android.permission.READ_HOME_APP_SEARCH_DATA"
READ_INPUT_STATE
static valREAD_INPUT_STATE: String
Deprecated: The API that used this permission has been removed.
Allows an application to retrieve the current state of keys and switches.
Not for use by third-party applications.
Value: "android.permission.READ_INPUT_STATE"
READ_LOGS
static val READ_LOGS: String
Allows an application to read the low-level system log files.
Not for use by third-party applications, because Log entries can contain the user's private information.
Value: "android.permission.READ_LOGS"
READ_MEDIA_AUDIO
static val READ_MEDIA_AUDIO: String
Allows an application to read audio files from external storage.
This permission is enforced starting in API level android.os.Build.VERSION_CODES#TIRAMISU
. An app which targets android.os.Build.VERSION_CODES#TIRAMISU
or higher and needs to read audio files from external storage must hold this permission; READ_EXTERNAL_STORAGE
is not required. For apps with a targetSdkVersion
of android.os.Build.VERSION_CODES#S_V2
or lower, the READ_EXTERNAL_STORAGE
permission is required, instead, to read audio files.
Protection level: dangerous
Value: "android.permission.READ_MEDIA_AUDIO"
READ_MEDIA_IMAGES
static val READ_MEDIA_IMAGES: String
Allows an application to read image files from external storage.
This permission is enforced starting in API level android.os.Build.VERSION_CODES#TIRAMISU
. An app which targets android.os.Build.VERSION_CODES#TIRAMISU
or higher and needs to read image files from external storage must hold this permission; READ_EXTERNAL_STORAGE
is not required. For apps with a targetSdkVersion
of android.os.Build.VERSION_CODES#S_V2
or lower, the READ_EXTERNAL_STORAGE
permission is required, instead, to read image files.
Protection level: dangerous
Value: "android.permission.READ_MEDIA_IMAGES"
READ_MEDIA_VIDEO
static val READ_MEDIA_VIDEO: String
Allows an application to read video files from external storage.
This permission is enforced starting in API level android.os.Build.VERSION_CODES#TIRAMISU
. An app which targets android.os.Build.VERSION_CODES#TIRAMISU
or higher and needs to read video files from external storage must hold this permission; READ_EXTERNAL_STORAGE
is not required. For apps with a targetSdkVersion
of android.os.Build.VERSION_CODES#S_V2
or lower, the READ_EXTERNAL_STORAGE
permission is required, instead, to read video files.
Protection level: dangerous
Value: "android.permission.READ_MEDIA_VIDEO"
READ_MEDIA_VISUAL_USER_SELECTED
static val READ_MEDIA_VISUAL_USER_SELECTED: String
Allows an application to read image or video files from external storage that a user has selected via the permission prompt photo picker. Apps can check this permission to verify that a user has decided to use the photo picker, instead of granting access to READ_MEDIA_IMAGES
or READ_MEDIA_VIDEO
. It does not prevent apps from accessing the standard photo picker manually. This permission should be requested alongside READ_MEDIA_IMAGES
and/or READ_MEDIA_VIDEO
, depending on which type of media is desired.
This permission will be automatically added to an app's manifest if the app requests READ_MEDIA_IMAGES
, READ_MEDIA_VIDEO
, or ACCESS_MEDIA_LOCATION
regardless of target SDK. If an app does not request this permission, then the grant dialog will return `PERMISSION_GRANTED` for READ_MEDIA_IMAGES
and/or READ_MEDIA_VIDEO
, but the app will only have access to the media selected by the user. This false grant state will persist until the app goes into the background.
Protection level: dangerous
Value: "android.permission.READ_MEDIA_VISUAL_USER_SELECTED"
READ_NEARBY_STREAMING_POLICY
static val READ_NEARBY_STREAMING_POLICY: String
Allows an application to read nearby streaming policy. The policy controls whether to allow the device to stream its notifications and apps to nearby devices. Applications that are not the device owner will need this permission to call android.app.admin.DevicePolicyManager#getNearbyNotificationStreamingPolicy
or android.app.admin.DevicePolicyManager#getNearbyAppStreamingPolicy
.
Value: "android.permission.READ_NEARBY_STREAMING_POLICY"
READ_PHONE_NUMBERS
static val READ_PHONE_NUMBERS: String
Allows read access to the device's phone number(s). This is a subset of the capabilities granted by READ_PHONE_STATE
but is exposed to instant applications.
Protection level: dangerous
Value: "android.permission.READ_PHONE_NUMBERS"
READ_PHONE_STATE
static val READ_PHONE_STATE: String
Allows read only access to phone state, including the current cellular network information, the status of any ongoing calls, and a list of any android.telecom.PhoneAccount
s registered on the device.
Note: If both your minSdkVersion
and targetSdkVersion
values are set to 3 or lower, the system implicitly grants your app this permission. If you don't need this permission, be sure your targetSdkVersion
is 4 or higher.
Protection level: dangerous
Value: "android.permission.READ_PHONE_STATE"
READ_PRECISE_PHONE_STATE
static val READ_PRECISE_PHONE_STATE: String
Allows read only access to precise phone state. Allows reading of detailed information about phone state for special-use applications such as dialers, carrier applications, or ims applications.
Value: "android.permission.READ_PRECISE_PHONE_STATE"
READ_SMS
static val READ_SMS: String
Allows an application to read SMS messages.
Protection level: dangerous
This is a hard restricted permission which cannot be held by an app until the installer on record allowlists the permission. For more details see android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set).
Value: "android.permission.READ_SMS"
READ_SYNC_SETTINGS
static val READ_SYNC_SETTINGS: String
Allows applications to read the sync settings.
Protection level: normal
Value: "android.permission.READ_SYNC_SETTINGS"
READ_SYNC_STATS
static val READ_SYNC_STATS: String
Allows applications to read the sync stats.
Protection level: normal
Value: "android.permission.READ_SYNC_STATS"
READ_VOICEMAIL
static val READ_VOICEMAIL: String
Allows an application to read voicemails in the system.
Protection level: signature|privileged|role
Value: "com.android.voicemail.permission.READ_VOICEMAIL"
REBOOT
static val REBOOT: String
Required to be able to reboot the device.
Not for use by third-party applications.
Value: "android.permission.REBOOT"
RECEIVE_BOOT_COMPLETED
static val RECEIVE_BOOT_COMPLETED: String
Allows an application to receive the android.content.Intent#ACTION_BOOT_COMPLETED
that is broadcast after the system finishes booting. If you don't request this permission, you will not receive the broadcast at that time. Though holding this permission does not have any security implications, it can have a negative impact on the user experience by increasing the amount of time it takes the system to start and allowing applications to have themselves running without the user being aware of them. As such, you must explicitly declare your use of this facility to make that visible to the user.
Protection level: normal
Value: "android.permission.RECEIVE_BOOT_COMPLETED"
RECEIVE_MMS
static val RECEIVE_MMS: String
Allows an application to monitor incoming MMS messages.
Protection level: dangerous
This is a hard restricted permission which cannot be held by an app until the installer on record allowlists the permission. For more details see android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set).
Value: "android.permission.RECEIVE_MMS"
RECEIVE_SMS
static val RECEIVE_SMS: String
Allows an application to receive SMS messages.
Protection level: dangerous
This is a hard restricted permission which cannot be held by an app until the installer on record allowlists the permission. For more details see android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set).
Value: "android.permission.RECEIVE_SMS"
RECEIVE_WAP_PUSH
static val RECEIVE_WAP_PUSH: String
Allows an application to receive WAP push messages.
Protection level: dangerous
This is a hard restricted permission which cannot be held by an app until the installer on record allowlists the permission. For more details see android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set).
Value: "android.permission.RECEIVE_WAP_PUSH"
RECORD_AUDIO
static val RECORD_AUDIO: String
Allows an application to record audio.
Protection level: dangerous
Value: "android.permission.RECORD_AUDIO"
REORDER_TASKS
static val REORDER_TASKS: String
Allows an application to change the Z-order of tasks.
Protection level: normal
Value: "android.permission.REORDER_TASKS"
REQUEST_COMPANION_PROFILE_APP_STREAMING
static val REQUEST_COMPANION_PROFILE_APP_STREAMING: String
Allows application to request to be associated with a virtual display capable of streaming Android applications (android.companion.AssociationRequest#DEVICE_PROFILE_APP_STREAMING
) by android.companion.CompanionDeviceManager
.
Not for use by third-party applications.
Value: "android.permission.REQUEST_COMPANION_PROFILE_APP_STREAMING"
REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION
static val REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION: String
Allows application to request to be associated with a vehicle head unit capable of automotive projection (android.companion.AssociationRequest#DEVICE_PROFILE_AUTOMOTIVE_PROJECTION
) by android.companion.CompanionDeviceManager
.
Not for use by third-party applications.
Value: "android.permission.REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION"
REQUEST_COMPANION_PROFILE_COMPUTER
static val REQUEST_COMPANION_PROFILE_COMPUTER: String
Allows application to request to be associated with a computer to share functionality and/or data with other devices, such as notifications, photos and media (android.companion.AssociationRequest#DEVICE_PROFILE_COMPUTER
) by android.companion.CompanionDeviceManager
.
Not for use by third-party applications.
Value: "android.permission.REQUEST_COMPANION_PROFILE_COMPUTER"
REQUEST_COMPANION_PROFILE_GLASSES
static val REQUEST_COMPANION_PROFILE_GLASSES: String
Allows app to request to be associated with a device via android.companion.CompanionDeviceManager
as "glasses"
Protection level: normal
Value: "android.permission.REQUEST_COMPANION_PROFILE_GLASSES"
REQUEST_COMPANION_PROFILE_NEARBY_DEVICE_STREAMING
static val REQUEST_COMPANION_PROFILE_NEARBY_DEVICE_STREAMING: String
Allows application to request to stream content from an Android host to a nearby device (android.companion.AssociationRequest#DEVICE_PROFILE_NEARBY_DEVICE_STREAMING
) by android.companion.CompanionDeviceManager
.
Not for use by third-party applications.
Value: "android.permission.REQUEST_COMPANION_PROFILE_NEARBY_DEVICE_STREAMING"
REQUEST_COMPANION_PROFILE_WATCH
static val REQUEST_COMPANION_PROFILE_WATCH: String
Allows app to request to be associated with a device via android.companion.CompanionDeviceManager
as a "watch"
Protection level: normal
Value: "android.permission.REQUEST_COMPANION_PROFILE_WATCH"
REQUEST_COMPANION_RUN_IN_BACKGROUND
static val REQUEST_COMPANION_RUN_IN_BACKGROUND: String
Allows a companion app to run in the background. This permission implies android.Manifest.permission#REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND
, and allows to start a foreground service from the background. If an app does not have to run in the background, but only needs to start a foreground service from the background, consider using android.Manifest.permission#REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND
, which is less powerful.
Protection level: normal
Value: "android.permission.REQUEST_COMPANION_RUN_IN_BACKGROUND"
REQUEST_COMPANION_SELF_MANAGED
static val REQUEST_COMPANION_SELF_MANAGED: String
Allows an application to create a "self-managed" association.
Value: "android.permission.REQUEST_COMPANION_SELF_MANAGED"
REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND
static val REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND: String
Allows a companion app to start a foreground service from the background. {@see android.Manifest.permission#REQUEST_COMPANION_RUN_IN_BACKGROUND}
Protection level: normal
Value: "android.permission.REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND"
REQUEST_COMPANION_USE_DATA_IN_BACKGROUND
static val REQUEST_COMPANION_USE_DATA_IN_BACKGROUND: String
Allows a companion app to use data in the background.
Protection level: normal
Value: "android.permission.REQUEST_COMPANION_USE_DATA_IN_BACKGROUND"
REQUEST_DELETE_PACKAGES
static val REQUEST_DELETE_PACKAGES: String
Allows an application to request deleting packages. Apps targeting APIs android.os.Build.VERSION_CODES#P
or greater must hold this permission in order to use android.content.Intent#ACTION_UNINSTALL_PACKAGE
or android.content.pm.PackageInstaller#uninstall.
Protection level: normal
Value: "android.permission.REQUEST_DELETE_PACKAGES"
REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
static val REQUEST_IGNORE_BATTERY_OPTIMIZATIONS: String
Permission an application must hold in order to use android.provider.Settings#ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
.
Protection level: normal
Value: "android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"
REQUEST_INSTALL_PACKAGES
static val REQUEST_INSTALL_PACKAGES: String
Allows an application to request installing packages. Apps targeting APIs greater than 25 must hold this permission in order to use android.content.Intent#ACTION_INSTALL_PACKAGE
.
Protection level: signature
Value: "android.permission.REQUEST_INSTALL_PACKAGES"
REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE
static val REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE: String
Allows an application to subscribe to notifications about the presence status change of their associated companion device
Value: "android.permission.REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE"
REQUEST_PASSWORD_COMPLEXITY
static val REQUEST_PASSWORD_COMPLEXITY: String
Allows an application to request the screen lock complexity and prompt users to update the screen lock to a certain complexity level.
Protection level: normal
Value: "android.permission.REQUEST_PASSWORD_COMPLEXITY"
RESTART_PACKAGES
static valRESTART_PACKAGES: String
Deprecated: The android.app.ActivityManager#restartPackage
API is no longer supported.
Value: "android.permission.RESTART_PACKAGES"
RUN_USER_INITIATED_JOBS
static val RUN_USER_INITIATED_JOBS: String
Allows applications to use the user-initiated jobs API. For more details see android.app.job.JobInfo.Builder#setUserInitiated
.
Protection level: normal
Value: "android.permission.RUN_USER_INITIATED_JOBS"
SCHEDULE_EXACT_ALARM
static val SCHEDULE_EXACT_ALARM: String
Allows applications to use exact alarm APIs.
This is a special access permission that can be revoked by the system or the user. It should only be used to enable user-facing features that require exact alarms. For more details, please go through the associated developer docs.
Apps need to target API android.os.Build.VERSION_CODES#S
or above to be able to request this permission. Note that apps targeting lower API levels do not need this permission to use exact alarm APIs.
Apps that hold this permission and target API android.os.Build.VERSION_CODES#TIRAMISU
and below always stay in the WORKING_SET
or lower standby bucket.
If your app relies on exact alarms for core functionality, it can instead request android.Manifest.permission#USE_EXACT_ALARM
once it targets API android.os.Build.VERSION_CODES#TIRAMISU
. All apps using exact alarms for secondary features (which should still be user facing) should continue using this permission.
Protection level: signature|privileged|appop
Value: "android.permission.SCHEDULE_EXACT_ALARM"
SEND_RESPOND_VIA_MESSAGE
static val SEND_RESPOND_VIA_MESSAGE: String
Allows an application (Phone) to send a request to other applications to handle the respond-via-message action during incoming calls.
Not for use by third-party applications.
Value: "android.permission.SEND_RESPOND_VIA_MESSAGE"
SEND_SMS
static val SEND_SMS: String
Allows an application to send SMS messages.
Protection level: dangerous
This is a hard restricted permission which cannot be held by an app until the installer on record allowlists the permission. For more details see android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set).
Value: "android.permission.SEND_SMS"
SET_ALARM
static val SET_ALARM: String
Allows an application to broadcast an Intent to set an alarm for the user.
Protection level: normal
Value: "com.android.alarm.permission.SET_ALARM"
SET_ALWAYS_FINISH
static val SET_ALWAYS_FINISH: String
Allows an application to control whether activities are immediately finished when put in the background.
Not for use by third-party applications.
Value: "android.permission.SET_ALWAYS_FINISH"
SET_ANIMATION_SCALE
static val SET_ANIMATION_SCALE: String
Modify the global animation scaling factor.
Not for use by third-party applications.
Value: "android.permission.SET_ANIMATION_SCALE"
SET_BIOMETRIC_DIALOG_ADVANCED
static val SET_BIOMETRIC_DIALOG_ADVANCED: String
Allows an application to set the advanced features on BiometricDialog (SystemUI), including logo, logo description, and content view with more options button.
Not for use by third-party applications.
Value: "android.permission.SET_BIOMETRIC_DIALOG_ADVANCED"
SET_DEBUG_APP
static val SET_DEBUG_APP: String
Configure an application for debugging.
Not for use by third-party applications.
Value: "android.permission.SET_DEBUG_APP"
SET_PREFERRED_APPLICATIONS
static valSET_PREFERRED_APPLICATIONS: String
Deprecated: No longer useful, see android.content.pm.PackageManager#addPackageToPreferred
for details.
Value: "android.permission.SET_PREFERRED_APPLICATIONS"
SET_PROCESS_LIMIT
static val SET_PROCESS_LIMIT: String
Allows an application to set the maximum number of (not needed) application processes that can be running.
Not for use by third-party applications.
Value: "android.permission.SET_PROCESS_LIMIT"
SET_TIME
static val SET_TIME: String
Allows applications to set the system time directly.
Not for use by third-party applications.
Value: "android.permission.SET_TIME"
SET_TIME_ZONE
static val SET_TIME_ZONE: String
Allows applications to set the system time zone directly.
Not for use by third-party applications.
Value: "android.permission.SET_TIME_ZONE"
SET_WALLPAPER
static val SET_WALLPAPER: String
Allows applications to set the wallpaper.
Protection level: normal
Value: "android.permission.SET_WALLPAPER"
SET_WALLPAPER_HINTS
static val SET_WALLPAPER_HINTS: String
Allows applications to set the wallpaper hints.
Protection level: normal
Value: "android.permission.SET_WALLPAPER_HINTS"
SIGNAL_PERSISTENT_PROCESSES
static val SIGNAL_PERSISTENT_PROCESSES: String
Allow an application to request that a signal be sent to all persistent processes.
Not for use by third-party applications.
Value: "android.permission.SIGNAL_PERSISTENT_PROCESSES"
SMS_FINANCIAL_TRANSACTIONS
static valSMS_FINANCIAL_TRANSACTIONS: String
Deprecated: The API that used this permission is no longer functional.
Allows financial apps to read filtered sms messages. Protection level: signature|appop
Value: "android.permission.SMS_FINANCIAL_TRANSACTIONS"
START_FOREGROUND_SERVICES_FROM_BACKGROUND
static val START_FOREGROUND_SERVICES_FROM_BACKGROUND: String
Allows an application to start foreground services from the background at any time. This permission is not for use by third-party applications, with the only exception being if the app is the default SMS app. Otherwise, it's only usable by privileged apps, app verifier app, and apps with any of the EMERGENCY or SYSTEM GALLERY roles.
Value: "android.permission.START_FOREGROUND_SERVICES_FROM_BACKGROUND"
START_VIEW_APP_FEATURES
static val START_VIEW_APP_FEATURES: String
Allows the holder to start the screen with a list of app features.
Protection level: signature|installer
Value: "android.permission.START_VIEW_APP_FEATURES"
START_VIEW_PERMISSION_USAGE
static val START_VIEW_PERMISSION_USAGE: String
Allows the holder to start the permission usage screen for an app.
Protection level: signature|installer
Value: "android.permission.START_VIEW_PERMISSION_USAGE"
STATUS_BAR
static val STATUS_BAR: String
Allows an application to open, close, or disable the status bar and its icons.
Not for use by third-party applications.
Value: "android.permission.STATUS_BAR"
SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE
static val SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE: String
Allows an application to subscribe to keyguard locked (i.e., showing) state.
Protection level: signature|role
Intended for use by ROLE_ASSISTANT and signature apps only.
Value: "android.permission.SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE"
SYSTEM_ALERT_WINDOW
static val SYSTEM_ALERT_WINDOW: String
Allows an app to create windows using the type android.view.WindowManager.LayoutParams#TYPE_APPLICATION_OVERLAY
, shown on top of all other apps. Very few apps should use this permission; these windows are intended for system-level interaction with the user.
Note: If the app targets API level 23 or higher, the app user must explicitly grant this permission to the app through a permission management screen. The app requests the user's approval by sending an intent with action android.provider.Settings#ACTION_MANAGE_OVERLAY_PERMISSION
. The app can check whether it has this authorization by calling Settings.canDrawOverlays()
.
Protection level: signature|setup|appop|installer|pre23|development
Value: "android.permission.SYSTEM_ALERT_WINDOW"
TRANSMIT_IR
static val TRANSMIT_IR: String
Allows using the device's IR transmitter, if available.
Protection level: normal
Value: "android.permission.TRANSMIT_IR"
TURN_SCREEN_ON
static val TURN_SCREEN_ON: String
Allows an app to turn on the screen on, e.g. with android.os.PowerManager#ACQUIRE_CAUSES_WAKEUP
.
Intended to only be used by home automation apps.
Value: "android.permission.TURN_SCREEN_ON"
UNINSTALL_SHORTCUT
static val UNINSTALL_SHORTCUT: String
Don't use this permission in your app.
This permission is no longer supported.
Value: "com.android.launcher.permission.UNINSTALL_SHORTCUT"
UPDATE_DEVICE_STATS
static val UPDATE_DEVICE_STATS: String
Allows an application to update device statistics.
Not for use by third-party applications.
Value: "android.permission.UPDATE_DEVICE_STATS"
UPDATE_PACKAGES_WITHOUT_USER_ACTION
static val UPDATE_PACKAGES_WITHOUT_USER_ACTION: String
Allows an application to indicate via android.content.pm.PackageInstaller.SessionParams#setRequireUserAction(int)
that user action should not be required for an app update.
Protection level: normal
Value: "android.permission.UPDATE_PACKAGES_WITHOUT_USER_ACTION"
USE_BIOMETRIC
static val USE_BIOMETRIC: String
Allows an app to use device supported biometric modalities.
Protection level: normal
Value: "android.permission.USE_BIOMETRIC"
USE_EXACT_ALARM
static val USE_EXACT_ALARM: String
Allows apps to use exact alarms just like with android.Manifest.permission#SCHEDULE_EXACT_ALARM
but without needing to request this permission from the user.
This is only intended for use by apps that rely on exact alarms for their core functionality. You should continue using SCHEDULE_EXACT_ALARM
if your app needs exact alarms for a secondary feature that users may or may not use within your app.
Keep in mind that this is a powerful permission and app stores may enforce policies to audit and review the use of this permission. Such audits may involve removal from the app store if the app is found to be misusing this permission.
Apps need to target API android.os.Build.VERSION_CODES#TIRAMISU
or above to be able to request this permission. Note that only one of USE_EXACT_ALARM
or SCHEDULE_EXACT_ALARM
should be requested on a device. If your app is already using SCHEDULE_EXACT_ALARM
on older SDKs but needs USE_EXACT_ALARM
on SDK 33 and above, then SCHEDULE_EXACT_ALARM
should be declared with a max-sdk attribute, like:
<uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM" android:maxSdkVersion="32" />
Apps that hold this permission, always stay in the WORKING_SET
or lower standby bucket.
Value: "android.permission.USE_EXACT_ALARM"
USE_FINGERPRINT
static valUSE_FINGERPRINT: String
Deprecated: Applications should request android.Manifest.permission#USE_BIOMETRIC
instead
Allows an app to use fingerprint hardware.
Protection level: normal
Value: "android.permission.USE_FINGERPRINT"
USE_FULL_SCREEN_INTENT
static val USE_FULL_SCREEN_INTENT: String
Required for apps targeting android.os.Build.VERSION_CODES#Q
that want to use notification full screen
.
Protection level: normal
Value: "android.permission.USE_FULL_SCREEN_INTENT"
USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER
static val USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER: String
Allows to read device identifiers and use ICC based authentication like EAP-AKA. Often required in authentication to access the carrier's server and manage services of the subscriber.
Protection level: signature|appop
Value: "android.permission.USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER"
USE_SIP
static val USE_SIP: String
Allows an application to use SIP service.
Protection level: dangerous
Value: "android.permission.USE_SIP"
UWB_RANGING
static val UWB_RANGING: String
Required to be able to range to devices using ultra-wideband.
Protection level: dangerous
Value: "android.permission.UWB_RANGING"
VIBRATE
static val VIBRATE: String
Allows access to the vibrator.
Protection level: normal
Value: "android.permission.VIBRATE"
WAKE_LOCK
static val WAKE_LOCK: String
Allows using PowerManager WakeLocks to keep processor from sleeping or screen from dimming.
Protection level: normal
Value: "android.permission.WAKE_LOCK"
WRITE_APN_SETTINGS
static val WRITE_APN_SETTINGS: String
Allows applications to write the apn settings and read sensitive fields of an existing apn settings like user and password.
Not for use by third-party applications.
Value: "android.permission.WRITE_APN_SETTINGS"
WRITE_CALENDAR
static val WRITE_CALENDAR: String
Allows an application to write the user's calendar data.
Protection level: dangerous
Value: "android.permission.WRITE_CALENDAR"
WRITE_CALL_LOG
static val WRITE_CALL_LOG: String
Allows an application to write and read the user's call log data.
Note: If your app uses the WRITE_CONTACTS
permission and both your minSdkVersion
and targetSdkVersion
values are set to 15 or lower, the system implicitly grants your app this permission. If you don't need this permission, be sure your targetSdkVersion
is 16 or higher.
Protection level: dangerous
This is a hard restricted permission which cannot be held by an app until the installer on record allowlists the permission. For more details see android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set).
Value: "android.permission.WRITE_CALL_LOG"
WRITE_CONTACTS
static val WRITE_CONTACTS: String
Allows an application to write the user's contacts data.
Protection level: dangerous
Value: "android.permission.WRITE_CONTACTS"
WRITE_EXTERNAL_STORAGE
static val WRITE_EXTERNAL_STORAGE: String
Allows an application to write to external storage.
Note: If your app targets android.os.Build.VERSION_CODES#R
or higher, this permission has no effect.
If your app is on a device that runs API level 19 or higher, you don't need to declare this permission to read and write files in your application-specific directories returned by android.content.Context#getExternalFilesDir
and android.content.Context#getExternalCacheDir
.
Learn more about how to modify media files that your app doesn't own, and how to modify non-media files that your app doesn't own.
If your app is a file manager and needs broad access to external storage files, then the system must place your app on an allowlist so that you can successfully request the managing all files on a storage device.
If both your minSdkVersion
and targetSdkVersion
values are set to 3 or lower, the system implicitly grants your app this permission. If you don't need this permission, be sure your targetSdkVersion
is 4 or higher.
Protection level: dangerous
Value: "android.permission.WRITE_EXTERNAL_STORAGE"
WRITE_GSERVICES
static val WRITE_GSERVICES: String
Allows an application to modify the Google service map.
Not for use by third-party applications.
Value: "android.permission.WRITE_GSERVICES"
WRITE_SECURE_SETTINGS
static val WRITE_SECURE_SETTINGS: String
Allows an application to read or write the secure system settings.
Not for use by third-party applications.
Value: "android.permission.WRITE_SECURE_SETTINGS"
WRITE_SETTINGS
static val WRITE_SETTINGS: String
Allows an application to read or write the system settings.
Note: If the app targets API level 23 or higher, the app user must explicitly grant this permission to the app through a permission management screen. The app requests the user's approval by sending an intent with action android.provider.Settings#ACTION_MANAGE_WRITE_SETTINGS
. The app can check whether it has this authorization by calling Settings.System.canWrite()
.
Protection level: signature|preinstalled|appop|pre23
Value: "android.permission.WRITE_SETTINGS"
WRITE_SYNC_SETTINGS
static val WRITE_SYNC_SETTINGS: String
Allows applications to write the sync settings.
Protection level: normal
Value: "android.permission.WRITE_SYNC_SETTINGS"
WRITE_VOICEMAIL
static val WRITE_VOICEMAIL: String
Allows an application to modify and remove existing voicemails in the system.
Protection level: signature|privileged|role
Value: "com.android.voicemail.permission.WRITE_VOICEMAIL"
Public constructors
permission
permission()