<?xml version="1.0" encoding="utf-8"?>
<!--
/* //device/apps/common/AndroidManifest.xml
**
** Copyright 2006, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="android" coreApp="true" android:sharedUserId="android.uid.system"
    android:sharedUserLabel="@string/android_system_label">

    <!-- ================================================ -->
    <!-- Special broadcasts that only the system can send -->
    <!-- ================================================ -->
    <eat-comment />

    <protected-broadcast android:name="android.intent.action.SCREEN_OFF" />
    <protected-broadcast android:name="android.intent.action.SCREEN_ON" />
    <protected-broadcast android:name="android.intent.action.USER_PRESENT" />
    <protected-broadcast android:name="android.intent.action.TIME_SET" />
    <protected-broadcast android:name="android.intent.action.TIME_TICK" />
    <protected-broadcast android:name="android.intent.action.TIMEZONE_CHANGED" />
    <protected-broadcast android:name="android.intent.action.DATE_CHANGED" />
    <protected-broadcast android:name="android.intent.action.PRE_BOOT_COMPLETED" />
    <protected-broadcast android:name="android.intent.action.BOOT_COMPLETED" />
    <protected-broadcast android:name="android.intent.action.PACKAGE_INSTALL" />
    <protected-broadcast android:name="android.intent.action.PACKAGE_ADDED" />
    <protected-broadcast android:name="android.intent.action.PACKAGE_REPLACED" />
    <protected-broadcast android:name="android.intent.action.MY_PACKAGE_REPLACED" />
    <protected-broadcast android:name="android.intent.action.PACKAGE_REMOVED" />
    <protected-broadcast android:name="android.intent.action.PACKAGE_FULLY_REMOVED" />
    <protected-broadcast android:name="android.intent.action.PACKAGE_CHANGED" />
    <protected-broadcast android:name="android.intent.action.PACKAGE_ENABLE_ROLLBACK" />
    <protected-broadcast android:name="android.intent.action.CANCEL_ENABLE_ROLLBACK" />
    <protected-broadcast android:name="android.intent.action.ROLLBACK_COMMITTED" />
    <protected-broadcast android:name="android.intent.action.PACKAGE_RESTARTED" />
    <protected-broadcast android:name="android.intent.action.PACKAGE_DATA_CLEARED" />
    <protected-broadcast android:name="android.intent.action.PACKAGE_FIRST_LAUNCH" />
    <protected-broadcast android:name="android.intent.action.PACKAGE_NEEDS_VERIFICATION" />
    <protected-broadcast android:name="android.intent.action.PACKAGE_VERIFIED" />
    <protected-broadcast android:name="android.intent.action.PACKAGES_SUSPENDED" />
    <protected-broadcast android:name="android.intent.action.PACKAGES_UNSUSPENDED" />
    <protected-broadcast android:name="android.intent.action.DISTRACTING_PACKAGES_CHANGED" />
    <protected-broadcast android:name="android.intent.action.ACTION_PREFERRED_ACTIVITY_CHANGED" />
    <protected-broadcast android:name="android.intent.action.UID_REMOVED" />
    <protected-broadcast android:name="android.intent.action.QUERY_PACKAGE_RESTART" />
    <protected-broadcast android:name="android.intent.action.CONFIGURATION_CHANGED" />
    <protected-broadcast android:name="android.intent.action.SPLIT_CONFIGURATION_CHANGED" />
    <protected-broadcast android:name="android.intent.action.LOCALE_CHANGED" />
    <protected-broadcast android:name="android.intent.action.BATTERY_CHANGED" />
    <protected-broadcast android:name="android.intent.action.BATTERY_LEVEL_CHANGED" />
    <protected-broadcast android:name="android.intent.action.BATTERY_LOW" />
    <protected-broadcast android:name="android.intent.action.BATTERY_OKAY" />
    <protected-broadcast android:name="android.intent.action.ACTION_POWER_CONNECTED" />
    <protected-broadcast android:name="android.intent.action.ACTION_POWER_DISCONNECTED" />
    <protected-broadcast android:name="android.intent.action.ACTION_SHUTDOWN" />
    <protected-broadcast android:name="android.intent.action.CHARGING" />
    <protected-broadcast android:name="android.intent.action.DISCHARGING" />
    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_LOW" />
    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_OK" />
    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_FULL" />
    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_NOT_FULL" />
    <protected-broadcast android:name="android.intent.action.NEW_OUTGOING_CALL" />
    <protected-broadcast android:name="android.intent.action.REBOOT" />
    <protected-broadcast android:name="android.intent.action.DOCK_EVENT" />
    <protected-broadcast android:name="android.intent.action.THERMAL_EVENT" />
    <protected-broadcast android:name="android.intent.action.MASTER_CLEAR_NOTIFICATION" />
    <protected-broadcast android:name="android.intent.action.USER_ADDED" />
    <protected-broadcast android:name="android.intent.action.USER_REMOVED" />
    <protected-broadcast android:name="android.intent.action.USER_STARTING" />
    <protected-broadcast android:name="android.intent.action.USER_STARTED" />
    <protected-broadcast android:name="android.intent.action.USER_STOPPING" />
    <protected-broadcast android:name="android.intent.action.USER_STOPPED" />
    <protected-broadcast android:name="android.intent.action.USER_BACKGROUND" />
    <protected-broadcast android:name="android.intent.action.USER_FOREGROUND" />
    <protected-broadcast android:name="android.intent.action.USER_SWITCHED" />
    <protected-broadcast android:name="android.intent.action.USER_INITIALIZE" />
    <protected-broadcast android:name="android.intent.action.INTENT_FILTER_NEEDS_VERIFICATION" />
    <protected-broadcast android:name="android.intent.action.OVERLAY_ADDED" />
    <protected-broadcast android:name="android.intent.action.OVERLAY_CHANGED" />
    <protected-broadcast android:name="android.intent.action.OVERLAY_REMOVED" />
    <protected-broadcast android:name="android.intent.action.OVERLAY_PRIORITY_CHANGED" />
    <protected-broadcast android:name="android.intent.action.USER_ACTIVITY_NOTIFICATION" />
    <protected-broadcast android:name="android.intent.action.MY_PACKAGE_SUSPENDED" />
    <protected-broadcast android:name="android.intent.action.MY_PACKAGE_UNSUSPENDED" />

    <protected-broadcast android:name="android.os.action.POWER_SAVE_MODE_CHANGED" />
    <protected-broadcast android:name="android.os.action.POWER_SAVE_MODE_CHANGING" />
    <protected-broadcast android:name="android.os.action.DEVICE_IDLE_MODE_CHANGED" />
    <protected-broadcast android:name="android.os.action.POWER_SAVE_WHITELIST_CHANGED" />
    <protected-broadcast android:name="android.os.action.POWER_SAVE_TEMP_WHITELIST_CHANGED" />
    <protected-broadcast android:name="android.os.action.POWER_SAVE_MODE_CHANGED_INTERNAL" />

    <!-- @deprecated This is rarely used and will be phased out soon. -->
    <protected-broadcast android:name="android.os.action.SCREEN_BRIGHTNESS_BOOST_CHANGED" />

    <protected-broadcast android:name="android.app.action.ENTER_CAR_MODE" />
    <protected-broadcast android:name="android.app.action.EXIT_CAR_MODE" />
    <protected-broadcast android:name="android.app.action.ENTER_DESK_MODE" />
    <protected-broadcast android:name="android.app.action.EXIT_DESK_MODE" />
    <protected-broadcast android:name="android.app.action.NEXT_ALARM_CLOCK_CHANGED" />

    <protected-broadcast android:name="android.app.action.BUGREPORT_SHARING_DECLINED" />
    <protected-broadcast android:name="android.app.action.BUGREPORT_FAILED" />
    <protected-broadcast android:name="android.app.action.BUGREPORT_SHARE" />
    <protected-broadcast android:name="android.app.action.SHOW_DEVICE_MONITORING_DIALOG" />
    <protected-broadcast android:name="android.intent.action.PENDING_INCIDENT_REPORTS_CHANGED" />
    <protected-broadcast android:name="android.intent.action.INCIDENT_REPORT_READY" />

    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_UPDATE_OPTIONS" />
    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_DELETED" />
    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_DISABLED" />
    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_ENABLED" />
    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_HOST_RESTORED" />
    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_RESTORED" />

    <protected-broadcast android:name="android.os.action.SETTING_RESTORED" />

    <protected-broadcast android:name="android.app.backup.intent.RUN" />
    <protected-broadcast android:name="android.app.backup.intent.CLEAR" />
    <protected-broadcast android:name="android.app.backup.intent.INIT" />

    <protected-broadcast android:name="android.bluetooth.intent.DISCOVERABLE_TIMEOUT" />
    <protected-broadcast android:name="android.bluetooth.adapter.action.STATE_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.adapter.action.SCAN_MODE_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_STARTED" />
    <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_FINISHED" />
    <protected-broadcast android:name="android.bluetooth.adapter.action.LOCAL_NAME_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.adapter.action.BLUETOOTH_ADDRESS_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.adapter.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.device.action.UUID" />
    <protected-broadcast android:name="android.bluetooth.device.action.MAS_INSTANCE" />
    <protected-broadcast android:name="android.bluetooth.device.action.ALIAS_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.device.action.FOUND" />
    <protected-broadcast android:name="android.bluetooth.device.action.CLASS_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.device.action.ACL_CONNECTED" />
    <protected-broadcast android:name="android.bluetooth.device.action.ACL_DISCONNECT_REQUESTED" />
    <protected-broadcast android:name="android.bluetooth.device.action.ACL_DISCONNECTED" />
    <protected-broadcast android:name="android.bluetooth.device.action.NAME_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.device.action.BOND_STATE_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.device.action.NAME_FAILED" />
    <protected-broadcast android:name="android.bluetooth.device.action.PAIRING_REQUEST" />
    <protected-broadcast android:name="android.bluetooth.device.action.PAIRING_CANCEL" />
    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_REPLY" />
    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_CANCEL" />
    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_REQUEST" />
    <protected-broadcast android:name="android.bluetooth.device.action.SDP_RECORD" />
    <protected-broadcast android:name="android.bluetooth.device.action.BATTERY_LEVEL_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.devicepicker.action.LAUNCH" />
    <protected-broadcast android:name="android.bluetooth.devicepicker.action.DEVICE_SELECTED" />
    <protected-broadcast
        android:name="android.bluetooth.headset.profile.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.headset.profile.action.AUDIO_STATE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.headset.action.VENDOR_SPECIFIC_HEADSET_EVENT" />
    <protected-broadcast
        android:name="android.bluetooth.headset.action.HF_INDICATORS_VALUE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.headset.profile.action.ACTIVE_DEVICE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.headsetclient.profile.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.headsetclient.profile.action.AUDIO_STATE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.headsetclient.profile.action.AG_EVENT" />
    <protected-broadcast
        android:name="android.bluetooth.headsetclient.profile.action.AG_CALL_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.headsetclient.profile.action.RESULT" />
    <protected-broadcast
        android:name="android.bluetooth.headsetclient.profile.action.LAST_VTAG" />
    <protected-broadcast
        android:name="android.bluetooth.hearingaid.profile.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.hearingaid.profile.action.PLAYING_STATE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.hearingaid.profile.action.ACTIVE_DEVICE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.a2dp.profile.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.a2dp.profile.action.ACTIVE_DEVICE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.a2dp.profile.action.PLAYING_STATE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.a2dp.profile.action.CODEC_CONFIG_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.a2dp-sink.profile.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.a2dp-sink.profile.action.PLAYING_STATE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.a2dp-sink.profile.action.AUDIO_CONFIG_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.avrcp-controller.profile.action.BROWSE_CONNECTION_STATE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.avrcp-controller.profile.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.avrcp-controller.profile.action.FOLDER_LIST" />
    <protected-broadcast
        android:name="android.bluetooth.avrcp-controller.profile.action.TRACK_EVENT" />
    <protected-broadcast
        android:name="android.bluetooth.input.profile.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.input.profile.action.IDLE_TIME_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.input.profile.action.PROTOCOL_MODE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.input.profile.action.VIRTUAL_UNPLUG_STATUS" />
    <protected-broadcast
        android:name="android.bluetooth.hiddevice.profile.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast
        android:name="android.bluetooth.map.profile.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.mapmce.profile.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.mapmce.profile.action.MESSAGE_RECEIVED" />
    <protected-broadcast android:name="android.bluetooth.mapmce.profile.action.MESSAGE_SENT_SUCCESSFULLY" />
    <protected-broadcast android:name="android.bluetooth.mapmce.profile.action.MESSAGE_DELIVERED_SUCCESSFULLY" />
    <protected-broadcast
        android:name="com.android.bluetooth.BluetoothMapContentObserver.action.MESSAGE_SENT" />
    <protected-broadcast
        android:name="com.android.bluetooth.BluetoothMapContentObserver.action.MESSAGE_DELIVERY" />
    <protected-broadcast
        android:name="android.bluetooth.pan.profile.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.pbap.profile.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.pbapclient.profile.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast android:name="android.bluetooth.sap.profile.action.CONNECTION_STATE_CHANGED" />
    <protected-broadcast android:name="android.btopp.intent.action.INCOMING_FILE_NOTIFICATION" />
    <protected-broadcast android:name="android.btopp.intent.action.USER_CONFIRMATION_TIMEOUT" />
    <protected-broadcast android:name="android.btopp.intent.action.LIST" />
    <protected-broadcast android:name="android.btopp.intent.action.OPEN_OUTBOUND" />
    <protected-broadcast android:name="android.btopp.intent.action.HIDE_COMPLETE" />
    <protected-broadcast android:name="android.btopp.intent.action.CONFIRM" />
    <protected-broadcast android:name="android.btopp.intent.action.HIDE" />
    <protected-broadcast android:name="android.btopp.intent.action.RETRY" />
    <protected-broadcast android:name="android.btopp.intent.action.OPEN" />
    <protected-broadcast android:name="android.btopp.intent.action.OPEN_INBOUND" />
    <protected-broadcast android:name="android.btopp.intent.action.TRANSFER_COMPLETE" />
    <protected-broadcast android:name="android.btopp.intent.action.ACCEPT" />
    <protected-broadcast android:name="android.btopp.intent.action.DECLINE" />
    <protected-broadcast android:name="com.android.bluetooth.gatt.REFRESH_BATCHED_SCAN" />
    <protected-broadcast android:name="com.android.bluetooth.pbap.authchall" />
    <protected-broadcast android:name="com.android.bluetooth.pbap.userconfirmtimeout" />
    <protected-broadcast android:name="com.android.bluetooth.pbap.authresponse" />
    <protected-broadcast android:name="com.android.bluetooth.pbap.authcancelled" />
    <protected-broadcast android:name="com.android.bluetooth.sap.USER_CONFIRM_TIMEOUT" />
    <protected-broadcast android:name="com.android.bluetooth.sap.action.DISCONNECT_ACTION" />

    <protected-broadcast android:name="android.hardware.display.action.WIFI_DISPLAY_STATUS_CHANGED" />

    <protected-broadcast android:name="android.hardware.usb.action.USB_STATE" />
    <protected-broadcast android:name="android.hardware.usb.action.USB_PORT_CHANGED" />
    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />
    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_DETACHED" />
    <protected-broadcast android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
    <protected-broadcast android:name="android.hardware.usb.action.USB_DEVICE_DETACHED" />

    <protected-broadcast android:name="android.intent.action.HEADSET_PLUG" />
    <protected-broadcast android:name="android.media.action.HDMI_AUDIO_PLUG" />
    <protected-broadcast android:name="android.media.action.MICROPHONE_MUTE_CHANGED" />
    <protected-broadcast android:name="android.media.action.SPEAKERPHONE_STATE_CHANGED" />

    <protected-broadcast android:name="android.media.AUDIO_BECOMING_NOISY" />
    <protected-broadcast android:name="android.media.RINGER_MODE_CHANGED" />
    <protected-broadcast android:name="android.media.VIBRATE_SETTING_CHANGED" />
    <protected-broadcast android:name="android.media.VOLUME_CHANGED_ACTION" />
    <protected-broadcast android:name="android.media.MASTER_VOLUME_CHANGED_ACTION" />
    <protected-broadcast android:name="android.media.MASTER_MUTE_CHANGED_ACTION" />
    <protected-broadcast android:name="android.media.MASTER_MONO_CHANGED_ACTION" />
    <protected-broadcast android:name="android.media.MASTER_BALANCE_CHANGED_ACTION" />
    <protected-broadcast android:name="android.media.SCO_AUDIO_STATE_CHANGED" />
    <protected-broadcast android:name="android.media.ACTION_SCO_AUDIO_STATE_UPDATED" />

    <protected-broadcast android:name="android.intent.action.MEDIA_REMOVED" />
    <protected-broadcast android:name="android.intent.action.MEDIA_UNMOUNTED" />
    <protected-broadcast android:name="android.intent.action.MEDIA_CHECKING" />
    <protected-broadcast android:name="android.intent.action.MEDIA_NOFS" />
    <protected-broadcast android:name="android.intent.action.MEDIA_MOUNTED" />
    <protected-broadcast android:name="android.intent.action.MEDIA_SHARED" />
    <protected-broadcast android:name="android.intent.action.MEDIA_UNSHARED" />
    <protected-broadcast android:name="android.intent.action.MEDIA_BAD_REMOVAL" />
    <protected-broadcast android:name="android.intent.action.MEDIA_UNMOUNTABLE" />
    <protected-broadcast android:name="android.intent.action.MEDIA_EJECT" />

    <protected-broadcast android:name="android.net.conn.CAPTIVE_PORTAL" />
    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE" />
    <!-- @deprecated.  Only {@link android.net.ConnectivityManager.CONNECTIVITY_ACTION} is sent. -->
    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE_IMMEDIATE" />
    <protected-broadcast android:name="android.net.conn.DATA_ACTIVITY_CHANGE" />
    <protected-broadcast android:name="android.net.conn.RESTRICT_BACKGROUND_CHANGED" />
    <protected-broadcast android:name="android.net.conn.BACKGROUND_DATA_SETTING_CHANGED" />
    <protected-broadcast android:name="android.net.conn.CAPTIVE_PORTAL_TEST_COMPLETED" />

    <protected-broadcast android:name="android.net.nsd.STATE_CHANGED" />

    <protected-broadcast android:name="android.nfc.action.ADAPTER_STATE_CHANGED" />
    <protected-broadcast android:name="android.nfc.action.TRANSACTION_DETECTED" />
    <protected-broadcast android:name="com.android.nfc.action.LLCP_UP" />
    <protected-broadcast android:name="com.android.nfc.action.LLCP_DOWN" />
    <protected-broadcast android:name="com.android.nfc.cardemulation.action.CLOSE_TAP_DIALOG" />
    <protected-broadcast android:name="com.android.nfc.handover.action.ALLOW_CONNECT" />
    <protected-broadcast android:name="com.android.nfc.handover.action.DENY_CONNECT" />
    <protected-broadcast android:name="com.android.nfc.handover.action.TIMEOUT_CONNECT" />
    <protected-broadcast android:name="com.android.nfc_extras.action.RF_FIELD_ON_DETECTED" />
    <protected-broadcast android:name="com.android.nfc_extras.action.RF_FIELD_OFF_DETECTED" />
    <protected-broadcast android:name="com.android.nfc_extras.action.AID_SELECTED" />
    <!-- For NFC to BT handover -->
    <protected-broadcast android:name="android.btopp.intent.action.WHITELIST_DEVICE" />
    <protected-broadcast android:name="android.btopp.intent.action.STOP_HANDOVER_TRANSFER" />
    <protected-broadcast android:name="android.nfc.handover.intent.action.HANDOVER_SEND" />
    <protected-broadcast android:name="android.nfc.handover.intent.action.HANDOVER_SEND_MULTIPLE" />
    <protected-broadcast android:name="com.android.nfc.handover.action.CANCEL_HANDOVER_TRANSFER" />

    <protected-broadcast android:name="android.intent.action.CLEAR_DNS_CACHE" />
    <protected-broadcast android:name="android.intent.action.PROXY_CHANGE" />

    <protected-broadcast android:name="android.os.UpdateLock.UPDATE_LOCK_CHANGED" />

    <protected-broadcast android:name="android.intent.action.DREAMING_STARTED" />
    <protected-broadcast android:name="android.intent.action.DREAMING_STOPPED" />
    <protected-broadcast android:name="android.intent.action.ANY_DATA_STATE" />

    <protected-broadcast android:name="com.android.server.stats.action.TRIGGER_COLLECTION" />

    <protected-broadcast android:name="com.android.server.WifiManager.action.START_SCAN" />
    <protected-broadcast android:name="com.android.server.WifiManager.action.START_PNO" />
    <protected-broadcast android:name="com.android.server.WifiManager.action.DELAYED_DRIVER_STOP" />
    <protected-broadcast android:name="com.android.server.WifiManager.action.DEVICE_IDLE" />
    <protected-broadcast android:name="com.android.server.action.REMOTE_BUGREPORT_SHARING_ACCEPTED" />
    <protected-broadcast android:name="com.android.server.action.REMOTE_BUGREPORT_SHARING_DECLINED" />
    <protected-broadcast android:name="com.android.internal.action.EUICC_FACTORY_RESET" />
    <protected-broadcast android:name="com.android.server.usb.ACTION_OPEN_IN_APPS" />
    <protected-broadcast android:name="com.android.server.am.DELETE_DUMPHEAP" />
    <protected-broadcast android:name="com.android.server.net.action.SNOOZE_WARNING" />
    <protected-broadcast android:name="com.android.server.net.action.SNOOZE_RAPID" />
    <protected-broadcast android:name="com.android.server.wifi.ConnectToNetworkNotification.USER_DISMISSED_NOTIFICATION" />
    <protected-broadcast android:name="com.android.server.wifi.ConnectToNetworkNotification.CONNECT_TO_NETWORK" />
    <protected-broadcast android:name="com.android.server.wifi.ConnectToNetworkNotification.PICK_WIFI_NETWORK" />
    <protected-broadcast android:name="com.android.server.wifi.ConnectToNetworkNotification.PICK_NETWORK_AFTER_FAILURE" />
    <protected-broadcast android:name="com.android.server.wifi.wakeup.DISMISS_NOTIFICATION" />
    <protected-broadcast android:name="com.android.server.wifi.wakeup.OPEN_WIFI_PREFERENCES" />
    <protected-broadcast android:name="com.android.server.wifi.wakeup.OPEN_WIFI_SETTINGS" />
    <protected-broadcast android:name="com.android.server.wifi.wakeup.TURN_OFF_WIFI_WAKE" />
    <protected-broadcast android:name="android.net.wifi.WIFI_STATE_CHANGED" />
    <protected-broadcast android:name="android.net.wifi.WIFI_AP_STATE_CHANGED" />
    <protected-broadcast android:name="android.net.wifi.WIFI_CREDENTIAL_CHANGED" />
    <protected-broadcast android:name="android.net.wifi.WIFI_SCAN_AVAILABLE" />
    <protected-broadcast android:name="android.net.wifi.aware.action.WIFI_AWARE_STATE_CHANGED" />
    <protected-broadcast android:name="android.net.wifi.rtt.action.WIFI_RTT_STATE_CHANGED" />
    <protected-broadcast android:name="android.net.wifi.SCAN_RESULTS" />
    <protected-broadcast android:name="android.net.wifi.RSSI_CHANGED" />
    <protected-broadcast android:name="android.net.wifi.STATE_CHANGE" />
    <protected-broadcast android:name="android.net.wifi.LINK_CONFIGURATION_CHANGED" />
    <protected-broadcast android:name="android.net.wifi.CONFIGURED_NETWORKS_CHANGE" />
    <protected-broadcast android:name="android.net.wifi.action.PASSPOINT_DEAUTH_IMMINENT" />
    <protected-broadcast android:name="android.net.wifi.action.PASSPOINT_ICON" />
    <protected-broadcast android:name="android.net.wifi.action.PASSPOINT_OSU_PROVIDERS_LIST" />
    <protected-broadcast android:name="android.net.wifi.action.PASSPOINT_SUBSCRIPTION_REMEDIATION" />
    <protected-broadcast android:name="android.net.wifi.action.PASSPOINT_LAUNCH_OSU_VIEW" />
    <protected-broadcast android:name="android.net.wifi.action.WIFI_NETWORK_SUGGESTION_POST_CONNECTION" />
    <protected-broadcast android:name="android.net.wifi.supplicant.CONNECTION_CHANGE" />
    <protected-broadcast android:name="android.net.wifi.supplicant.STATE_CHANGE" />
    <protected-broadcast android:name="android.net.wifi.p2p.STATE_CHANGED" />
    <protected-broadcast android:name="android.net.wifi.p2p.DISCOVERY_STATE_CHANGE" />
    <protected-broadcast android:name="android.net.wifi.p2p.THIS_DEVICE_CHANGED" />
    <protected-broadcast android:name="android.net.wifi.p2p.PEERS_CHANGED" />
    <protected-broadcast android:name="android.net.wifi.p2p.CONNECTION_STATE_CHANGE" />
    <protected-broadcast android:name="android.net.wifi.p2p.PERSISTENT_GROUPS_CHANGED" />
    <protected-broadcast android:name="android.net.conn.TETHER_STATE_CHANGED" />
    <protected-broadcast android:name="android.net.conn.INET_CONDITION_ACTION" />
    <protected-broadcast android:name="android.net.conn.NETWORK_CONDITIONS_MEASURED" />
    <protected-broadcast
            android:name="android.net.ConnectivityService.action.PKT_CNT_SAMPLE_INTERVAL_ELAPSED" />
    <protected-broadcast android:name="android.net.scoring.SCORE_NETWORKS" />
    <protected-broadcast android:name="android.net.scoring.SCORER_CHANGED" />
    <protected-broadcast android:name="android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE" />
    <protected-broadcast android:name="android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE" />
    <protected-broadcast android:name="android.intent.action.AIRPLANE_MODE" />
    <protected-broadcast android:name="android.intent.action.ADVANCED_SETTINGS" />
    <protected-broadcast android:name="android.intent.action.APPLICATION_RESTRICTIONS_CHANGED" />

    <!-- Legacy -->
    <protected-broadcast android:name="android.intent.action.ACTION_IDLE_MAINTENANCE_START" />
    <protected-broadcast android:name="android.intent.action.ACTION_IDLE_MAINTENANCE_END" />

    <protected-broadcast android:name="com.android.server.ACTION_TRIGGER_IDLE" />

    <protected-broadcast android:name="android.intent.action.HDMI_PLUGGED" />

    <protected-broadcast android:name="android.intent.action.PHONE_STATE" />

    <protected-broadcast android:name="android.intent.action.SUB_DEFAULT_CHANGED" />

    <protected-broadcast android:name="android.location.PROVIDERS_CHANGED" />
    <protected-broadcast android:name="android.location.MODE_CHANGED" />
    <protected-broadcast android:name="android.net.proxy.PAC_REFRESH" />

    <protected-broadcast android:name="android.telecom.action.DEFAULT_DIALER_CHANGED" />
    <protected-broadcast android:name="android.provider.action.DEFAULT_SMS_PACKAGE_CHANGED" />
    <protected-broadcast android:name="android.provider.action.SMS_MMS_DB_CREATED" />
    <protected-broadcast android:name="android.provider.action.SMS_MMS_DB_LOST" />
    <protected-broadcast android:name="android.intent.action.CONTENT_CHANGED" />
    <protected-broadcast android:name="android.provider.Telephony.MMS_DOWNLOADED" />

    <protected-broadcast
        android:name="com.android.server.connectivityservice.CONNECTED_TO_PROVISIONING_NETWORK_ACTION" />

    <!-- Defined in RestrictionsManager -->
    <protected-broadcast
        android:name="android.intent.action.PERMISSION_RESPONSE_RECEIVED" />
    <!-- Defined in RestrictionsManager -->

    <protected-broadcast android:name="android.intent.action.REQUEST_PERMISSION" />
    <protected-broadcast android:name="android.nfc.handover.intent.action.HANDOVER_STARTED" />
    <protected-broadcast android:name="android.nfc.handover.intent.action.TRANSFER_DONE" />
    <protected-broadcast android:name="android.nfc.handover.intent.action.TRANSFER_PROGRESS" />
    <protected-broadcast android:name="android.nfc.handover.intent.action.TRANSFER_DONE" />

    <protected-broadcast android:name="android.intent.action.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED" />
    <protected-broadcast android:name="android.intent.action.ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED" />
    <protected-broadcast android:name="android.intent.action.ACTION_SUBINFO_CONTENT_CHANGE" />
    <protected-broadcast android:name="android.intent.action.ACTION_SUBINFO_RECORD_UPDATED" />

    <protected-broadcast android:name="android.intent.action.ACTION_SET_RADIO_CAPABILITY_DONE" />
    <protected-broadcast android:name="android.intent.action.ACTION_SET_RADIO_CAPABILITY_FAILED" />

    <protected-broadcast android:name="android.internal.policy.action.BURN_IN_PROTECTION" />
    <protected-broadcast android:name="android.app.action.SYSTEM_UPDATE_POLICY_CHANGED" />
    <protected-broadcast android:name="android.app.action.DEVICE_OWNER_CHANGED" />
    <protected-broadcast android:name="android.app.action.MANAGED_USER_CREATED" />

    <!-- Added in N -->
    <protected-broadcast android:name="android.intent.action.ANR" />
    <protected-broadcast android:name="android.intent.action.CALL" />
    <protected-broadcast android:name="android.intent.action.CALL_PRIVILEGED" />
    <protected-broadcast android:name="android.intent.action.DROPBOX_ENTRY_ADDED" />
    <protected-broadcast android:name="android.intent.action.INPUT_METHOD_CHANGED" />
    <protected-broadcast android:name="android.intent.action.internal_sim_state_changed" />
    <protected-broadcast android:name="android.intent.action.LOCKED_BOOT_COMPLETED" />
    <protected-broadcast android:name="android.intent.action.PRECISE_CALL_STATE" />
    <protected-broadcast android:name="android.intent.action.PRECISE_DATA_CONNECTION_STATE_CHANGED" />
    <protected-broadcast android:name="android.intent.action.SUBSCRIPTION_PHONE_STATE" />
    <protected-broadcast android:name="android.intent.action.USER_INFO_CHANGED" />
    <protected-broadcast android:name="android.intent.action.USER_UNLOCKED" />
    <protected-broadcast android:name="android.intent.action.WALLPAPER_CHANGED" />

    <protected-broadcast android:name="android.app.action.DEVICE_POLICY_MANAGER_STATE_CHANGED" />
    <protected-broadcast android:name="android.app.action.CHOOSE_PRIVATE_KEY_ALIAS" />
    <protected-broadcast android:name="android.app.action.DEVICE_ADMIN_DISABLED" />
    <protected-broadcast android:name="android.app.action.DEVICE_ADMIN_DISABLE_REQUESTED" />
    <protected-broadcast android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
    <protected-broadcast android:name="android.app.action.LOCK_TASK_ENTERING" />
    <protected-broadcast android:name="android.app.action.LOCK_TASK_EXITING" />
    <protected-broadcast android:name="android.app.action.NOTIFY_PENDING_SYSTEM_UPDATE" />
    <protected-broadcast android:name="android.app.action.ACTION_PASSWORD_CHANGED" />
    <protected-broadcast android:name="android.app.action.ACTION_PASSWORD_EXPIRING" />
    <protected-broadcast android:name="android.app.action.ACTION_PASSWORD_FAILED" />
    <protected-broadcast android:name="android.app.action.ACTION_PASSWORD_SUCCEEDED" />
    <protected-broadcast android:name="com.android.server.ACTION_EXPIRED_PASSWORD_NOTIFICATION" />

    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_ADDED" />
    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_UNLOCKED" />
    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_REMOVED" />

    <protected-broadcast android:name="android.bluetooth.adapter.action.BLE_STATE_CHANGED" />
    <protected-broadcast android:name="com.android.bluetooth.map.USER_CONFIRM_TIMEOUT" />
    <protected-broadcast android:name="com.android.bluetooth.BluetoothMapContentObserver.action.MESSAGE_SENT" />
    <protected-broadcast android:name="com.android.bluetooth.BluetoothMapContentObserver.action.MESSAGE_DELIVERY" />
    <protected-broadcast android:name="android.content.jobscheduler.JOB_DELAY_EXPIRED" />
    <protected-broadcast android:name="android.content.syncmanager.SYNC_ALARM" />
    <protected-broadcast android:name="android.media.INTERNAL_RINGER_MODE_CHANGED_ACTION" />
    <protected-broadcast android:name="android.media.STREAM_DEVICES_CHANGED_ACTION" />
    <protected-broadcast android:name="android.media.STREAM_MUTE_CHANGED_ACTION" />
    <protected-broadcast android:name="android.net.sip.SIP_SERVICE_UP" />
    <protected-broadcast android:name="android.nfc.action.ADAPTER_STATE_CHANGED" />
    <protected-broadcast android:name="android.os.action.CHARGING" />
    <protected-broadcast android:name="android.os.action.DISCHARGING" />
    <protected-broadcast android:name="android.search.action.SEARCHABLES_CHANGED" />
    <protected-broadcast android:name="android.security.STORAGE_CHANGED" />
    <protected-broadcast android:name="android.security.action.TRUST_STORE_CHANGED" />
    <protected-broadcast android:name="android.security.action.KEYCHAIN_CHANGED" />
    <protected-broadcast android:name="android.security.action.KEY_ACCESS_CHANGED" />
    <protected-broadcast android:name="android.telecom.action.NUISANCE_CALL_STATUS_CHANGED" />
    <protected-broadcast android:name="android.telecom.action.PHONE_ACCOUNT_REGISTERED" />
    <protected-broadcast android:name="android.telecom.action.PHONE_ACCOUNT_UNREGISTERED" />
    <protected-broadcast android:name="android.telecom.action.SHOW_MISSED_CALLS_NOTIFICATION" />
    <protected-broadcast android:name="android.telephony.action.CARRIER_CONFIG_CHANGED" />
    <protected-broadcast android:name="android.telephony.action.DEFAULT_SUBSCRIPTION_CHANGED" />
    <protected-broadcast android:name="android.telephony.action.DEFAULT_SMS_SUBSCRIPTION_CHANGED" />
    <protected-broadcast android:name="android.telephony.action.SECRET_CODE" />
    <protected-broadcast android:name="android.telephony.action.SHOW_VOICEMAIL_NOTIFICATION" />
    <protected-broadcast android:name="android.telephony.action.SUBSCRIPTION_PLANS_CHANGED" />

    <protected-broadcast android:name="com.android.bluetooth.btservice.action.ALARM_WAKEUP" />
    <protected-broadcast android:name="com.android.server.action.NETWORK_STATS_POLL" />
    <protected-broadcast android:name="com.android.server.action.NETWORK_STATS_UPDATED" />
    <protected-broadcast android:name="com.android.server.NetworkTimeUpdateService.action.POLL" />
    <protected-broadcast android:name="com.android.server.telecom.intent.action.CALLS_ADD_ENTRY" />
    <protected-broadcast android:name="com.android.settings.location.MODE_CHANGING" />
    <protected-broadcast android:name="com.android.settings.bluetooth.ACTION_DISMISS_PAIRING" />

    <protected-broadcast android:name="NotificationManagerService.TIMEOUT" />
    <protected-broadcast android:name="ScheduleConditionProvider.EVALUATE" />
    <protected-broadcast android:name="EventConditionProvider.EVALUATE" />
    <protected-broadcast android:name="SnoozeHelper.EVALUATE" />
    <protected-broadcast android:name="wifi_scan_available" />

    <protected-broadcast android:name="action.cne.started" />
    <protected-broadcast android:name="android.content.jobscheduler.JOB_DEADLINE_EXPIRED" />
    <protected-broadcast android:name="android.intent.action.ACTION_UNSOL_RESPONSE_OEM_HOOK_RAW" />
    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE_SUPL" />
    <protected-broadcast android:name="android.os.action.LIGHT_DEVICE_IDLE_MODE_CHANGED" />
    <protected-broadcast android:name="android.os.storage.action.VOLUME_STATE_CHANGED" />
    <protected-broadcast android:name="android.os.storage.action.DISK_SCANNED" />
    <protected-broadcast android:name="com.android.server.action.UPDATE_TWILIGHT_STATE" />
    <protected-broadcast android:name="com.android.server.action.RESET_TWILIGHT_AUTO" />
    <protected-broadcast android:name="com.android.server.device_idle.STEP_IDLE_STATE" />
    <protected-broadcast android:name="com.android.server.device_idle.STEP_LIGHT_IDLE_STATE" />
    <protected-broadcast android:name="com.android.server.Wifi.action.TOGGLE_PNO" />
    <protected-broadcast android:name="intent.action.ACTION_RF_BAND_INFO" />
    <protected-broadcast android:name="android.intent.action.MEDIA_RESOURCE_GRANTED" />
    <protected-broadcast android:name="android.app.action.NETWORK_LOGS_AVAILABLE" />
    <protected-broadcast android:name="android.app.action.SECURITY_LOGS_AVAILABLE" />

    <protected-broadcast android:name="android.app.action.INTERRUPTION_FILTER_CHANGED" />
    <protected-broadcast android:name="android.app.action.INTERRUPTION_FILTER_CHANGED_INTERNAL" />
    <protected-broadcast android:name="android.app.action.NOTIFICATION_POLICY_CHANGED" />
    <protected-broadcast android:name="android.app.action.NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED" />
    <protected-broadcast android:name="android.os.action.ACTION_EFFECTS_SUPPRESSOR_CHANGED" />
    <protected-broadcast android:name="android.app.action.NOTIFICATION_CHANNEL_BLOCK_STATE_CHANGED" />
    <protected-broadcast android:name="android.app.action.NOTIFICATION_CHANNEL_GROUP_BLOCK_STATE_CHANGED" />
    <protected-broadcast android:name="android.app.action.APP_BLOCK_STATE_CHANGED" />

    <protected-broadcast android:name="android.permission.GET_APP_GRANTED_URI_PERMISSIONS" />
    <protected-broadcast android:name="android.permission.CLEAR_APP_GRANTED_URI_PERMISSIONS" />

    <protected-broadcast android:name="android.intent.action.DYNAMIC_SENSOR_CHANGED" />

    <protected-broadcast android:name="android.intent.action.ACTION_RADIO_OFF" />

    <protected-broadcast android:name="android.accounts.LOGIN_ACCOUNTS_CHANGED" />
    <protected-broadcast android:name="android.accounts.action.ACCOUNT_REMOVED" />
    <protected-broadcast android:name="android.accounts.action.VISIBLE_ACCOUNTS_CHANGED" />

    <protected-broadcast android:name="com.android.sync.SYNC_CONN_STATUS_CHANGED" />

    <protected-broadcast android:name="com.android.phone.SIP_INCOMING_CALL" />
    <protected-broadcast android:name="com.android.phone.SIP_ADD_PHONE" />
    <protected-broadcast android:name="com.android.phone.SIP_REMOVE_PHONE" />
    <protected-broadcast android:name="com.android.phone.SIP_CALL_OPTION_CHANGED" />

    <protected-broadcast android:name="android.bluetooth.adapter.action.BLE_ACL_CONNECTED" />
    <protected-broadcast android:name="android.bluetooth.adapter.action.BLE_ACL_DISCONNECTED" />

    <protected-broadcast android:name="android.bluetooth.input.profile.action.HANDSHAKE" />
    <protected-broadcast android:name="android.bluetooth.input.profile.action.REPORT" />

    <protected-broadcast android:name="android.intent.action.TWILIGHT_CHANGED" />

    <protected-broadcast android:name="com.android.server.fingerprint.ACTION_LOCKOUT_RESET" />
    <protected-broadcast android:name="android.net.wifi.PASSPOINT_ICON_RECEIVED" />
    <protected-broadcast android:name="com.android.server.notification.CountdownConditionProvider" />

    <protected-broadcast android:name="com.android.internal.location.ALARM_WAKEUP" />
    <protected-broadcast android:name="com.android.internal.location.ALARM_TIMEOUT" />
    <protected-broadcast android:name="android.intent.action.GLOBAL_BUTTON" />

    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_AVAILABLE" />
    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_UNAVAILABLE" />
    <protected-broadcast android:name="com.android.server.pm.DISABLE_QUIET_MODE_AFTER_UNLOCK" />

    <protected-broadcast android:name="com.android.server.retaildemo.ACTION_RESET_DEMO" />

    <protected-broadcast android:name="android.intent.action.DEVICE_LOCKED_CHANGED" />

    <!-- Added in O -->
    <protected-broadcast android:name="android.app.action.APPLICATION_DELEGATION_SCOPES_CHANGED" />
    <protected-broadcast android:name="com.android.server.wm.ACTION_REVOKE_SYSTEM_ALERT_WINDOW_PERMISSION" />
    <protected-broadcast android:name="android.media.tv.action.PARENTAL_CONTROLS_ENABLED_CHANGED" />

    <protected-broadcast android:name="android.content.pm.action.SESSION_COMMITTED" />
    <protected-broadcast android:name="android.os.action.USER_RESTRICTIONS_CHANGED" />
    <protected-broadcast android:name="android.media.tv.action.PREVIEW_PROGRAM_ADDED_TO_WATCH_NEXT" />
    <protected-broadcast android:name="android.media.tv.action.PREVIEW_PROGRAM_BROWSABLE_DISABLED" />
    <protected-broadcast android:name="android.media.tv.action.WATCH_NEXT_PROGRAM_BROWSABLE_DISABLED" />
    <protected-broadcast android:name="android.media.tv.action.CHANNEL_BROWSABLE_REQUESTED" />
    <protected-broadcast android:name="com.android.server.inputmethod.InputMethodManagerService.SHOW_INPUT_METHOD_PICKER" />

    <!-- Time zone rules update intents fired by the system server -->
    <protected-broadcast android:name="com.android.intent.action.timezone.RULES_UPDATE_OPERATION" />
    <protected-broadcast android:name="com.android.intent.action.timezone.TRIGGER_RULES_UPDATE_CHECK" />

    <!-- Made protected in P (was introduced in JB-MR2) -->
    <protected-broadcast android:name="android.intent.action.GET_RESTRICTION_ENTRIES" />
    <protected-broadcast android:name="android.telephony.euicc.action.OTA_STATUS_CHANGED" />

    <!-- Added in P -->
    <protected-broadcast android:name="android.app.action.PROFILE_OWNER_CHANGED" />
    <protected-broadcast android:name="android.app.action.TRANSFER_OWNERSHIP_COMPLETE" />
    <protected-broadcast android:name="android.app.action.AFFILIATED_PROFILE_TRANSFER_OWNERSHIP_COMPLETE" />
    <protected-broadcast android:name="android.app.action.DATA_SHARING_RESTRICTION_CHANGED" />
    <protected-broadcast android:name="android.app.action.STATSD_STARTED" />
    <protected-broadcast android:name="com.android.server.biometrics.fingerprint.ACTION_LOCKOUT_RESET" />
    <protected-broadcast android:name="com.android.server.biometrics.face.ACTION_LOCKOUT_RESET" />

    <!-- For IdleController -->
    <protected-broadcast android:name="android.intent.action.DOCK_IDLE" />
    <protected-broadcast android:name="android.intent.action.DOCK_ACTIVE" />

    <!-- Added in Q -->
    <protected-broadcast android:name="android.content.pm.action.SESSION_UPDATED" />
    <protected-broadcast android:name="android.settings.action.GRAYSCALE_CHANGED" />

    <!-- For CarIdlenessTracker -->
    <protected-broadcast android:name="com.android.server.jobscheduler.GARAGE_MODE_ON" />
    <protected-broadcast android:name="com.android.server.jobscheduler.GARAGE_MODE_OFF" />
    <protected-broadcast android:name="com.android.server.jobscheduler.FORCE_IDLE" />
    <protected-broadcast android:name="com.android.server.jobscheduler.UNFORCE_IDLE" />

    <protected-broadcast android:name="android.provider.action.DEFAULT_SMS_PACKAGE_CHANGED_INTERNAL" />

    <protected-broadcast android:name="android.intent.action.DEVICE_CUSTOMIZATION_READY" />

    <!-- For tether entitlement recheck-->
    <protected-broadcast
        android:name="com.android.server.connectivity.tethering.PROVISIONING_RECHECK_ALARM" />
    <!-- ====================================================================== -->
    <!--                          RUNTIME PERMISSIONS                           -->
    <!-- ====================================================================== -->
    <eat-comment />

    <!-- Grouping for platform runtime permissions is not accessible to apps
         @hide
         @SystemApi
    -->
    <permission-group android:name="android.permission-group.UNDEFINED"
        android:priority="100" />

    <!-- ====================================================================== -->
    <!-- Permissions for accessing user's contacts including personal profile   -->
    <!-- ====================================================================== -->
    <eat-comment />

    <!-- Used for runtime permissions related to contacts and profiles on this
        device. -->
    <permission-group android:name="android.permission-group.CONTACTS"
        android:icon="@drawable/perm_group_contacts"
        android:label="@string/permgrouplab_contacts"
        android:description="@string/permgroupdesc_contacts"
        android:request="@string/permgrouprequest_contacts"
        android:priority="100" />

    <!-- Allows an application to read the user's contacts data.
        <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.READ_CONTACTS"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_readContacts"
        android:description="@string/permdesc_readContacts"
        android:protectionLevel="dangerous" />

    <!-- Allows an application to write the user's contacts data.
         <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.WRITE_CONTACTS"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_writeContacts"
        android:description="@string/permdesc_writeContacts"
        android:protectionLevel="dangerous" />

    <!-- ====================================================================== -->
    <!-- Permissions for accessing user's calendar                              -->
    <!-- ====================================================================== -->
    <eat-comment />

    <!-- Used for runtime permissions related to user's calendar. -->
    <permission-group android:name="android.permission-group.CALENDAR"
        android:icon="@drawable/perm_group_calendar"
        android:label="@string/permgrouplab_calendar"
        android:description="@string/permgroupdesc_calendar"
        android:request="@string/permgrouprequest_calendar"
        android:priority="200" />

    <!-- Allows an application to read the user's calendar data.
         <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.READ_CALENDAR"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_readCalendar"
        android:description="@string/permdesc_readCalendar"
        android:protectionLevel="dangerous" />

    <!-- Allows an application to write the user's calendar data.
         <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.WRITE_CALENDAR"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_writeCalendar"
        android:description="@string/permdesc_writeCalendar"
        android:protectionLevel="dangerous" />

    <!-- ====================================================================== -->
    <!-- Permissions for accessing and modifying user's SMS messages            -->
    <!-- ====================================================================== -->
    <eat-comment />

    <!-- Used for runtime permissions related to user's SMS messages. -->
    <permission-group android:name="android.permission-group.SMS"
        android:icon="@drawable/perm_group_sms"
        android:label="@string/permgrouplab_sms"
        android:description="@string/permgroupdesc_sms"
        android:request="@string/permgrouprequest_sms"
        android:priority="300" />

    <!-- Allows an application to send SMS messages.
         <p>Protection level: dangerous

         <p> This is a hard restricted permission which cannot be held by an app until
         the installer on record did not whitelist the permission. For more details see
         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
    -->
    <permission android:name="android.permission.SEND_SMS"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_sendSms"
        android:description="@string/permdesc_sendSms"
        android:permissionFlags="costsMoney|hardRestricted"
        android:protectionLevel="dangerous" />

    <!-- Allows an application to receive SMS messages.
         <p>Protection level: dangerous

         <p> This is a hard restricted permission which cannot be held by an app until
         the installer on record did not whitelist the permission. For more details see
         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
    -->
    <permission android:name="android.permission.RECEIVE_SMS"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_receiveSms"
        android:description="@string/permdesc_receiveSms"
        android:permissionFlags="hardRestricted"
        android:protectionLevel="dangerous" />

    <!-- Allows an application to read SMS messages.
         <p>Protection level: dangerous

         <p> This is a hard restricted permission which cannot be held by an app until
         the installer on record did not whitelist the permission. For more details see
         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
    -->
    <permission android:name="android.permission.READ_SMS"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_readSms"
        android:description="@string/permdesc_readSms"
        android:permissionFlags="hardRestricted"
        android:protectionLevel="dangerous" />

    <!-- Allows an application to receive WAP push messages.
         <p>Protection level: dangerous

         <p> This is a hard restricted permission which cannot be held by an app until
         the installer on record did not whitelist the permission. For more details see
         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
    -->
    <permission android:name="android.permission.RECEIVE_WAP_PUSH"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_receiveWapPush"
        android:description="@string/permdesc_receiveWapPush"
        android:permissionFlags="hardRestricted"
        android:protectionLevel="dangerous" />

    <!-- Allows an application to monitor incoming MMS messages.
         <p>Protection level: dangerous

         <p> This is a hard restricted permission which cannot be held by an app until
         the installer on record did not whitelist the permission. For more details see
         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
    -->
    <permission android:name="android.permission.RECEIVE_MMS"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_receiveMms"
        android:description="@string/permdesc_receiveMms"
        android:permissionFlags="hardRestricted"
        android:protectionLevel="dangerous" />

    <!-- @SystemApi @TestApi Allows an application to read previously received cell broadcast
         messages and to register a content observer to get notifications when
         a cell broadcast has been received and added to the database. For
         emergency alerts, the database is updated immediately after the
         alert dialog and notification sound/vibration/speech are presented.
         The "read" column is then updated after the user dismisses the alert.
         This enables supplementary emergency assistance apps to start loading
         additional emergency information (if Internet access is available)
         when the alert is first received, and to delay presenting the info
         to the user until after the initial alert dialog is dismissed.
         <p>Protection level: dangerous

         <p> This is a hard restricted permission which cannot be held by an app until
         the installer on record did not whitelist the permission. For more details see
         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.

         @hide Pending API council approval -->
    <permission android:name="android.permission.READ_CELL_BROADCASTS"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_readCellBroadcasts"
        android:description="@string/permdesc_readCellBroadcasts"
        android:permissionFlags="hardRestricted"
        android:protectionLevel="dangerous" />

    <!-- ====================================================================== -->
    <!-- Permissions for accessing external storage                             -->
    <!-- ====================================================================== -->
    <eat-comment />

    <!-- Used for runtime permissions related to the shared external storage. -->
    <permission-group android:name="android.permission-group.STORAGE"
        android:icon="@drawable/perm_group_storage"
        android:label="@string/permgrouplab_storage"
        android:description="@string/permgroupdesc_storage"
        android:request="@string/permgrouprequest_storage"
        android:priority="900" />

    <!-- Allows an application to read from external storage.
      <p>Any app that declares the {@link #WRITE_EXTERNAL_STORAGE} permission is implicitly
      granted this permission.</p>
      <p>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 <em>Protect USB
      storage</em> under Developer options in the Settings app on a device running Android 4.1 or
      higher.</p>
      <p>Also starting in API level 19, this permission is <em>not</em> required to
      read/write files in your application-specific directories returned by
      {@link android.content.Context#getExternalFilesDir} and
      {@link android.content.Context#getExternalCacheDir}.
      <p class="note"><strong>Note:</strong> If <em>both</em> your <a
      href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
      minSdkVersion}</a> and <a
      href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
      targetSdkVersion}</a> 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 <a
      href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
      targetSdkVersion}</a> is 4 or higher.

      <p> This is a soft restricted permission which cannot be held by an app it its
      full form until the installer on record did not whitelist the permission.
      Specifically, if the permission is whitelisted the holder app can access
      external storage and the visual and aural media collections while if the
      permission is not whitelisted the holder app can only access to the visual
      and aural medial collections. Also the permission is immutably restricted
      meaning that the whitelist state can be specified only at install time and
      cannot change until the app is installed. For more details see
      {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
     -->
    <permission android:name="android.permission.READ_EXTERNAL_STORAGE"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_sdcardRead"
        android:description="@string/permdesc_sdcardRead"
        android:permissionFlags="softRestricted|immutablyRestricted"
        android:protectionLevel="dangerous" />

    <!-- Allows an application to write to external storage.
         <p class="note"><strong>Note:</strong> If <em>both</em> your <a
         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
         minSdkVersion}</a> and <a
         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
         targetSdkVersion}</a> 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 <a
         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
         targetSdkVersion}</a> is 4 or higher.
         <p>Starting in API level 19, this permission is <em>not</em> required to
         read/write files in your application-specific directories returned by
         {@link android.content.Context#getExternalFilesDir} and
         {@link android.content.Context#getExternalCacheDir}.
         <p>Is this permission is not whitelisted for an app that targets an API level before
         {@link android.os.Build.VERSION_CODES#Q} this permission cannot be granted to apps.</p>
    -->
    <permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_sdcardWrite"
        android:description="@string/permdesc_sdcardWrite"
        android:permissionFlags="softRestricted|immutablyRestricted"
        android:protectionLevel="dangerous" />

    <!-- Allows an application to access any geographic locations persisted in the
         user's shared collection. -->
    <permission android:name="android.permission.ACCESS_MEDIA_LOCATION"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_mediaLocation"
        android:description="@string/permdesc_mediaLocation"
        android:protectionLevel="dangerous" />

    <!-- @hide @SystemApi @TestApi
         Allows an application to modify OBB files visible to other apps. -->
    <permission android:name="android.permission.WRITE_OBB"
        android:protectionLevel="signature|privileged" />

    <!-- ====================================================================== -->
    <!-- Permissions for accessing the device location                          -->
    <!-- ====================================================================== -->
    <eat-comment />

    <!-- Used for permissions that allow accessing the device location. -->
    <permission-group android:name="android.permission-group.LOCATION"
        android:icon="@drawable/perm_group_location"
        android:label="@string/permgrouplab_location"
        android:description="@string/permgroupdesc_location"
        android:request="@string/permgrouprequest_location"
        android:requestDetail="@string/permgrouprequestdetail_location"
        android:backgroundRequest="@string/permgroupbackgroundrequest_location"
        android:backgroundRequestDetail="@string/permgroupbackgroundrequestdetail_location"
        android:priority="400" />

    <!-- Allows an app to access precise location.
         Alternatively, you might want {@link #ACCESS_COARSE_LOCATION}.
         <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.ACCESS_FINE_LOCATION"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_accessFineLocation"
        android:description="@string/permdesc_accessFineLocation"
        android:backgroundPermission="android.permission.ACCESS_BACKGROUND_LOCATION"
        android:protectionLevel="dangerous|instant" />

    <!-- Allows an app to access approximate location.
         Alternatively, you might want {@link #ACCESS_FINE_LOCATION}.
         <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.ACCESS_COARSE_LOCATION"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_accessCoarseLocation"
        android:description="@string/permdesc_accessCoarseLocation"
        android:backgroundPermission="android.permission.ACCESS_BACKGROUND_LOCATION"
        android:protectionLevel="dangerous|instant" />

    <!-- Allows an app to access location in the background. If you're requesting this permission,
         you must also request either {@link #ACCESS_COARSE_LOCATION} or
         {@link #ACCESS_FINE_LOCATION}. Requesting this permission by itself doesn't give you
         location access.
         <p>Protection level: dangerous

         <p> This is a hard restricted permission which cannot be held by an app until
         the installer on record did not whitelist the permission. For more details see
         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
    -->
    <permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_accessBackgroundLocation"
        android:permissionFlags="hardRestricted"
        android:description="@string/permdesc_accessBackgroundLocation"
        android:protectionLevel="dangerous|instant" />

    <!-- ====================================================================== -->
    <!-- Permissions for accessing the call log                                 -->
    <!-- ====================================================================== -->
    <eat-comment />

    <!-- Used for permissions that are associated telephony features. -->
    <permission-group android:name="android.permission-group.CALL_LOG"
        android:icon="@drawable/perm_group_call_log"
        android:label="@string/permgrouplab_calllog"
        android:description="@string/permgroupdesc_calllog"
        android:request="@string/permgrouprequest_calllog"
        android:priority="450" />

    <!-- Allows an application to access the IMS call service: making and
         modifying a call
        <p>Protection level: signature|privileged
        @hide
    -->
    <permission android:name="android.permission.ACCESS_IMS_CALL_SERVICE"
        android:label="@string/permlab_accessImsCallService"
        android:description="@string/permdesc_accessImsCallService"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to read the user's call log.
         <p class="note"><strong>Note:</strong> If your app uses the
         {@link #READ_CONTACTS} permission and <em>both</em> your <a
         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
         minSdkVersion}</a> and <a
         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
         targetSdkVersion}</a> 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 <a
         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
         targetSdkVersion}</a> is 16 or higher.</p>
         <p>Protection level: dangerous

         <p> This is a hard restricted permission which cannot be held by an app until
         the installer on record did not whitelist the permission. For more details see
         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
    -->
    <permission android:name="android.permission.READ_CALL_LOG"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_readCallLog"
        android:description="@string/permdesc_readCallLog"
        android:permissionFlags="hardRestricted"
        android:protectionLevel="dangerous" />

    <!-- Allows an application to write (but not read) the user's
         call log data.
         <p class="note"><strong>Note:</strong> If your app uses the
         {@link #WRITE_CONTACTS} permission and <em>both</em> your <a
         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
         minSdkVersion}</a> and <a
         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
         targetSdkVersion}</a> 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 <a
         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
         targetSdkVersion}</a> is 16 or higher.</p>
         <p>Protection level: dangerous

         <p> This is a hard restricted permission which cannot be held by an app until
         the installer on record did not whitelist the permission. For more details see
         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
    -->
    <permission android:name="android.permission.WRITE_CALL_LOG"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_writeCallLog"
        android:description="@string/permdesc_writeCallLog"
        android:permissionFlags="hardRestricted"
        android:protectionLevel="dangerous" />

    <!-- 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.
         <p>Protection level: dangerous

         <p> This is a hard restricted permission which cannot be held by an app until
         the installer on record did not whitelist the permission. For more details see
         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.

         @deprecated Applications should use {@link android.telecom.CallRedirectionService} instead
         of the {@link android.content.Intent#ACTION_NEW_OUTGOING_CALL} broadcast.
    -->
    <permission android:name="android.permission.PROCESS_OUTGOING_CALLS"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_processOutgoingCalls"
        android:description="@string/permdesc_processOutgoingCalls"
        android:permissionFlags="hardRestricted"
        android:protectionLevel="dangerous" />

    <!-- ====================================================================== -->
    <!-- Permissions for accessing the device telephony                         -->
    <!-- ====================================================================== -->
    <eat-comment />

    <!-- Used for permissions that are associated telephony features. -->
    <permission-group android:name="android.permission-group.PHONE"
        android:icon="@drawable/perm_group_phone_calls"
        android:label="@string/permgrouplab_phone"
        android:description="@string/permgroupdesc_phone"
        android:request="@string/permgrouprequest_phone"
        android:priority="500" />

    <!-- Allows read only access to phone state, including the phone number of the device,
         current cellular network information, the status of any ongoing calls, and a list of any
         {@link android.telecom.PhoneAccount}s registered on the device.
         <p class="note"><strong>Note:</strong> If <em>both</em> your <a
         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
         minSdkVersion}</a> and <a
         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
         targetSdkVersion}</a> 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 <a
         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
         targetSdkVersion}</a> is 4 or higher.
         <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.READ_PHONE_STATE"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_readPhoneState"
        android:description="@string/permdesc_readPhoneState"
        android:protectionLevel="dangerous" />

    <!-- Allows read access to the device's phone number(s). This is a subset of the capabilities
         granted by {@link #READ_PHONE_STATE} but is exposed to instant applications.
         <p>Protection level: dangerous-->
    <permission android:name="android.permission.READ_PHONE_NUMBERS"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_readPhoneNumbers"
        android:description="@string/permdesc_readPhoneNumbers"
        android:protectionLevel="dangerous|instant" />

    <!-- Allows an application to initiate a phone call without going through
        the Dialer user interface for the user to confirm the call.
        <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.CALL_PHONE"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:permissionFlags="costsMoney"
        android:label="@string/permlab_callPhone"
        android:description="@string/permdesc_callPhone"
        android:protectionLevel="dangerous" />

    <!-- Allows an application to add voicemails into the system.
         <p>Protection level: dangerous
    -->
    <permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_addVoicemail"
        android:description="@string/permdesc_addVoicemail"
        android:protectionLevel="dangerous" />

    <!-- Allows an application to use SIP service.
         <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.USE_SIP"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:description="@string/permdesc_use_sip"
        android:label="@string/permlab_use_sip"
        android:protectionLevel="dangerous"/>

    <!-- Allows the app to answer an incoming phone call.
         <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.ANSWER_PHONE_CALLS"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_answerPhoneCalls"
        android:description="@string/permdesc_answerPhoneCalls"
        android:protectionLevel="dangerous|runtime" />

    <!-- Allows a calling application which manages it own calls through the self-managed
         {@link android.telecom.ConnectionService} APIs.  See
         {@link android.telecom.PhoneAccount#CAPABILITY_SELF_MANAGED} for more information on the
         self-managed ConnectionService APIs.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.MANAGE_OWN_CALLS"
                android:label="@string/permlab_manageOwnCalls"
                android:description="@string/permdesc_manageOwnCalls"
                android:protectionLevel="normal" />

    <!--Allows an app which implements the
        {@link android.telecom.InCallService 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.
        <p>Protection level: normal
    -->
    <permission android:name="android.permission.CALL_COMPANION_APP"
                android:label="@string/permlab_callCompanionApp"
                android:description="@string/permdesc_callCompanionApp"
                android:protectionLevel="normal" />

    <!-- 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.<p>
         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.<p>
         This permission protects access to the
         {@link android.telecom.TelecomManager#acceptHandover(Uri, int, PhoneAccountHandle)} which
         the receiving side of the handover uses to accept a handover.
         <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.ACCEPT_HANDOVER"
                android:permissionGroup="android.permission-group.UNDEFINED"
                android.label="@string/permlab_acceptHandover"
                android:description="@string/permdesc_acceptHandovers"
                android:protectionLevel="dangerous" />

    <!-- ====================================================================== -->
    <!-- Permissions for accessing the device microphone                        -->
    <!-- ====================================================================== -->
    <eat-comment />

    <!-- Used for permissions that are associated with accessing
         microphone audio from the device. Note that phone calls also capture audio
         but are in a separate (more visible) permission group. -->
    <permission-group android:name="android.permission-group.MICROPHONE"
        android:icon="@drawable/perm_group_microphone"
        android:label="@string/permgrouplab_microphone"
        android:description="@string/permgroupdesc_microphone"
        android:request="@string/permgrouprequest_microphone"
        android:priority="600" />

    <!-- Allows an application to record audio.
         <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.RECORD_AUDIO"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_recordAudio"
        android:description="@string/permdesc_recordAudio"
        android:protectionLevel="dangerous|instant" />

    <!-- ====================================================================== -->
    <!-- Permissions for activity recognition                        -->
    <!-- ====================================================================== -->
    <eat-comment />

    <!-- Used for permissions that are associated with activity recognition. -->
    <permission-group android:name="android.permission-group.ACTIVITY_RECOGNITION"
        android:icon="@drawable/perm_group_activity_recognition"
        android:label="@string/permgrouplab_activityRecognition"
        android:description="@string/permgroupdesc_activityRecognition"
        android:request="@string/permgrouprequest_activityRecognition"
        android:priority="1000" />

    <!-- Allows an application to recognize physical activity.
         <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.ACTIVITY_RECOGNITION"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_activityRecognition"
        android:description="@string/permdesc_activityRecognition"
        android:protectionLevel="dangerous|instant" />

    <!-- ====================================================================== -->
    <!-- Permissions for accessing the UCE Service                              -->
    <!-- ====================================================================== -->

    <!-- @hide Allows an application to Access UCE-Presence.
         <p>Protection level: signature|privileged
    -->
    <permission android:name="android.permission.ACCESS_UCE_PRESENCE_SERVICE"
        android:permissionGroup="android.permission-group.PHONE"
        android:protectionLevel="signature|privileged"/>

    <!-- @hide Allows an application to Access UCE-OPTIONS.
         <p>Protection level: signature|privileged
    -->
    <permission android:name="android.permission.ACCESS_UCE_OPTIONS_SERVICE"
        android:permissionGroup="android.permission-group.PHONE"
        android:protectionLevel="signature|privileged"/>



    <!-- ====================================================================== -->
    <!-- Permissions for accessing the device camera                            -->
    <!-- ====================================================================== -->
    <eat-comment />

    <!-- Used for permissions that are associated with accessing
     camera or capturing images/video from the device. -->
    <permission-group android:name="android.permission-group.CAMERA"
        android:icon="@drawable/perm_group_camera"
        android:label="@string/permgrouplab_camera"
        android:description="@string/permgroupdesc_camera"
        android:request="@string/permgrouprequest_camera"
        android:priority="700" />

    <!-- Required to be able to access the camera device.
         <p>This will automatically enforce the
         <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">
         uses-feature</a> manifest element for <em>all</em> 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.</p>
         <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.CAMERA"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_camera"
        android:description="@string/permdesc_camera"
        android:protectionLevel="dangerous|instant" />


    <!-- ====================================================================== -->
    <!-- Permissions for accessing the device sensors                           -->
    <!-- ====================================================================== -->
    <eat-comment />

    <!-- Used for permissions that are associated with accessing
         body or environmental sensors. -->
    <permission-group android:name="android.permission-group.SENSORS"
        android:icon="@drawable/perm_group_sensors"
        android:label="@string/permgrouplab_sensors"
        android:description="@string/permgroupdesc_sensors"
        android:request="@string/permgrouprequest_sensors"
        android:priority="800" />

    <!-- Allows an application to access data from sensors that the user uses to
         measure what is happening inside his/her body, such as heart rate.
         <p>Protection level: dangerous -->
    <permission android:name="android.permission.BODY_SENSORS"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:label="@string/permlab_bodySensors"
        android:description="@string/permdesc_bodySensors"
        android:protectionLevel="dangerous" />

    <!-- Allows an app to use fingerprint hardware.
         <p>Protection level: normal
         @deprecated Applications should request {@link
         android.Manifest.permission#USE_BIOMETRIC} instead
    -->
    <permission android:name="android.permission.USE_FINGERPRINT"
        android:permissionGroup="android.permission-group.SENSORS"
        android:label="@string/permlab_useFingerprint"
        android:description="@string/permdesc_useFingerprint"
        android:protectionLevel="normal" />

    <!-- Allows an app to use device supported biometric modalities.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.USE_BIOMETRIC"
        android:permissionGroup="android.permission-group.SENSORS"
        android:label="@string/permlab_useBiometric"
        android:description="@string/permdesc_useBiometric"
        android:protectionLevel="normal" />

    <!-- ====================================================================== -->
    <!-- REMOVED PERMISSIONS                                                    -->
    <!-- ====================================================================== -->

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="android.permission.READ_PROFILE"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="android.permission.WRITE_PROFILE"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="android.permission.READ_SOCIAL_STREAM"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="android.permission.WRITE_SOCIAL_STREAM"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="android.permission.READ_USER_DICTIONARY"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="android.permission.WRITE_USER_DICTIONARY"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="android.permission.WRITE_SMS"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="com.android.browser.permission.WRITE_HISTORY_BOOKMARKS"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="android.permission.MANAGE_ACCOUNTS"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="android.permission.USE_CREDENTIALS"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="android.permission.SUBSCRIBED_FEEDS_READ"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="android.permission.SUBSCRIBED_FEEDS_WRITE"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- @hide We need to keep this around for backwards compatibility -->
    <permission android:name="android.permission.FLASHLIGHT"
        android:protectionLevel="normal"
        android:permissionFlags="removed"/>

    <!-- ====================================================================== -->
    <!-- INSTALL PERMISSIONS                                                    -->
    <!-- ====================================================================== -->

    <!-- ================================== -->
    <!-- Permissions for accessing messages -->
    <!-- ================================== -->
    <eat-comment />

    <!-- Allows an application (Phone) to send a request to other applications
         to handle the respond-via-message action during incoming calls.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.SEND_RESPOND_VIA_MESSAGE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to send SMS to premium shortcodes without user permission.
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.SEND_SMS_NO_CONFIRMATION"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to filter carrier specific sms.
         @hide -->
    <permission android:name="android.permission.CARRIER_FILTER_SMS"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to receive emergency cell broadcast messages,
         to record or display them to the user.
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.RECEIVE_EMERGENCY_BROADCAST"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to monitor incoming Bluetooth MAP messages, to record
         or perform processing on them. -->
    <!-- @hide -->
    <permission android:name="android.permission.RECEIVE_BLUETOOTH_MAP"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @hide Allows an application to execute contacts directory search.
         This should only be used by ContactsProvider.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.BIND_DIRECTORY_SEARCH"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @hide Allows an application to modify cell broadcasts through the content provider.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.MODIFY_CELL_BROADCASTS"
                android:protectionLevel="signature|privileged" />

    <!-- =============================================================== -->
    <!-- Permissions for setting the device alarm                        -->
    <!-- =============================================================== -->
    <eat-comment />

    <!-- Allows an application to broadcast an Intent to set an alarm for the user.
         <p>Protection level: normal
    -->
    <permission android:name="com.android.alarm.permission.SET_ALARM"
        android:label="@string/permlab_setAlarm"
        android:description="@string/permdesc_setAlarm"
        android:protectionLevel="normal" />

    <!-- =============================================================== -->
    <!-- Permissions for accessing the user voicemail                    -->
    <!-- =============================================================== -->
    <eat-comment />

    <!-- Allows an application to modify and remove existing voicemails in the system.
        <p>Protection level: signature|privileged
    -->
    <permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to read voicemails in the system.
         <p>Protection level: signature|privileged
    -->
    <permission android:name="com.android.voicemail.permission.READ_VOICEMAIL"
        android:protectionLevel="signature|privileged" />

    <!-- ======================================= -->
    <!-- Permissions for accessing location info -->
    <!-- ======================================= -->
    <eat-comment />

    <!-- Allows an application to access extra location provider commands.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"
        android:label="@string/permlab_accessLocationExtraCommands"
        android:description="@string/permdesc_accessLocationExtraCommands"
        android:protectionLevel="normal" />

    <!-- Allows an application to install a location provider into the Location Manager.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.INSTALL_LOCATION_PROVIDER"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @hide Allows HDMI-CEC service to access device and configuration files.
         This should only be used by HDMI-CEC service.
    -->
    <permission android:name="android.permission.HDMI_CEC"
        android:protectionLevel="signature|privileged|vendorPrivileged" />

    <!-- Allows an application to use location features in hardware,
         such as the geofencing api.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.LOCATION_HARDWARE"
        android:protectionLevel="signature|privileged" />
    <uses-permission android:name="android.permission.LOCATION_HARDWARE"/>

    <!-- @SystemApi Allows an application to create mock location providers for testing.
         <p>Protection level: signature
         @hide
    -->
    <permission android:name="android.permission.ACCESS_MOCK_LOCATION"
        android:protectionLevel="signature" />

    <!-- ======================================= -->
    <!-- Permissions for accessing networks -->
    <!-- ======================================= -->
    <eat-comment />

    <!-- Allows applications to open network sockets.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.INTERNET"
        android:description="@string/permdesc_createNetworkSockets"
        android:label="@string/permlab_createNetworkSockets"
        android:protectionLevel="normal|instant" />

    <!-- Allows applications to access information about networks.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.ACCESS_NETWORK_STATE"
        android:description="@string/permdesc_accessNetworkState"
        android:label="@string/permlab_accessNetworkState"
        android:protectionLevel="normal|instant" />

    <!-- Allows applications to access information about Wi-Fi networks.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.ACCESS_WIFI_STATE"
        android:description="@string/permdesc_accessWifiState"
        android:label="@string/permlab_accessWifiState"
        android:protectionLevel="normal" />

    <!-- Allows applications to change Wi-Fi connectivity state.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.CHANGE_WIFI_STATE"
        android:description="@string/permdesc_changeWifiState"
        android:label="@string/permlab_changeWifiState"
        android:protectionLevel="normal" />

    <!-- @SystemApi @hide Allows apps to create and manage IPsec tunnels.
         <p>Only granted to applications that are currently bound by the
         system for creating and managing IPsec-based interfaces.
    -->
    <permission android:name="android.permission.MANAGE_IPSEC_TUNNELS"
        android:protectionLevel="signature|appop" />

    <!-- @hide Allows apps to create and manage Test Networks.
         <p>Granted only to shell. CTS tests will use
         UiAutomation.AdoptShellPermissionIdentity() to gain access.
    -->
    <permission android:name="android.permission.MANAGE_TEST_NETWORKS"
        android:protectionLevel="signature" />

    <!-- @SystemApi @hide Allows applications to read Wi-Fi credential.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.READ_WIFI_CREDENTIAL"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @hide Allows applications to change tether state and run
         tether carrier provisioning.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.TETHER_PRIVILEGED"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @hide Allow system apps to receive broadcast
         when a wifi network credential is changed.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.RECEIVE_WIFI_CREDENTIAL_CHANGE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @hide Allows an application to modify any wifi configuration, even if created
     by another application. Once reconfigured the original creator cannot make any further
     modifications.
     <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.OVERRIDE_WIFI_CONFIG"
        android:protectionLevel="signature|privileged" />

    <!-- @hide -->
    <permission android:name="android.permission.ACCESS_WIMAX_STATE"
        android:description="@string/permdesc_accessWimaxState"
        android:label="@string/permlab_accessWimaxState"
        android:protectionLevel="normal" />

    <!-- @hide -->
    <permission android:name="android.permission.CHANGE_WIMAX_STATE"
        android:description="@string/permdesc_changeWimaxState"
        android:label="@string/permlab_changeWimaxState"
        android:protectionLevel="normal" />

    <!-- Allows applications to act as network scorers. @hide @SystemApi-->
    <permission android:name="android.permission.SCORE_NETWORKS"
        android:protectionLevel="signature|privileged" />

    <!-- Allows applications to request network
         recommendations and scores from the NetworkScoreService.
         <p>Not for use by third-party applications. @hide -->
    <permission android:name="android.permission.REQUEST_NETWORK_SCORES"
        android:protectionLevel="signature|setup" />

    <!-- Allows network stack services (Connectivity and Wifi) to coordinate
         <p>Not for use by third-party or privileged applications.
         @hide This should only be used by Connectivity and Wifi Services.
    -->
    <permission android:name="android.permission.NETWORK_STACK"
        android:protectionLevel="signature" />

    <!-- Allows Settings and SystemUI to call methods in Networking services
         <p>Not for use by third-party or privileged applications.
         @hide This should only be used by Settings and SystemUI.
    -->
    <permission android:name="android.permission.NETWORK_SETTINGS"
        android:protectionLevel="signature" />

    <!-- Allows SetupWizard to call methods in Networking services
         <p>Not for use by any other third-party or privileged applications.
         @SystemApi
         @hide This should only be used by SetupWizard.
    -->
    <permission android:name="android.permission.NETWORK_SETUP_WIZARD"
        android:protectionLevel="signature|setup" />

    <!-- Allows Managed Provisioning to call methods in Networking services
         <p>Not for use by any other third-party or privileged applications.
         @SystemApi
         @hide This should only be used by ManagedProvisioning app.
    -->
    <permission android:name="android.permission.NETWORK_MANAGED_PROVISIONING"
        android:protectionLevel="signature" />

    <!-- Allows Carrier Provisioning to call methods in Networking services
         <p>Not for use by any other third-party or privileged applications.
         @SystemApi
         @hide This should only be used by CarrierProvisioning.
    -->
    <permission android:name="android.permission.NETWORK_CARRIER_PROVISIONING"
        android:protectionLevel="signature|privileged" />

    <!-- #SystemApi @hide Allows applications to access information about LoWPAN interfaces.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.ACCESS_LOWPAN_STATE"
        android:protectionLevel="signature|privileged" />

    <!-- #SystemApi @hide Allows applications to change LoWPAN connectivity state.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.CHANGE_LOWPAN_STATE"
        android:protectionLevel="signature|privileged" />

    <!-- #SystemApi @hide Allows applications to read LoWPAN credential.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.READ_LOWPAN_CREDENTIAL"
        android:protectionLevel="signature|privileged" />

    <!-- #SystemApi @hide Allows a service to register or unregister
         new LoWPAN interfaces.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.MANAGE_LOWPAN_INTERFACES"
        android:protectionLevel="signature|privileged" />

    <!-- @hide Allows internal management of Wi-Fi connectivity state when on
         wireless consent mode.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.MANAGE_WIFI_WHEN_WIRELESS_CONSENT_REQUIRED"
        android:protectionLevel="signature" />

    <!-- #SystemApi @hide Allows an app to bypass Private DNS.
         <p>Not for use by third-party applications.
         TODO: publish as system API in next API release. -->
    <permission android:name="android.permission.NETWORK_BYPASS_PRIVATE_DNS"
        android:protectionLevel="signature" />

    <!-- #SystemApi @hide Allows device mobility state to be set so that Wifi scan interval can be increased
         when the device is stationary in order to save power.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.WIFI_SET_DEVICE_MOBILITY_STATE"
        android:protectionLevel="signature|privileged" />

    <!-- #SystemApi @hide Allows privileged system APK to update Wifi usability stats and score.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE"
        android:protectionLevel="signature|privileged" />

    <!-- ======================================= -->
    <!-- Permissions for short range, peripheral networks -->
    <!-- ======================================= -->
    <eat-comment />

    <!-- Allows applications to connect to paired bluetooth devices.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.BLUETOOTH"
        android:description="@string/permdesc_bluetooth"
        android:label="@string/permlab_bluetooth"
        android:protectionLevel="normal" />

    <!-- @SystemApi @TestApi Allows an application to suspend other apps, which will prevent the
         user from using them until they are unsuspended.
         @hide
    -->
    <permission android:name="android.permission.SUSPEND_APPS"
        android:protectionLevel="signature|wellbeing" />

    <!-- Allows applications to discover and pair bluetooth devices.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.BLUETOOTH_ADMIN"
        android:description="@string/permdesc_bluetoothAdmin"
        android:label="@string/permlab_bluetoothAdmin"
        android:protectionLevel="normal" />

    <!-- Allows applications to pair bluetooth devices without user interaction, and to
         allow or disallow phonebook access or message access.
         This is not available to third party applications. -->
    <permission android:name="android.permission.BLUETOOTH_PRIVILEGED"
        android:protectionLevel="signature|privileged" />

    <!-- Control access to email providers exclusively for Bluetooth
         @hide
    -->
    <permission android:name="android.permission.BLUETOOTH_MAP"
        android:protectionLevel="signature" />

    <!-- Allows bluetooth stack to access files
         @hide This should only be used by Bluetooth apk.
    -->
    <permission android:name="android.permission.BLUETOOTH_STACK"
        android:protectionLevel="signature" />

    <!-- Allows applications to perform I/O operations over NFC.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.NFC"
        android:description="@string/permdesc_nfc"
        android:label="@string/permlab_nfc"
        android:protectionLevel="normal" />

    <!-- Allows applications to receive NFC transaction events.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.NFC_TRANSACTION_EVENT"
        android:protectionLevel="normal" />

    <!-- @SystemApi Allows an internal user to use privileged ConnectivityManager APIs.
         @hide -->
    <permission android:name="android.permission.CONNECTIVITY_INTERNAL"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an internal user to use restricted Networks.
         @hide -->
    <permission android:name="android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS"
        android:protectionLevel="signature|privileged" />
    <uses-permission android:name="android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS"/>

    <!-- @SystemApi Allows an internal user to set signal strength in NetworkRequest. This kind of
         request will wake up device when signal strength meets the given value.
         @hide -->
    <permission android:name="android.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP"
                android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows a system application to access hardware packet offload capabilities.
         @hide -->
    <permission android:name="android.permission.PACKET_KEEPALIVE_OFFLOAD"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi
         @hide -->
    <permission android:name="android.permission.RECEIVE_DATA_ACTIVITY_CHANGE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows access to the loop radio (Android@Home mesh network) device.
         @hide -->
    <permission android:name="android.permission.LOOP_RADIO"
        android:protectionLevel="signature|privileged" />

    <!-- Allows sending and receiving handover transfer status from Wifi and Bluetooth
         @hide -->
    <permission android:name="android.permission.NFC_HANDOVER_STATUS"
        android:protectionLevel="signature|privileged" />

    <!-- @hide Allows internal management of Bluetooth state when on wireless consent mode.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.MANAGE_BLUETOOTH_WHEN_WIRELESS_CONSENT_REQUIRED"
        android:protectionLevel="signature" />

    <!-- @hide Allows the device to be reset, clearing all data and enables Test Harness Mode. -->
    <permission android:name="android.permission.ENABLE_TEST_HARNESS_MODE"
        android:protectionLevel="signature" />

    <!-- ================================== -->
    <!-- Permissions for accessing accounts -->
    <!-- ================================== -->
    <eat-comment />

    <!-- Allows access to the list of accounts in the Accounts Service.

    <p class="note"><strong>Note:</strong> 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 <code>"GET_ACCOUNTS"</code> permission to read
    information about that account. On Android 5.1 and lower, all apps need
    <code>"GET_ACCOUNTS"</code> permission to read information about any
    account.</p>

    <p>Protection level: dangerous
    -->
    <permission android:name="android.permission.GET_ACCOUNTS"
        android:permissionGroup="android.permission-group.UNDEFINED"
        android:protectionLevel="dangerous"
        android:description="@string/permdesc_getAccounts"
        android:label="@string/permlab_getAccounts" />
    <uses-permission android:name="android.permission.GET_ACCOUNTS"/>

    <!-- Allows applications to call into AccountAuthenticators.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.ACCOUNT_MANAGER"
        android:protectionLevel="signature" />

    <!-- ================================== -->
    <!-- Permissions for accessing hardware that may effect battery life-->
    <!-- ================================== -->
    <eat-comment />

    <!-- Allows applications to enter Wi-Fi Multicast mode.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"
        android:description="@string/permdesc_changeWifiMulticastState"
        android:label="@string/permlab_changeWifiMulticastState"
        android:protectionLevel="normal" />

    <!-- Allows access to the vibrator.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.VIBRATE"
        android:label="@string/permlab_vibrate"
        android:description="@string/permdesc_vibrate"
        android:protectionLevel="normal|instant" />

    <!-- Allows using PowerManager WakeLocks to keep processor from sleeping or screen
         from dimming.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.WAKE_LOCK"
        android:label="@string/permlab_wakeLock"
        android:description="@string/permdesc_wakeLock"
        android:protectionLevel="normal|instant" />

    <!-- Allows using the device's IR transmitter, if available.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.TRANSMIT_IR"
        android:label="@string/permlab_transmitIr"
        android:description="@string/permdesc_transmitIr"
        android:protectionLevel="normal" />

    <!-- ==================================================== -->
    <!-- Permissions related to changing audio settings   -->
    <!-- ==================================================== -->
    <eat-comment />

    <!-- Allows an application to modify global audio settings.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"
        android:label="@string/permlab_modifyAudioSettings"
        android:description="@string/permdesc_modifyAudioSettings"
        android:protectionLevel="normal" />

    <!-- ================================== -->
    <!-- Permissions for accessing hardware -->
    <!-- ================================== -->
    <eat-comment />

    <!-- @SystemApi Allows an application to manage preferences and permissions for USB devices
         @hide -->
    <permission android:name="android.permission.MANAGE_USB"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to manage Android Debug Bridge settings.
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.MANAGE_DEBUGGING"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to access the MTP USB kernel driver.
         For use only by the device side MTP implementation.
         @hide -->
    <permission android:name="android.permission.ACCESS_MTP"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows access to hardware peripherals.  Intended only for hardware testing.
         <p>Not for use by third-party applications.
         @hide
    -->
    <permission android:name="android.permission.HARDWARE_TEST"
        android:protectionLevel="signature" />

    <!-- @hide Allows an application to manage DynamicSystem image -->
    <permission android:name="android.permission.MANAGE_DYNAMIC_SYSTEM"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to install a DynamicSystem image and get status updates.
         @hide -->
    <permission android:name="android.permission.INSTALL_DYNAMIC_SYSTEM"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows access to Broadcast Radio
         @hide This is not a third-party API (intended for system apps).-->
    <permission android:name="android.permission.ACCESS_BROADCAST_RADIO"
        android:protectionLevel="signature|privileged" />

    <!-- @deprecated @SystemApi Allows access to FM
         @hide This is not a third-party API (intended for system apps).-->
    <permission android:name="android.permission.ACCESS_FM_RADIO"
        android:protectionLevel="signature|privileged" />

    <!-- Allows access to configure network interfaces, configure/use IPSec, etc.
         @hide -->
    <permission android:name="android.permission.NET_ADMIN"
        android:protectionLevel="signature" />

    <!-- Allows registration for remote audio playback. @hide -->
    <permission android:name="android.permission.REMOTE_AUDIO_PLAYBACK"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows TvInputService to access underlying TV input hardware such as
         built-in tuners and HDMI-in's.
         @hide This should only be used by OEM's TvInputService's.
    -->
    <permission android:name="android.permission.TV_INPUT_HARDWARE"
        android:protectionLevel="signature|privileged|vendorPrivileged" />

    <!-- @SystemApi Allows to capture a frame of TV input hardware such as
         built-in tuners and HDMI-in's.
         @hide <p>Not for use by third-party applications.
    -->
    <permission android:name="android.permission.CAPTURE_TV_INPUT"
        android:protectionLevel="signature|privileged" />

    <!-- @hide Allows TvInputService to access DVB device.
   <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.DVB_DEVICE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows reading and enabling/disabling the OEM unlock allowed by carrier state
         @hide <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows reading and enabling/disabling the OEM unlock allowed by user state
         @hide <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.MANAGE_USER_OEM_UNLOCK_STATE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows reading the OEM unlock state
         @hide <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.READ_OEM_UNLOCK_STATE"
        android:protectionLevel="signature|privileged" />

    <!-- @hide Allows enabling/disabling OEM unlock
   <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.OEM_UNLOCK_STATE"
        android:protectionLevel="signature" />

    <!-- @hide Allows querying state of PersistentDataBlock
   <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.ACCESS_PDB_STATE"
        android:protectionLevel="signature" />

    <!-- Allows testing if a passwords is forbidden by the admins.
         @hide <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.TEST_BLACKLISTED_PASSWORD"
        android:protectionLevel="signature" />

    <!-- @hide Allows system update service to notify device owner about pending updates.
   <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.NOTIFY_PENDING_SYSTEM_UPDATE"
        android:protectionLevel="signature|privileged" />

    <!-- =========================================== -->
    <!-- Permissions associated with camera and image capture -->
    <!-- =========================================== -->
    <eat-comment />

    <!-- @SystemApi Allows disabling the transmit-indicator LED that is normally on when
         a camera is in use by an application.
         @hide -->
    <permission android:name="android.permission.CAMERA_DISABLE_TRANSMIT_LED"
        android:protectionLevel="signature|privileged" />

    <!-- Allows sending the camera service notifications about system-wide events.
        @hide -->
    <permission android:name="android.permission.CAMERA_SEND_SYSTEM_EVENTS"
        android:protectionLevel="signature|privileged" />

    <!-- =========================================== -->
    <!-- Permissions associated with telephony state -->
    <!-- =========================================== -->
    <eat-comment />

    <!-- Allows modification of the telephony state - power on, mmi, etc.
         Does not include placing calls.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.MODIFY_PHONE_STATE"
        android:protectionLevel="signature|privileged" />

    <!-- Allows read only access to precise phone state.
         @hide Pending API council approval -->
    <permission android:name="android.permission.READ_PRECISE_PHONE_STATE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows read access to privileged phone state.
         @hide Used internally. -->
    <permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Protects the ability to register any PhoneAccount with
         PhoneAccount#CAPABILITY_SIM_SUBSCRIPTION. This capability indicates that the PhoneAccount
         corresponds to a device SIM.
         @hide -->
    <permission android:name="android.permission.REGISTER_SIM_SUBSCRIPTION"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Protects the ability to register any PhoneAccount with
         PhoneAccount#CAPABILITY_CALL_PROVIDER.
         @hide -->
    <permission android:name="android.permission.REGISTER_CALL_PROVIDER"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Protects the ability to register any PhoneAccount with
         PhoneAccount#CAPABILITY_CONNECTION_MANAGER
         @hide -->
    <permission android:name="android.permission.REGISTER_CONNECTION_MANAGER"
        android:protectionLevel="signature|privileged" />

    <!-- Must be required by a {@link android.telecom.InCallService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature|privileged
    -->
    <permission android:name="android.permission.BIND_INCALL_SERVICE"
        android:protectionLevel="signature|privileged" />

    <!-- Allows the app to request network scans from telephony.
         <p>Not for use by third-party applications.
         @SystemApi @hide-->
    <permission android:name="android.permission.NETWORK_SCAN"
        android:protectionLevel="signature|privileged" />

    <!-- Must be required by a link {@link android.telephony.VisualVoicemailService} to ensure that
         only the system can bind to it.
         <p>Protection level: signature|privileged
    -->
    <permission
      android:name="android.permission.BIND_VISUAL_VOICEMAIL_SERVICE"
      android:protectionLevel="signature|privileged"/>

    <!-- Must be required by a {@link android.telecom.CallScreeningService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature|privileged
    -->
    <permission android:name="android.permission.BIND_SCREENING_SERVICE"
        android:protectionLevel="signature|privileged" />

    <!-- Must be required by a {@link android.telecom.PhoneAccountSuggestionService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature
         @SystemApi
         @hide
    -->
    <permission android:name="android.permission.BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by a {@link android.telecom.CallRedirectionService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature|privileged
    -->
    <permission android:name="android.permission.BIND_CALL_REDIRECTION_SERVICE"
                android:protectionLevel="signature|privileged" />

    <!-- Must be required by a {@link android.telecom.ConnectionService},
         to ensure that only the system can bind to it.
         @deprecated {@link android.telecom.ConnectionService}s should require
                 android.permission.BIND_TELECOM_CONNECTION_SERVICE instead.
         @SystemApi
         @hide -->
    <permission android:name="android.permission.BIND_CONNECTION_SERVICE"
        android:protectionLevel="signature|privileged" />

    <!-- Must be required by a {@link android.telecom.ConnectionService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature|privileged
    -->
    <permission android:name="android.permission.BIND_TELECOM_CONNECTION_SERVICE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to control the in-call experience.
         @hide -->
    <permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to receive STK related commands.
         @hide -->
    <permission android:name="android.permission.RECEIVE_STK_COMMANDS"
        android:protectionLevel="signature|privileged" />

      <!-- Allows an application to send EMBMS download intents to apps
           @hide -->
    <permission android:name="android.permission.SEND_EMBMS_INTENTS"
        android:protectionLevel="signature|privileged" />


    <!-- Allows internal management of the sensor framework
         @hide -->
    <permission android:name="android.permission.MANAGE_SENSORS"
        android:protectionLevel="signature" />

    <!-- Must be required by an ImsService to ensure that only the
         system can bind to it.
         <p>Protection level: signature|privileged|vendorPrivileged
         @SystemApi
         @hide
    -->
    <permission android:name="android.permission.BIND_IMS_SERVICE"
        android:protectionLevel="signature|privileged|vendorPrivileged" />

    <!-- Must be required by a telephony data service to ensure that only the
         system can bind to it.
         <p>Protection level: signature
         @SystemApi
         @hide
    -->
    <permission android:name="android.permission.BIND_TELEPHONY_DATA_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by a NetworkService to ensure that only the
         system can bind to it.
         <p>Protection level: signature
         @SystemApi
         @hide
    -->
    <permission android:name="android.permission.BIND_TELEPHONY_NETWORK_SERVICE"
                android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to manage embedded subscriptions (those on a eUICC)
         through EuiccManager APIs.
         <p>Protection level: signature|privileged|development
         @hide
    -->
    <permission android:name="android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS"
                android:protectionLevel="signature|privileged|development" />

    <!-- @SystemApi Must be required by an EuiccService to ensure that only the system can bind to
         it.
         <p>Protection level: signature
         @hide
    -->
    <permission android:name="android.permission.BIND_EUICC_SERVICE"
                android:protectionLevel="signature" />

    <!-- ================================== -->
    <!-- Permissions for sdcard interaction -->
    <!-- ================================== -->
    <eat-comment />

    <!-- @SystemApi @TestApi Allows an application to write to internal media storage
         @hide  -->
    <permission android:name="android.permission.WRITE_MEDIA_STORAGE"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to manage access to documents, usually as part
         of a document picker.
         <p>This permission should <em>only</em> be requested by the platform
         document management app.  This permission cannot be granted to
         third-party apps.
    -->
    <permission android:name="android.permission.MANAGE_DOCUMENTS"
        android:protectionLevel="signature|documenter" />

    <!-- @hide Allows an application to cache content.
         <p>Not for use by third-party applications.
    -->
    <permission android:name="android.permission.CACHE_CONTENT"
        android:protectionLevel="signature|documenter" />

    <!-- @SystemApi @hide
         Allows an application to aggressively allocate disk space.
         <p>Not for use by third-party applications.
    -->
    <permission android:name="android.permission.ALLOCATE_AGGRESSIVE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @hide
         Allows an application to use reserved disk space.
         <p>Not for use by third-party applications.  Should only be requested by
         apps that provide core system functionality, to ensure system stability
         when disk is otherwise completely full.
    -->
    <permission android:name="android.permission.USE_RESERVED_DISK"
        android:protectionLevel="signature|privileged" />

    <!-- ================================== -->
    <!-- Permissions for screenlock         -->
    <!-- ================================== -->
    <eat-comment />

    <!-- Allows applications to disable the keyguard if it is not secure.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.DISABLE_KEYGUARD"
        android:description="@string/permdesc_disableKeyguard"
        android:label="@string/permlab_disableKeyguard"
        android:protectionLevel="normal" />

    <!-- Allows an application to request the screen lock complexity and prompt users to update the
     screen lock to a certain complexity level.
     <p>Protection level: normal
    -->
    <permission android:name="android.permission.REQUEST_PASSWORD_COMPLEXITY"
                android:label="@string/permlab_requestPasswordComplexity"
                android:description="@string/permdesc_requestPasswordComplexity"
                android:protectionLevel="normal" />

    <!-- ================================== -->
    <!-- Permissions to access other installed applications  -->
    <!-- ================================== -->
    <eat-comment />

    <!-- @deprecated No longer enforced. -->
    <permission android:name="android.permission.GET_TASKS"
        android:label="@string/permlab_getTasks"
        android:description="@string/permdesc_getTasks"
        android:protectionLevel="normal" />

    <!-- New version of GET_TASKS that apps can request, since GET_TASKS doesn't really
         give access to task information.  We need this new one because there are
         many existing apps that use add libraries and such that have validation
         code to ensure the app has requested the GET_TASKS permission by seeing
         if it has been granted the permission...  if it hasn't, it kills the app
         with a message about being upset.  So we need to have it continue to look
         like the app is getting that permission, even though it will never be
         checked, and new privileged apps can now request this one for real access.
         @hide
         @SystemApi -->
    <permission android:name="android.permission.REAL_GET_TASKS"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to start a task from a ActivityManager#RecentTaskInfo.
         @hide -->
    <permission android:name="android.permission.START_TASKS_FROM_RECENTS"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @hide Allows an application to call APIs that allow it to do interactions
         across the users on the device, using singleton services and
         user-targeted broadcasts.  This permission is not available to
         third party applications. -->
    <permission android:name="android.permission.INTERACT_ACROSS_USERS"
        android:protectionLevel="signature|privileged|development" />

    <!-- @SystemApi Fuller form of {@link android.Manifest.permission#INTERACT_ACROSS_USERS}
         that removes restrictions on where broadcasts can be sent and allows other
         types of interactions
         @hide -->
    <permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL"
        android:protectionLevel="signature|installer" />

    <!-- @SystemApi Allows an application to start its own activities, but on a different profile
         associated with the user. For example, an application running on the main profile of a user
         can start an activity on a managed profile of that user.
         This permission is not available to third party applications.
         @hide -->
    <permission android:name="android.permission.INTERACT_ACROSS_PROFILES"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @hide Allows an application to call APIs that allow it to query and manage
         users on the device. This permission is not available to
         third party applications. -->
    <permission android:name="android.permission.MANAGE_USERS"
        android:protectionLevel="signature|privileged" />

    <!-- @hide Allows an application to create, remove users and get the list of
         users on the device. Applications holding this permission can only create restricted,
         guest, managed, demo, and ephemeral users. For creating other kind of users,
         {@link android.Manifest.permission#MANAGE_USERS} is needed.
         This permission is not available to third party applications. -->
    <permission android:name="android.permission.CREATE_USERS"
        android:protectionLevel="signature" />

    <!-- @hide Allows an application to set the profile owners and the device owner.
         This permission is not available to third party applications.-->
    <permission android:name="android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS"
        android:protectionLevel="signature"
        android:label="@string/permlab_manageProfileAndDeviceOwners"
        android:description="@string/permdesc_manageProfileAndDeviceOwners" />

    <!-- Allows an application to get full detailed information about
         recently running tasks, with full fidelity to the real state.
         @hide -->
    <permission android:name="android.permission.GET_DETAILED_TASKS"
        android:protectionLevel="signature" />

    <!-- Allows an application to change the Z-order of tasks.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.REORDER_TASKS"
        android:label="@string/permlab_reorderTasks"
        android:description="@string/permdesc_reorderTasks"
        android:protectionLevel="normal" />

    <!-- @SystemApi @TestApi @hide Allows an application to change to remove/kill tasks -->
    <permission android:name="android.permission.REMOVE_TASKS"
        android:protectionLevel="signature|documenter" />

    <!-- @SystemApi @TestApi @hide Allows an application to create/manage/remove stacks -->
    <permission android:name="android.permission.MANAGE_ACTIVITY_STACKS"
        android:protectionLevel="signature" />

    <!-- @SystemApi @TestApi @hide Allows an application to embed other activities -->
    <permission android:name="android.permission.ACTIVITY_EMBEDDING"
                android:protectionLevel="signature|privileged" />

    <!-- Allows an application to start any activity, regardless of permission
         protection or exported state.
         @hide -->
    <permission android:name="android.permission.START_ANY_ACTIVITY"
        android:protectionLevel="signature" />

    <!-- Allows an application to start activities from background
         @hide -->
    <permission android:name="android.permission.START_ACTIVITIES_FROM_BACKGROUND"
        android:protectionLevel="signature|privileged|vendorPrivileged|oem|verifier" />

    <!-- @SystemApi Must be required by activities that handle the intent action
         {@link Intent#ACTION_SEND_SHOW_SUSPENDED_APP_DETAILS}. This is for use by apps that
         hold {@link Manifest.permission#SUSPEND_APPS} to interact with the system.
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.SEND_SHOW_SUSPENDED_APP_DETAILS"
                android:protectionLevel="signature" />
    <uses-permission android:name="android.permission.SEND_SHOW_SUSPENDED_APP_DETAILS" />

    <!-- Allows an application to start an activity as another app, provided that app has been
         granted a permissionToken from the ActivityManagerService.
         @hide -->
    <permission android:name="android.permission.START_ACTIVITY_AS_CALLER"
        android:protectionLevel="signature" />

    <!-- @deprecated The {@link android.app.ActivityManager#restartPackage}
        API is no longer supported. -->
    <permission android:name="android.permission.RESTART_PACKAGES"
        android:label="@string/permlab_killBackgroundProcesses"
        android:description="@string/permdesc_killBackgroundProcesses"
        android:protectionLevel="normal" />

    <!-- Allows an application to call
        {@link android.app.ActivityManager#killBackgroundProcesses}.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"
        android:label="@string/permlab_killBackgroundProcesses"
        android:description="@string/permdesc_killBackgroundProcesses"
        android:protectionLevel="normal" />

    <!-- @SystemApi @hide Allows an application to query process states and current
         OOM adjustment scores.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.GET_PROCESS_STATE_AND_OOM_SCORE"
        android:protectionLevel="signature|privileged|development" />

    <!-- Allows use of PendingIntent.getIntent().
         @hide -->
    <permission android:name="android.permission.GET_INTENT_SENDER_INTENT"
        android:protectionLevel="signature" />

    <!-- ================================== -->
    <!-- Permissions affecting the display of other applications  -->
    <!-- ================================== -->
    <eat-comment />

    <!-- Allows an app to create windows using the type
         {@link 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.

         <p class="note"><strong>Note:</strong> 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
         {@link android.provider.Settings#ACTION_MANAGE_OVERLAY_PERMISSION}.
         The app can check whether it has this authorization by calling
         {@link android.provider.Settings#canDrawOverlays
         Settings.canDrawOverlays()}.
         <p>Protection level: signature|preinstalled|appop|pre23|development -->
    <permission android:name="android.permission.SYSTEM_ALERT_WINDOW"
        android:label="@string/permlab_systemAlertWindow"
        android:description="@string/permdesc_systemAlertWindow"
        android:protectionLevel="signature|preinstalled|appop|pre23|development" />

    <!-- @deprecated Use {@link android.Manifest.permission#REQUEST_COMPANION_RUN_IN_BACKGROUND}
         @hide
    -->
    <permission android:name="android.permission.RUN_IN_BACKGROUND"
        android:label="@string/permlab_runInBackground"
        android:description="@string/permdesc_runInBackground"
        android:protectionLevel="signature" />

    <!-- @deprecated Use
        {@link android.Manifest.permission#REQUEST_COMPANION_USE_DATA_IN_BACKGROUND}
         @hide
    -->
    <permission android:name="android.permission.USE_DATA_IN_BACKGROUND"
        android:label="@string/permlab_useDataInBackground"
        android:description="@string/permdesc_useDataInBackground"
        android:protectionLevel="signature" />

    <!-- @hide Allows an application to set display offsets for the screen.
         This permission is not available to third party applications. -->
    <permission android:name="android.permission.SET_DISPLAY_OFFSET"
        android:protectionLevel="signature|privileged" />

    <!-- Allows a companion app to run in the background.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.REQUEST_COMPANION_RUN_IN_BACKGROUND"
                android:label="@string/permlab_runInBackground"
                android:description="@string/permdesc_runInBackground"
                android:protectionLevel="normal" />

    <!-- Allows a companion app to use data in the background.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.REQUEST_COMPANION_USE_DATA_IN_BACKGROUND"
                android:label="@string/permlab_useDataInBackground"
                android:description="@string/permdesc_useDataInBackground"
                android:protectionLevel="normal" />


    <!-- ================================== -->
    <!-- Permissions affecting the system wallpaper -->
    <!-- ================================== -->
    <eat-comment />

    <!-- Allows applications to set the wallpaper.
         <p>Protection level: normal
     -->
    <permission android:name="android.permission.SET_WALLPAPER"
        android:label="@string/permlab_setWallpaper"
        android:description="@string/permdesc_setWallpaper"
        android:protectionLevel="normal" />

    <!-- Allows applications to set the wallpaper hints.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.SET_WALLPAPER_HINTS"
        android:label="@string/permlab_setWallpaperHints"
        android:description="@string/permdesc_setWallpaperHints"
        android:protectionLevel="normal" />

    <!-- Allow the app to read the system wallpaper image without
        holding the READ_EXTERNAL_STORAGE permission.
        <p>Not for use by third-party applications.
        @hide
        @SystemApi
    -->
    <permission android:name="android.permission.READ_WALLPAPER_INTERNAL"
        android:protectionLevel="signature|privileged" />

    <!-- ============================================ -->
    <!-- Permissions for changing the system clock -->
    <!-- ============================================ -->
    <eat-comment />

    <!-- Allows applications to set the system time.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.SET_TIME"
        android:protectionLevel="signature|privileged" />

    <!-- Allows applications to set the system time zone.
         <p>Not for use by third-party applications.
    -->
    <permission android:name="android.permission.SET_TIME_ZONE"
        android:label="@string/permlab_setTimeZone"
        android:description="@string/permdesc_setTimeZone"
        android:protectionLevel="signature|privileged" />

    <!-- ==================================================== -->
    <!-- Permissions related to changing status bar   -->
    <!-- ==================================================== -->
    <eat-comment />

    <!-- Allows an application to expand or collapse the status bar.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.EXPAND_STATUS_BAR"
        android:label="@string/permlab_expandStatusBar"
        android:description="@string/permdesc_expandStatusBar"
        android:protectionLevel="normal" />

    <!-- ============================================================== -->
    <!-- Permissions related to adding/removing shortcuts from Launcher -->
    <!-- ============================================================== -->
    <eat-comment />

    <!-- Allows an application to install a shortcut in Launcher.
         <p>In Android O (API level 26) and higher, the <code>INSTALL_SHORTCUT</code> 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
         {@link android.content.pm.ShortcutManager#requestPinShortcut requestPinShortcut()}
         method from the {@link android.content.pm.ShortcutManager} class.
         <p>Protection level: normal
    -->
    <permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"
        android:label="@string/permlab_install_shortcut"
        android:description="@string/permdesc_install_shortcut"
        android:protectionLevel="normal"/>

    <!-- <p class="caution"><strong>Don't use this permission in your app.</strong><br>This
         permission is no longer supported.
    -->
    <permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT"
        android:label="@string/permlab_uninstall_shortcut"
        android:description="@string/permdesc_uninstall_shortcut"
        android:protectionLevel="normal"/>

    <!-- ==================================================== -->
    <!-- Permissions related to accessing sync settings   -->
    <!-- ==================================================== -->
    <eat-comment />

    <!-- Allows applications to read the sync settings.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.READ_SYNC_SETTINGS"
        android:description="@string/permdesc_readSyncSettings"
        android:label="@string/permlab_readSyncSettings"
        android:protectionLevel="normal" />

    <!-- Allows applications to write the sync settings.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.WRITE_SYNC_SETTINGS"
        android:description="@string/permdesc_writeSyncSettings"
        android:label="@string/permlab_writeSyncSettings"
        android:protectionLevel="normal" />

    <!-- Allows applications to read the sync stats.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.READ_SYNC_STATS"
        android:description="@string/permdesc_readSyncStats"
        android:label="@string/permlab_readSyncStats"
        android:protectionLevel="normal" />

    <!-- ============================================ -->
    <!-- Permissions for low-level system interaction -->
    <!-- ============================================ -->
    <eat-comment />

    <!-- @SystemApi @hide Change the screen compatibility mode of applications -->
    <permission android:name="android.permission.SET_SCREEN_COMPATIBILITY"
        android:protectionLevel="signature" />

    <!-- Allows an application to modify the current configuration, such
         as locale. -->
    <permission android:name="android.permission.CHANGE_CONFIGURATION"
        android:protectionLevel="signature|privileged|development" />

    <!-- Allows an application to read or write the system settings.

        <p class="note"><strong>Note:</strong> 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
        {@link android.provider.Settings#ACTION_MANAGE_WRITE_SETTINGS}. The app
        can check whether it has this authorization by calling {@link
        android.provider.Settings.System#canWrite Settings.System.canWrite()}.

        <p>Protection level: signature|preinstalled|appop|pre23
    -->
    <permission android:name="android.permission.WRITE_SETTINGS"
        android:label="@string/permlab_writeSettings"
        android:description="@string/permdesc_writeSettings"
        android:protectionLevel="signature|preinstalled|appop|pre23" />

    <!-- Allows an application to modify the Google service map.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.WRITE_GSERVICES"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @TestApi @hide Allows an application to modify config settings.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.WRITE_DEVICE_CONFIG"
        android:protectionLevel="signature|verifier|configurator"/>

    <!-- @SystemApi @hide Allows an application to read config settings.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.READ_DEVICE_CONFIG"
        android:protectionLevel="signature|preinstalled" />

    <!-- @SystemApi @TestApi Allows an application to call
        {@link android.app.ActivityManager#forceStopPackage}.
        @hide -->
    <permission android:name="android.permission.FORCE_STOP_PACKAGES"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @hide Allows an application to retrieve the content of the active window
         An active window is the window that has fired an accessibility event. -->
    <permission android:name="android.permission.RETRIEVE_WINDOW_CONTENT"
        android:protectionLevel="signature|privileged" />

    <!-- Modify the global animation scaling factor.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.SET_ANIMATION_SCALE"
        android:protectionLevel="signature|privileged|development" />

    <!-- @deprecated This functionality will be removed in the future; please do
         not use. Allow an application to make its activities persistent. -->
    <permission android:name="android.permission.PERSISTENT_ACTIVITY"
        android:label="@string/permlab_persistentActivity"
        android:description="@string/permdesc_persistentActivity"
        android:protectionLevel="normal" />

    <!-- Allows an application to find out the space used by any package.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.GET_PACKAGE_SIZE"
        android:label="@string/permlab_getPackageSize"
        android:description="@string/permdesc_getPackageSize"
        android:protectionLevel="normal" />

    <!-- @deprecated No longer useful, see
         {@link android.content.pm.PackageManager#addPackageToPreferred}
         for details. -->
    <permission android:name="android.permission.SET_PREFERRED_APPLICATIONS"
        android:protectionLevel="signature|installer|verifier" />

    <!-- Allows an application to receive the
         {@link 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.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"
        android:label="@string/permlab_receiveBootCompleted"
        android:description="@string/permdesc_receiveBootCompleted"
        android:protectionLevel="normal" />

    <!-- 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.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.BROADCAST_STICKY"
        android:label="@string/permlab_broadcastSticky"
        android:description="@string/permdesc_broadcastSticky"
        android:protectionLevel="normal" />

    <!-- Allows mounting and unmounting file systems for removable storage.
    <p>Not for use by third-party applications.-->
    <permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
        android:protectionLevel="signature|privileged" />

    <!-- Allows formatting file systems for removable storage.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.MOUNT_FORMAT_FILESYSTEMS"
        android:protectionLevel="signature|privileged" />

    <!-- @hide -->
    <permission android:name="android.permission.STORAGE_INTERNAL"
        android:protectionLevel="signature" />

    <!-- Allows access to ASEC non-destructive API calls
         @hide  -->
    <permission android:name="android.permission.ASEC_ACCESS"
        android:protectionLevel="signature" />

    <!-- Allows creation of ASEC volumes
         @hide  -->
    <permission android:name="android.permission.ASEC_CREATE"
        android:protectionLevel="signature" />

    <!-- Allows destruction of ASEC volumes
         @hide  -->
    <permission android:name="android.permission.ASEC_DESTROY"
        android:protectionLevel="signature" />

    <!-- Allows mount / unmount of ASEC volumes
         @hide  -->
    <permission android:name="android.permission.ASEC_MOUNT_UNMOUNT"
        android:protectionLevel="signature" />

    <!-- Allows rename of ASEC volumes
         @hide  -->
    <permission android:name="android.permission.ASEC_RENAME"
        android:protectionLevel="signature" />

    <!-- Allows applications to write the apn settings and read sensitive fields of
         an existing apn settings like user and password.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.WRITE_APN_SETTINGS"
        android:protectionLevel="signature|privileged" />

    <!-- Allows applications to change network connectivity state.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.CHANGE_NETWORK_STATE"
        android:description="@string/permdesc_changeNetworkState"
        android:label="@string/permlab_changeNetworkState"
        android:protectionLevel="normal" />

    <!-- Allows an application to clear the caches of all installed
         applications on the device.
         <p>Protection level: signature|privileged
    -->
    <permission android:name="android.permission.CLEAR_APP_CACHE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to use any media decoder when decoding for playback
         @hide -->
    <permission android:name="android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to install and/or uninstall CA certificates on
         behalf of the user.
         @hide -->
    <permission android:name="android.permission.MANAGE_CA_CERTIFICATES"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to do certain operations needed for
         interacting with the recovery (system update) system.
         @hide -->
    <permission android:name="android.permission.RECOVERY"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to read system update info.
         @hide -->
    <permission android:name="android.permission.READ_SYSTEM_UPDATE_INFO"
        android:protectionLevel="signature" />

    <!-- Allows the system to bind to an application's task services
         @hide -->
    <permission android:name="android.permission.BIND_JOB_SERVICE"
        android:protectionLevel="signature" />
    <uses-permission android:name="android.permission.BIND_JOB_SERVICE"/>

    <!-- Allows an application to initiate configuration updates
         <p>An application requesting this permission is responsible for
         verifying the source and integrity of any update before passing
         it off to the various individual installer components
         @hide -->
    <permission android:name="android.permission.UPDATE_CONFIG"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to query the current time zone rules state
         on device.
         @SystemApi @hide -->
    <permission android:name="android.permission.QUERY_TIME_ZONE_RULES"
                android:protectionLevel="signature|privileged" />

    <!-- Allows a time zone rule updater application to request
         the system installs / uninstalls timezone rules.
         <p>An application requesting this permission is responsible for
         verifying the source and integrity of the update before passing
         it off to the installer components.
         @SystemApi @hide -->
    <permission android:name="android.permission.UPDATE_TIME_ZONE_RULES"
        android:protectionLevel="signature|privileged" />

    <!-- Must be required by a time zone rule updater application,
         to ensure that only the system can trigger it.
         @hide -->
    <permission android:name="android.permission.TRIGGER_TIME_ZONE_RULES_CHECK"
        android:protectionLevel="signature" />
    <uses-permission android:name="android.permission.TRIGGER_TIME_ZONE_RULES_CHECK"/>

    <!-- Allows the system to reset throttling in shortcut manager.
         @hide -->
    <permission android:name="android.permission.RESET_SHORTCUT_MANAGER_THROTTLING"
        android:protectionLevel="signature" />

    <!-- Allows the system to bind to the discovered Network Recommendation Service.
         @SystemApi @hide -->
    <permission android:name="android.permission.BIND_NETWORK_RECOMMENDATION_SERVICE"
        android:protectionLevel="signature" />
    <uses-permission android:name="android.permission.BIND_NETWORK_RECOMMENDATION_SERVICE"/>

    <!-- Allows an application to enable, disable and change priority of
         runtime resource overlays.
         @hide -->
    <permission android:name="android.permission.CHANGE_OVERLAY_PACKAGES"
        android:protectionLevel="signature|privileged" />

    <!-- ========================================= -->
    <!-- Permissions for special development tools -->
    <!-- ========================================= -->
    <eat-comment />

    <!-- Allows an application to read or write the secure system settings.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.WRITE_SECURE_SETTINGS"
        android:protectionLevel="signature|privileged|development" />

    <!-- Allows an application to retrieve state dump information from system services.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.DUMP"
        android:protectionLevel="signature|privileged|development" />

    <!-- Allows an application to read the low-level system log files.
    <p>Not for use by third-party applications, because
    Log entries can contain the user's private information. -->
    <permission android:name="android.permission.READ_LOGS"
        android:protectionLevel="signature|privileged|development" />

    <!-- Configure an application for debugging.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.SET_DEBUG_APP"
        android:protectionLevel="signature|privileged|development" />

    <!-- Allows an application to set the maximum number of (not needed)
         application processes that can be running.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.SET_PROCESS_LIMIT"
        android:protectionLevel="signature|privileged|development" />

    <!-- Allows an application to control whether activities are immediately
         finished when put in the background.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.SET_ALWAYS_FINISH"
        android:protectionLevel="signature|privileged|development" />

    <!-- Allow an application to request that a signal be sent to all persistent processes.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.SIGNAL_PERSISTENT_PROCESSES"
        android:protectionLevel="signature|privileged|development" />

    <!-- @hide @SystemApi @TestApi
         Allow an application to approve incident and bug reports to be
         shared off-device.  There can be only one application installed on the
         device with this permission, and since this is a privileged permission, it
         must be in priv-app.
        <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.APPROVE_INCIDENT_REPORTS"
        android:protectionLevel="signature|incidentReportApprover" />

    <!-- @hide Allow an application to approve an incident or bug report approval from
        the system. -->
    <permission android:name="android.permission.REQUEST_INCIDENT_REPORT_APPROVAL"
        android:protectionLevel="signature|privileged" />

    <!-- ==================================== -->
    <!-- Private permissions                  -->
    <!-- ==================================== -->
    <eat-comment />

    <!-- Allows access to the list of accounts in the Accounts Service. -->
    <permission android:name="android.permission.GET_ACCOUNTS_PRIVILEGED"
        android:protectionLevel="signature|privileged" />

    <!-- Allows but does not guarantee access to user passwords at the conclusion of add account
    @hide -->
    <permission android:name="android.permission.GET_PASSWORD"
        android:protectionLevel="signature" />

    <!-- Allows applications to RW to diagnostic resources.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.DIAGNOSTIC"
        android:protectionLevel="signature" />

    <!-- Allows an application to open, close, or disable the status bar
         and its icons.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.STATUS_BAR"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to be the status bar.  Currently used only by SystemUI.apk
    @hide -->
    <permission android:name="android.permission.STATUS_BAR_SERVICE"
        android:protectionLevel="signature" />

    <!-- Allows an application to bind to third party quick settings tiles.
         <p>Should only be requested by the System, should be required by
         TileService declarations.-->
    <permission android:name="android.permission.BIND_QUICK_SETTINGS_TILE"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to force a BACK operation on whatever is the
         top activity.
         <p>Not for use by third-party applications.
         @hide
    -->
    <permission android:name="android.permission.FORCE_BACK"
        android:protectionLevel="signature" />

    <!-- Allows an application to update device statistics.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.UPDATE_DEVICE_STATS"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @hide Allows an application to collect application operation statistics.
         Not for use by third party apps. -->
    <permission android:name="android.permission.GET_APP_OPS_STATS"
        android:protectionLevel="signature|privileged|development" />

    <!-- @SystemApi Allows an application to update application operation statistics. Not for
         use by third party apps.
         @hide -->
    <permission android:name="android.permission.UPDATE_APP_OPS_STATS"
        android:protectionLevel="signature|privileged|installer" />

    <!-- @SystemApi Allows an application to update the user app op restrictions.
         Not for use by third party apps.
         @hide -->
    <permission android:name="android.permission.MANAGE_APP_OPS_RESTRICTIONS"
        android:protectionLevel="signature|installer" />

    <!-- Allows an application to update the user app op modes.
         Not for use by third party apps.
         @hide -->
    <permission android:name="android.permission.MANAGE_APP_OPS_MODES"
        android:protectionLevel="signature|installer|verifier" />

    <!-- @SystemApi Allows an application to open windows that are for use by parts
         of the system user interface.
         <p>Not for use by third-party applications.
         @hide
    -->
    <permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to use
         {@link android.view.WindowManager.LayoutsParams#SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS}
         to hide non-system-overlay windows.
         <p>Not for use by third-party applications.
         @hide
    -->
    <permission android:name="android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS"
                android:protectionLevel="signature|installer" />

    <!-- @SystemApi Allows an application to manage (create, destroy,
         Z-order) application tokens in the window manager.
         <p>Not for use by third-party applications.
         @hide
    -->
    <permission android:name="android.permission.MANAGE_APP_TOKENS"
        android:protectionLevel="signature" />

    <!-- Allows System UI to register listeners for events from Window Manager.
         @hide -->
    <permission android:name="android.permission.REGISTER_WINDOW_MANAGER_LISTENERS"
        android:protectionLevel="signature" />

    <!-- @hide Allows the application to temporarily freeze the screen for a
         full-screen transition. -->
    <permission android:name="android.permission.FREEZE_SCREEN"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to inject user events (keys, touch, trackball)
         into the event stream and deliver them to ANY window.  Without this
         permission, you can only deliver events to windows in your own process.
         <p>Not for use by third-party applications.
         @hide
    -->
    <permission android:name="android.permission.INJECT_EVENTS"
        android:protectionLevel="signature" />

    <!-- @hide Allows an application to register an input filter which filters the stream
         of user events (keys, touch, trackball) before they are dispatched to any window. -->
    <permission android:name="android.permission.FILTER_EVENTS"
        android:protectionLevel="signature" />

    <!-- @hide Allows an application to retrieve the window token from the accessibility manager. -->
    <permission android:name="android.permission.RETRIEVE_WINDOW_TOKEN"
        android:protectionLevel="signature" />

    <!-- @hide Allows an application to modify accessibility information from another app. -->
    <permission android:name="android.permission.MODIFY_ACCESSIBILITY_DATA"
                android:protectionLevel="signature" />

    <!-- @hide Allows an application to change the accessibility volume. -->
    <permission android:name="android.permission.CHANGE_ACCESSIBILITY_VOLUME"
                android:protectionLevel="signature" />

    <!-- @hide Allows an application to collect frame statistics -->
    <permission android:name="android.permission.FRAME_STATS"
         android:protectionLevel="signature" />

    <!-- @hide Allows an application to temporary enable accessibility on the device. -->
    <permission android:name="android.permission.TEMPORARY_ENABLE_ACCESSIBILITY"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to launch detail settings activity of a particular
         accessibility service.
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.OPEN_ACCESSIBILITY_DETAILS_SETTINGS"
        android:protectionLevel="signature|installer" />

    <!-- @SystemApi Allows an application to watch and control how activities are
         started globally in the system.  Only for is in debugging
         (usually the monkey command).
         <p>Not for use by third-party applications.
         @hide
    -->
    <permission android:name="android.permission.SET_ACTIVITY_WATCHER"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to call the activity manager shutdown() API
         to put the higher-level system there into a shutdown state.
         @hide -->
    <permission android:name="android.permission.SHUTDOWN"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to tell the activity manager to temporarily
         stop application switches, putting it into a special mode that
         prevents applications from immediately switching away from some
         critical UI such as the home screen.
         @hide -->
    <permission android:name="android.permission.STOP_APP_SWITCHES"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to retrieve private information about
         the current top activity, such as any assist context it can provide.
         <p>Not for use by third-party applications.
         @hide
    -->
    <permission android:name="android.permission.GET_TOP_ACTIVITY_INFO"
        android:protectionLevel="signature" />

    <!-- Allows an application to retrieve the current state of keys and
         switches.
         <p>Not for use by third-party applications.
         @deprecated The API that used this permission has been removed. -->
    <permission android:name="android.permission.READ_INPUT_STATE"
        android:protectionLevel="signature" />

    <!-- Must be required by an {@link android.inputmethodservice.InputMethodService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_INPUT_METHOD"
        android:protectionLevel="signature" />

    <!-- Must be required by an {@link android.media.midi.MidiDeviceService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_MIDI_DEVICE_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by an {@link android.accessibilityservice.AccessibilityService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by a {@link android.printservice.PrintService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_PRINT_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by a {@link android.printservice.recommendation.RecommendationService},
     to ensure that only the system can bind to it.
     @hide
     @SystemApi
     <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_PRINT_RECOMMENDATION_SERVICE"
            android:protectionLevel="signature" />

    <!-- Allows applications to get the installed and enabled print services.
         @hide
         @SystemApi
         <p>Protection level: signature|preinstalled
    -->
    <permission android:name="android.permission.READ_PRINT_SERVICES"
        android:protectionLevel="signature|preinstalled" />

    <!-- Allows applications to get the currently recommended print services for printers.
         @hide
         @SystemApi
         <p>Protection level: signature|preinstalled
    -->
    <permission android:name="android.permission.READ_PRINT_SERVICE_RECOMMENDATIONS"
        android:protectionLevel="signature|preinstalled" />

    <!-- Must be required by a {@link android.nfc.cardemulation.HostApduService}
         or {@link android.nfc.cardemulation.OffHostApduService} to ensure that only
         the system can bind to it.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_NFC_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by the PrintSpooler to ensure that only the system can bind to it.
         @hide -->
    <permission android:name="android.permission.BIND_PRINT_SPOOLER_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by the CompanionDeviceManager to ensure that only the system can bind to it.
         @hide -->
    <permission android:name="android.permission.BIND_COMPANION_DEVICE_MANAGER_SERVICE"
        android:protectionLevel="signature" />

    <!-- @SystemApi Must be required by the RuntimePermissionPresenterService to ensure
         that only the system can bind to it.
         @hide -->
    <permission android:name="android.permission.BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by a TextService (e.g. SpellCheckerService)
         to ensure that only the system can bind to it.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_TEXT_SERVICE"
        android:protectionLevel="signature" />

    <!-- @SystemApi Must be required by a AttentionService
         to ensure that only the system can bind to it.
         <p>Protection level: signature
         @hide
    -->
    <permission android:name="android.permission.BIND_ATTENTION_SERVICE"
                android:protectionLevel="signature" />
    <uses-permission android:name="android.permission.BIND_ATTENTION_SERVICE" />

    <!-- Must be required by a {@link android.net.VpnService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_VPN_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by a {@link android.service.wallpaper.WallpaperService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature|privileged
    -->
    <permission android:name="android.permission.BIND_WALLPAPER"
        android:protectionLevel="signature|privileged" />

    <!-- Must be required by a {@link android.service.voice.VoiceInteractionService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_VOICE_INTERACTION"
        android:protectionLevel="signature" />

    <!-- Must be required by a {@link android.service.autofill.AutofillService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_AUTOFILL_SERVICE"
        android:protectionLevel="signature" />

   <!-- Alternative version of android.permission.BIND_AUTOFILL_FIELD_CLASSIFICATION_SERVICE.
        This permission was renamed during the O previews but it was supported on the final O
        release, so we need to carry it over.
        <p>Protection level: signature
        @hide
    -->
    <permission android:name="android.permission.BIND_AUTOFILL"
        android:protectionLevel="signature" />

    <!-- Must be required by an {@link android.service.autofill.AutofillFieldClassificationService}
         to ensure that only the system can bind to it.
         @hide This is not a third-party API (intended for OEMs and system apps).
    -->
    <permission android:name="android.permission.BIND_AUTOFILL_FIELD_CLASSIFICATION_SERVICE"
                android:protectionLevel="signature" />

    <!-- Must be required by a android.service.textclassifier.TextClassifierService,
         to ensure that only the system can bind to it.
         @SystemApi @hide This is not a third-party API (intended for OEMs and system apps).
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_TEXTCLASSIFIER_SERVICE"
                android:protectionLevel="signature" />

    <!-- Must be required by a android.service.contentcapture.ContentCaptureService,
         to ensure that only the system can bind to it.
         @SystemApi @hide This is not a third-party API (intended for OEMs and system apps).
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_CONTENT_CAPTURE_SERVICE"
                android:protectionLevel="signature" />

    <!-- Must be required by a android.service.contentsuggestions.ContentSuggestionsService,
         to ensure that only the system can bind to it.
         @SystemApi @hide This is not a third-party API (intended for OEMs and system apps).
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_CONTENT_SUGGESTIONS_SERVICE"
                android:protectionLevel="signature" />

    <!-- Must be required by a android.service.autofill.augmented.AugmentedAutofillService,
         to ensure that only the system can bind to it.
         @SystemApi @hide This is not a third-party API (intended for OEMs and system apps).
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_AUGMENTED_AUTOFILL_SERVICE"
                android:protectionLevel="signature" />

    <!-- Must be required by hotword enrollment application,
         to ensure that only the system can interact with it.
         @hide <p>Not for use by third-party applications.</p> -->
    <permission android:name="android.permission.MANAGE_VOICE_KEYPHRASES"
        android:protectionLevel="signature|privileged" />

    <!-- Must be required by a {@link com.android.media.remotedisplay.RemoteDisplayProvider},
         to ensure that only the system can bind to it.
         @hide -->
    <permission android:name="android.permission.BIND_REMOTE_DISPLAY"
        android:protectionLevel="signature" />

    <!-- Must be required by a {@link android.media.tv.TvInputService}
         to ensure that only the system can bind to it.
         <p>Protection level: signature|privileged
    -->
    <permission android:name="android.permission.BIND_TV_INPUT"
        android:protectionLevel="signature|privileged" />

    <!-- Must be required by an {@link android.service.sms.FinancialSmsService}
         to ensure that only the system can bind to it.
         @hide This is not a third-party API (intended for OEMs and system apps).
    -->
    <permission android:name="android.permission.BIND_FINANCIAL_SMS_SERVICE"
                android:protectionLevel="signature" />

    <!-- @SystemApi
         Must be required by a {@link com.android.media.tv.remoteprovider.TvRemoteProvider}
         to ensure that only the system can bind to it.
         <p>Protection level: signature|privileged
         <p>Not for use by third-party applications. </p>
         @hide  -->
    <permission android:name="android.permission.BIND_TV_REMOTE_SERVICE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi
         Must be required for a virtual remote controller for TV.
         <p>Protection level: signature|privileged
         <p>Not for use by third-party applications. </p>
         @hide  -->
    <permission android:name="android.permission.TV_VIRTUAL_REMOTE_CONTROLLER"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to change HDMI CEC active source.
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.CHANGE_HDMI_CEC_ACTIVE_SOURCE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to modify parental controls
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.MODIFY_PARENTAL_CONTROLS"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to read TvContentRatingSystemInfo
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.READ_CONTENT_RATING_SYSTEMS"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to notify TV inputs by sending broadcasts.
         <p>Protection level: signature|privileged
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.NOTIFY_TV_INPUTS"
         android:protectionLevel="signature|privileged" />

    <!-- Must be required by a {@link android.media.routing.MediaRouteService}
         to ensure that only the system can interact with it.
         @hide -->
    <permission android:name="android.permission.BIND_ROUTE_PROVIDER"
        android:protectionLevel="signature" />

    <!-- Must be required by device administration receiver, to ensure that only the
         system can interact with it.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_DEVICE_ADMIN"
        android:protectionLevel="signature" />

    <!-- @SystemApi Required to add or remove another application as a device admin.
         <p>Not for use by third-party applications.
         @hide
         @removed -->
    <permission android:name="android.permission.MANAGE_DEVICE_ADMINS"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an app to reset the device password.
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.RESET_PASSWORD"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an app to lock the device.
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.LOCK_DEVICE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows low-level access to setting the orientation (actually
         rotation) of the screen.
         <p>Not for use by third-party applications.
         @hide
    -->
    <permission android:name="android.permission.SET_ORIENTATION"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows low-level access to setting the pointer speed.
         <p>Not for use by third-party applications.
         @hide
    -->
    <permission android:name="android.permission.SET_POINTER_SPEED"
        android:protectionLevel="signature" />

    <!-- Allows low-level access to setting input device calibration.
         <p>Not for use by normal applications.
         @hide -->
    <permission android:name="android.permission.SET_INPUT_CALIBRATION"
        android:protectionLevel="signature" />

    <!-- Allows low-level access to setting the keyboard layout.
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.SET_KEYBOARD_LAYOUT"
        android:protectionLevel="signature" />

    <!-- Allows an application to query tablet mode state and monitor changes
         in it.
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.TABLET_MODE"
        android:protectionLevel="signature" />

    <!-- Allows an application to request installing packages. Apps
         targeting APIs greater than 25 must hold this permission in
         order to use {@link android.content.Intent#ACTION_INSTALL_PACKAGE}.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"
        android:label="@string/permlab_requestInstallPackages"
        android:description="@string/permdesc_requestInstallPackages"
        android:protectionLevel="signature|appop" />

    <!-- Allows an application to request deleting packages. Apps
         targeting APIs {@link android.os.Build.VERSION_CODES#P} or greater must hold this
         permission in order to use {@link android.content.Intent#ACTION_UNINSTALL_PACKAGE} or
         {@link android.content.pm.PackageInstaller#uninstall}.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.REQUEST_DELETE_PACKAGES"
        android:label="@string/permlab_requestDeletePackages"
        android:description="@string/permdesc_requestDeletePackages"
        android:protectionLevel="normal" />

    <!-- Allows an application to install packages.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.INSTALL_PACKAGES"
      android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to install self updates. This is a limited version
         of {@link android.Manifest.permission#INSTALL_PACKAGES}.
        <p>Not for use by third-party applications.
        @hide
    -->
    <permission android:name="android.permission.INSTALL_SELF_UPDATES"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to install updates. This is a limited version
         of {@link android.Manifest.permission#INSTALL_PACKAGES}.
        <p>Not for use by third-party applications.
        @hide
    -->
    <permission android:name="android.permission.INSTALL_PACKAGE_UPDATES"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to install existing system packages. This is a limited
         version of {@link android.Manifest.permission#INSTALL_PACKAGES}.
         <p>Not for use by third-party applications.
         TODO(b/80204953): remove this permission once we have a long-term solution.
         @hide
    -->
    <permission android:name="com.android.permission.INSTALL_EXISTING_PACKAGES"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @TestApi Allows an application to clear user data.
         <p>Not for use by third-party applications
         @hide
    -->
    <permission android:name="android.permission.CLEAR_APP_USER_DATA"
        android:protectionLevel="signature|installer" />

    <!-- @hide Allows an application to get the URI permissions
         granted to another application.
         <p>Not for use by third-party applications
    -->
    <permission android:name="android.permission.GET_APP_GRANTED_URI_PERMISSIONS"
        android:protectionLevel="signature" />

    <!-- @hide Allows an application to clear the URI permissions
         granted to another application.
         <p>Not for use by third-party applications
    -->
    <permission
        android:name="android.permission.CLEAR_APP_GRANTED_URI_PERMISSIONS"
        android:protectionLevel="signature" />

    <!-- @hide
         Allows an application to change the status of Scoped Access Directory requests granted or
         rejected by the user.
         <p>This permission should <em>only</em> be requested by the platform
         settings app.  This permission cannot be granted to third-party apps.
         <p>Protection level: signature
    -->
    <permission
         android:name="android.permission.MANAGE_SCOPED_ACCESS_DIRECTORY_PERMISSIONS"
         android:protectionLevel="signature" />

    <!-- @hide
         Allows an application to change the status of a persistable URI permission granted
         to another application.
         <p>This permission should <em>only</em> be requested by the platform
         settings app.  This permission cannot be granted to third-party apps.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.FORCE_PERSISTABLE_URI_PERMISSIONS"
        android:protectionLevel="signature" />

    <!-- 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. -->
    <permission android:name="android.permission.DELETE_CACHE_FILES"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to delete cache files.
         @hide -->
    <permission android:name="android.permission.INTERNAL_DELETE_CACHE_FILES"
        android:protectionLevel="signature" />

    <!-- Allows an application to delete packages.
         <p>Not for use by third-party applications.
         <p>Starting in {@link 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. -->
    <permission android:name="android.permission.DELETE_PACKAGES"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to move location of installed package.
         @hide -->
    <permission android:name="android.permission.MOVE_PACKAGE"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to change whether an application component (other than its own) is
         enabled or not.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to grant specific permissions.
         @hide -->
    <permission android:name="android.permission.GRANT_RUNTIME_PERMISSIONS"
        android:protectionLevel="signature|installer|verifier" />

    <!-- @SystemApi Allows an app that has this permission and the permissions to install packages
         to request certain runtime permissions to be granted at installation.
         @hide -->
    <permission android:name="android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS"
        android:protectionLevel="signature|installer|verifier" />

    <!-- @SystemApi Allows an application to revoke specific permissions.
        @hide -->
    <permission android:name="android.permission.REVOKE_RUNTIME_PERMISSIONS"
         android:protectionLevel="signature|installer|verifier" />

    <!-- @SystemApi Allows the system to read runtime permission state.
        @hide -->
    <permission android:name="android.permission.GET_RUNTIME_PERMISSIONS"
                android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to change policy_fixed permissions.
    @hide -->
    <permission android:name="android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY"
                android:protectionLevel="signature|installer" />

    <!-- @SystemApi Allows an application to whitelist restricted permissions
         on any of the whitelists.
    @hide -->
    <permission android:name="android.permission.WHITELIST_RESTRICTED_PERMISSIONS"
                android:protectionLevel="signature|installer" />

    <!-- @hide Allows an application to observe permission changes. -->
    <permission android:name="android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to manage the holders of a role.
         @hide -->
    <permission android:name="android.permission.MANAGE_ROLE_HOLDERS"
                android:protectionLevel="signature|installer" />

    <!-- @SystemApi Allows an application to observe role holder changes.
         @hide -->
    <permission android:name="android.permission.OBSERVE_ROLE_HOLDERS"
                android:protectionLevel="signature|installer" />

    <!-- @SystemApi Allows an application to use SurfaceFlinger's low level features.
         <p>Not for use by third-party applications.
         @hide
    -->
    <permission android:name="android.permission.ACCESS_SURFACE_FLINGER"
        android:protectionLevel="signature" />

    <!-- Allows an application to take screen shots and more generally
         get access to the frame buffer data.
         <p>Not for use by third-party applications.
          @hide
          @removed -->
    <permission android:name="android.permission.READ_FRAME_BUFFER"
        android:protectionLevel="signature" />

    <!-- Allows an application to use InputFlinger's low level features.
         @hide -->
    <permission android:name="android.permission.ACCESS_INPUT_FLINGER"
        android:protectionLevel="signature" />

    <!-- Allows an application to disable/enable input devices.
         Could be used to prevent unwanted touch events
         on a touchscreen, for example during swimming or rain.
         @hide -->
    <permission android:name="android.permission.DISABLE_INPUT_DEVICE"
        android:protectionLevel="signature" />

    <!-- Allows an application to configure and connect to Wifi displays
         @hide -->
    <permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY"
        android:protectionLevel="signature" />

    <!-- Allows an application to control low-level features of Wifi displays
         such as opening an RTSP socket.  This permission should only be used
         by the display manager.
         @hide -->
    <permission android:name="android.permission.CONTROL_WIFI_DISPLAY"
        android:protectionLevel="signature" />

    <!-- Allows an application to control the color modes set for displays system-wide.
         <p>Not for use by third-party applications.</p>
         @hide -->
    <permission android:name="android.permission.CONFIGURE_DISPLAY_COLOR_MODE"
        android:protectionLevel="signature" />

    <!-- Allows an application to control the color saturation of the display.
         @hide
         @SystemApi -->
    <permission android:name="android.permission.CONTROL_DISPLAY_SATURATION"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to control display color transformations.
         <p>Not for use by third-party applications.</p>
         @hide
         @SystemApi -->
    <permission android:name="android.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to collect usage infomation about brightness slider changes.
         <p>Not for use by third-party applications.</p>
         @hide
         @SystemApi
         @TestApi -->
    <permission android:name="android.permission.BRIGHTNESS_SLIDER_USAGE"
        android:protectionLevel="signature|privileged|development" />

    <!-- Allows an application to collect ambient light stats.
         <p>Not for use by third party applications.</p>
         @hide
         @SystemApi -->
    <permission android:name="android.permission.ACCESS_AMBIENT_LIGHT_STATS"
        android:protectionLevel="signature|privileged|development" />

    <!-- Allows an application to modify the display brightness configuration
         @hide
         @SystemApi
         @TestApi -->
    <permission android:name="android.permission.CONFIGURE_DISPLAY_BRIGHTNESS"
        android:protectionLevel="signature|privileged|development" />

    <!-- Allows an application to control the system's display brightness
         @hide -->
    <permission android:name="android.permission.CONTROL_DISPLAY_BRIGHTNESS"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to control VPN.
         <p>Not for use by third-party applications.</p>
         @hide -->
    <permission android:name="android.permission.CONTROL_VPN"
        android:protectionLevel="signature|privileged" />
    <uses-permission android:name="android.permission.CONTROL_VPN" />

    <!-- Allows an application to access and modify always-on VPN configuration.
         <p>Not for use by third-party or privileged applications.
         @hide -->
    <permission android:name="android.permission.CONTROL_ALWAYS_ON_VPN"
        android:protectionLevel="signature" />

    <!-- Allows an application to capture audio output.
         Use the {@code CAPTURE_MEDIA_OUTPUT} permission if only the {@code USAGE_UNKNOWN}),
         {@code USAGE_MEDIA}) or {@code USAGE_GAME}) usages are intended to be captured.
         <p>Not for use by third-party applications.</p> -->
    <permission android:name="android.permission.CAPTURE_AUDIO_OUTPUT"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to capture the audio played by other apps
         that have set an allow capture policy of
         {@link android.media.AudioAttributes#ALLOW_CAPTURE_BY_SYSTEM}.

         Without this permission, only audio with an allow capture policy of
         {@link android.media.AudioAttributes#ALLOW_CAPTURE_BY_ALL} can be used.

         There are strong restriction listed at
         {@link android.media.AudioAttributes#ALLOW_CAPTURE_BY_SYSTEM}
         on what an app can do with the captured audio.

         See {@code CAPTURE_AUDIO_OUTPUT} for capturing audio use cases other than media playback.

         <p>Not for use by third-party applications.</p>
         @hide -->
    <permission android:name="android.permission.CAPTURE_MEDIA_OUTPUT"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to capture audio for hotword detection.
         <p>Not for use by third-party applications.</p>
         @hide -->
    <permission android:name="android.permission.CAPTURE_AUDIO_HOTWORD"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to modify audio routing and override policy decisions.
         <p>Not for use by third-party applications.</p>
         @hide -->
    <permission android:name="android.permission.MODIFY_AUDIO_ROUTING"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to modify what effects are applied to all audio
         (matching certain criteria) from any application.
         <p>Not for use by third-party applications.</p>
         @hide -->
    <permission android:name="android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to provide remote displays.
         <p>Not for use by third-party applications.</p>
         @hide -->
    <permission android:name="android.permission.REMOTE_DISPLAY_PROVIDER"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to capture video output.
         <p>Not for use by third-party applications.</p>
          @hide
          @removed -->
    <permission android:name="android.permission.CAPTURE_VIDEO_OUTPUT"
        android:protectionLevel="signature" />

    <!-- Allows an application to capture secure video output.
         <p>Not for use by third-party applications.</p>
          @hide
          @removed -->
    <permission android:name="android.permission.CAPTURE_SECURE_VIDEO_OUTPUT"
        android:protectionLevel="signature" />

    <!-- Allows an application to know what content is playing and control its playback.
         <p>Not for use by third-party applications due to privacy of media consumption</p>  -->
    <permission android:name="android.permission.MEDIA_CONTENT_CONTROL"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @hide Allows an application to set the volume key long-press listener.
         <p>When it's set, the application will receive the volume key long-press event
         instead of changing volume.</p>
         <p>Not for use by third-party applications</p> -->
    <permission android:name="android.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER"
        android:protectionLevel="signature|privileged|development" />

    <!-- @SystemApi @hide Allows an application to set media key event listener.
         <p>When it's set, the application will receive the media key event before
         any other media sessions. If the event is handled by the listener, other sessions
         cannot get the event.</p>
         <p>Not for use by third-party applications</p> -->
    <permission android:name="android.permission.SET_MEDIA_KEY_LISTENER"
        android:protectionLevel="signature|privileged|development" />

    <!-- @SystemApi Required to be able to disable the device (very dangerous!).
         <p>Not for use by third-party applications.
         @hide
    -->
    <permission android:name="android.permission.BRICK"
        android:protectionLevel="signature" />

    <!-- Required to be able to reboot the device.
    <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.REBOOT"
        android:protectionLevel="signature|privileged" />

   <!-- @SystemApi Allows low-level access to power management.
        <p>Not for use by third-party applications.
        @hide
    -->
   <permission android:name="android.permission.DEVICE_POWER"
        android:protectionLevel="signature" />

    <!-- Allows toggling battery saver on the system.
         Superseded by DEVICE_POWER permission. @hide @SystemApi
    -->
    <permission android:name="android.permission.POWER_SAVER"
        android:protectionLevel="signature|privileged" />

   <!-- Allows access to the PowerManager.userActivity function.
   <p>Not for use by third-party applications. @hide @SystemApi -->
    <permission android:name="android.permission.USER_ACTIVITY"
        android:protectionLevel="signature|privileged" />

   <!-- @hide Allows low-level access to tun tap driver -->
    <permission android:name="android.permission.NET_TUNNELING"
        android:protectionLevel="signature" />

    <!-- Run as a manufacturer test application, running as the root user.
         Only available when the device is running in manufacturer test mode.
         <p>Not for use by third-party applications.
    -->
    <permission android:name="android.permission.FACTORY_TEST"
        android:protectionLevel="signature" />

    <!-- Allows an application to broadcast a notification that an application
         package has been removed.
         <p>Not for use by third-party applications.
    -->
    <permission android:name="android.permission.BROADCAST_PACKAGE_REMOVED"
        android:protectionLevel="signature" />

    <!-- Allows an application to broadcast an SMS receipt notification.
         <p>Not for use by third-party applications.
    -->
    <permission android:name="android.permission.BROADCAST_SMS"
        android:protectionLevel="signature" />

    <!-- Allows an application to broadcast a WAP PUSH receipt notification.
         <p>Not for use by third-party applications.
    -->
    <permission android:name="android.permission.BROADCAST_WAP_PUSH"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to broadcast privileged networking requests.
         <p>Not for use by third-party applications.
         @hide
         @deprecated Use {@link android.Manifest.permission#REQUEST_NETWORK_SCORES} instead
    -->
    <permission android:name="android.permission.BROADCAST_NETWORK_PRIVILEGED"
        android:protectionLevel="signature|privileged" />

    <!-- Not for use by third-party applications. -->
    <permission android:name="android.permission.MASTER_CLEAR"
        android:protectionLevel="signature|privileged" />

    <!-- 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.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.CALL_PRIVILEGED"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to perform CDMA OTA provisioning @hide -->
    <permission android:name="android.permission.PERFORM_CDMA_PROVISIONING"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to perform SIM Activation @hide -->
    <permission android:name="android.permission.PERFORM_SIM_ACTIVATION"
        android:protectionLevel="signature|privileged" />

    <!-- Allows enabling/disabling location update notifications from
         the radio.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.CONTROL_LOCATION_UPDATES"
        android:protectionLevel="signature|privileged" />

    <!-- Allows read/write access to the "properties" table in the checkin
         database, to change values that get uploaded.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to collect component usage
         statistics
         <p>Declaring the permission implies intention to use the API and the user of the
         device can grant permission through the Settings application. -->
    <permission android:name="android.permission.PACKAGE_USAGE_STATS"
        android:protectionLevel="signature|privileged|development|appop" />
    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />

    <!-- @hide @SystemApi Allows an application to observe usage time of apps. The app can register
         for callbacks when apps reach a certain usage time limit, etc. -->
    <permission android:name="android.permission.OBSERVE_APP_USAGE"
        android:protectionLevel="signature|privileged" />

    <!-- @hide @TestApi @SystemApi Allows an application to change the app idle state of an app.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.CHANGE_APP_IDLE_STATE"
        android:protectionLevel="signature|privileged" />

    <!-- @hide @SystemApi Allows an application to temporarily whitelist an inactive app to
         access the network and acquire wakelocks.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST"
        android:protectionLevel="signature|privileged" />

    <!-- Permission an application must hold in order to use
         {@link android.provider.Settings#ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS}.
         This is a normal permission: an app requesting it will always be granted the
         permission, without the user needing to approve or see it. -->
    <permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"
        android:label="@string/permlab_requestIgnoreBatteryOptimizations"
        android:description="@string/permdesc_requestIgnoreBatteryOptimizations"
        android:protectionLevel="normal" />

    <!-- Allows an application to collect battery statistics -->
    <permission android:name="android.permission.BATTERY_STATS"
        android:protectionLevel="signature|privileged|development" />

    <!--Allows an application to manage statscompanion.
    <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.STATSCOMPANION"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to control the backup and restore process.
    <p>Not for use by third-party applications.
         @hide pending API council -->
    <permission android:name="android.permission.BACKUP"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows application to manage
         {@link android.security.keystore.recovery.RecoveryController}.
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.RECOVER_KEYSTORE"
        android:protectionLevel="signature|privileged" />

    <!-- Allows a package to launch the secure full-backup confirmation UI.
         ONLY the system process may hold this permission.
         @hide -->
    <permission android:name="android.permission.CONFIRM_FULL_BACKUP"
        android:protectionLevel="signature" />

    <!-- Must be required by a {@link android.widget.RemoteViewsService},
         to ensure that only the system can bind to it. -->
    <permission android:name="android.permission.BIND_REMOTEVIEWS"
        android:protectionLevel="signature|privileged" />

    <!-- 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.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.BIND_APPWIDGET"
        android:protectionLevel="signature|privileged" />

    <!-- @hide Allows sysui to manage user grants of slice permissions. -->
    <permission android:name="android.permission.MANAGE_SLICE_PERMISSIONS"
        android:protectionLevel="signature" />

    <!-- @SystemApi Private permission, to restrict who can bring up a dialog to add a new
         keyguard widget
         @hide -->
    <permission android:name="android.permission.BIND_KEYGUARD_APPWIDGET"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Internal permission allowing an application to query/set which
         applications can bind AppWidgets.
         @hide -->
    <permission android:name="android.permission.MODIFY_APPWIDGET_BIND_PERMISSIONS"
        android:protectionLevel="signature|privileged" />

    <!-- Allows applications to change the background data setting.
    <p>Not for use by third-party applications.
         @hide pending API council -->
    <permission android:name="android.permission.CHANGE_BACKGROUND_DATA_SETTING"
        android:protectionLevel="signature" />

    <!-- 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. -->
    <permission android:name="android.permission.GLOBAL_SEARCH"
        android:protectionLevel="signature|privileged" />

    <!-- Internal permission protecting access to the global search
         system: ensures that only the system can access the provider
         to perform queries (since this otherwise provides unrestricted
         access to a variety of content providers), and to write the
         search statistics (to keep applications from gaming the source
         ranking).
         @hide -->
    <permission android:name="android.permission.GLOBAL_SEARCH_CONTROL"
        android:protectionLevel="signature" />

    <!-- @SystemApi Internal permission to allows an application to read indexable data.
        @hide -->
    <permission android:name="android.permission.READ_SEARCH_INDEXABLES"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Internal permission to allows an application to bind to suggestion service.
        @hide -->
    <permission android:name="android.permission.BIND_SETTINGS_SUGGESTIONS_SERVICE"
                android:protectionLevel="signature" />

    <!-- @hide Internal permission to allows an application to access card content provider. -->
    <permission android:name="android.permission.WRITE_SETTINGS_HOMEPAGE_DATA"
                android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows applications to set a live wallpaper.
         @hide XXX Change to signature once the picker is moved to its
         own apk as Ghod Intended. -->
    <permission android:name="android.permission.SET_WALLPAPER_COMPONENT"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows applications to read dream settings and dream state.
         @hide -->
    <permission android:name="android.permission.READ_DREAM_STATE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows applications to write dream settings, and start or stop dreaming.
         @hide -->
    <permission android:name="android.permission.WRITE_DREAM_STATE"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allow an application to read and write the cache partition.
         @hide -->
    <permission android:name="android.permission.ACCESS_CACHE_FILESYSTEM"
        android:protectionLevel="signature|privileged" />

    <!-- Must be required by default container service so that only
         the system can bind to it and use it to copy
         protected data to secure containers or files
         accessible to the system.
         @hide -->
    <permission android:name="android.permission.COPY_PROTECTED_DATA"
        android:protectionLevel="signature" />

    <!-- @SystemApi Internal permission protecting access to the encryption methods
        @hide
    -->
    <permission android:name="android.permission.CRYPT_KEEPER"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to read historical network usage for
         specific networks and applications. @hide -->
    <permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to manage network policies (such as warning and disable
         limits) and to define application-specific rules. @hide -->
    <permission android:name="android.permission.MANAGE_NETWORK_POLICY"
        android:protectionLevel="signature" />

    <!-- @SystemApi @hide @deprecated use UPDATE_DEVICE_STATS instead -->
    <permission android:name="android.permission.MODIFY_NETWORK_ACCOUNTING"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @hide Allows an application to manage carrier subscription plans. -->
    <permission android:name="android.permission.MANAGE_SUBSCRIPTION_PLANS"
        android:protectionLevel="signature|privileged" />

    <!-- C2DM permission.
         @hide Used internally.
     -->
    <permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"
          android:protectionLevel="signature" />
    <uses-permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"/>

    <!-- @SystemApi @hide Package verifier needs to have this permission before the PackageManager will
         trust it to verify packages.
    -->
    <permission android:name="android.permission.PACKAGE_VERIFICATION_AGENT"
        android:protectionLevel="signature|privileged" />

    <!-- Must be required by package verifier receiver, to ensure that only the
         system can interact with it.
         @hide
    -->
    <permission android:name="android.permission.BIND_PACKAGE_VERIFIER"
        android:protectionLevel="signature" />

    <!-- @hide Rollback manager needs to have this permission before the PackageManager will
         trust it to enable rollback.
    -->
    <permission android:name="android.permission.PACKAGE_ROLLBACK_AGENT"
        android:protectionLevel="signature" />

    <!-- @SystemApi @TestApi @hide Allows managing apk level rollbacks. -->
    <permission android:name="android.permission.MANAGE_ROLLBACKS"
        android:protectionLevel="signature|verifier" />

    <!-- @TestApi @hide Allows testing apk level rollbacks. -->
    <permission android:name="android.permission.TEST_MANAGE_ROLLBACKS"
        android:protectionLevel="signature" />

    <!-- @SystemApi @hide Allows an application to mark other applications as harmful -->
    <permission android:name="android.permission.SET_HARMFUL_APP_WARNINGS"
        android:protectionLevel="signature|verifier" />

    <!-- @SystemApi @hide Intent filter verifier needs to have this permission before the
         PackageManager will trust it to verify intent filters.
    -->
    <permission android:name="android.permission.INTENT_FILTER_VERIFICATION_AGENT"
        android:protectionLevel="signature|privileged" />

    <!-- Must be required by intent filter verifier receiver, to ensure that only the
         system can interact with it.
         @hide
    -->
    <permission android:name="android.permission.BIND_INTENT_FILTER_VERIFIER"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows applications to access serial ports via the SerialManager.
         @hide -->
    <permission android:name="android.permission.SERIAL_PORT"
        android:protectionLevel="signature|privileged" />

    <!-- Allows the holder to access content providers from outside an ApplicationThread.
         This permission is enforced by the ActivityManagerService on the corresponding APIs,
         in particular ActivityManagerService#getContentProviderExternal(String) and
         ActivityManagerService#removeContentProviderExternal(String).
         @hide
    -->
    <permission android:name="android.permission.ACCESS_CONTENT_PROVIDERS_EXTERNALLY"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to hold an UpdateLock, recommending that a headless
         OTA reboot *not* occur while the lock is held.
         @hide -->
    <permission android:name="android.permission.UPDATE_LOCK"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application the opportunity to become a
         {@link android.service.notification.NotificationAssistantService}.
         User permission is still required before access is granted.
         @hide -->
    <permission android:name="android.permission.REQUEST_NOTIFICATION_ASSISTANT_SERVICE"
                android:protectionLevel="signature|privileged" />

    <!-- @SystemApi @TestApi Allows an application to read the current set of notifications, including
         any metadata and intents attached.
         @hide -->
    <permission android:name="android.permission.ACCESS_NOTIFICATIONS"
        android:protectionLevel="signature|privileged|appop" />

    <!-- Marker permission for applications that wish to access notification policy. This permission
        is not supported on managed profiles.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY"
        android:description="@string/permdesc_access_notification_policy"
        android:label="@string/permlab_access_notification_policy"
        android:protectionLevel="normal" />

    <!-- Allows modification of do not disturb rules and policies. Only allowed for system
        processes.
        @hide -->
    <permission android:name="android.permission.MANAGE_NOTIFICATIONS"
                android:protectionLevel="signature" />

    <!-- Allows notifications to be colorized
         <p>Not for use by third-party applications. @hide -->
    <permission android:name="android.permission.USE_COLORIZED_NOTIFICATIONS"
                android:protectionLevel="signature|setup" />

    <!-- Allows access to keyguard secure storage.  Only allowed for system processes.
        @hide -->
    <permission android:name="android.permission.ACCESS_KEYGUARD_SECURE_STORAGE"
        android:protectionLevel="signature" />

    <!-- Allows managing (adding, removing) fingerprint templates. Reserved for the system. @hide -->
    <permission android:name="android.permission.MANAGE_FINGERPRINT"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an app to reset fingerprint attempt counter. Reserved for the system. @hide -->
    <permission android:name="android.permission.RESET_FINGERPRINT_LOCKOUT"
        android:protectionLevel="signature" />

    <!-- Allows direct access to the <Biometric>Service interfaces. Reserved for the system. @hide -->
    <permission android:name="android.permission.MANAGE_BIOMETRIC"
        android:protectionLevel="signature" />

    <!-- Allows direct access to the <Biometric>Service authentication methods. Reserved for the system. @hide -->
    <permission android:name="android.permission.USE_BIOMETRIC_INTERNAL"
        android:protectionLevel="signature" />

    <!-- Allows the system to control the BiometricDialog (SystemUI). Reserved for the system. @hide -->
    <permission android:name="android.permission.MANAGE_BIOMETRIC_DIALOG"
        android:protectionLevel="signature" />

    <!-- Allows an app to reset face authentication attempt counter. Reserved for the system. @hide -->
    <permission android:name="android.permission.RESET_FACE_LOCKOUT"
        android:protectionLevel="signature" />

    <!-- Allows an application to control keyguard.  Only allowed for system processes.
        @hide -->
    <permission android:name="android.permission.CONTROL_KEYGUARD"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to control keyguard features like secure notifications.
         @hide -->
    <permission android:name="android.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to listen to trust changes.  Only allowed for system processes.
        @hide -->
    <permission android:name="android.permission.TRUST_LISTENER"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to provide a trust agent.
         @hide For security reasons, this is a platform-only permission. -->
    <permission android:name="android.permission.PROVIDE_TRUST_AGENT"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to show a message
         on the keyguard when asking to dismiss it.
         @hide For security reasons, this is a platform-only permission. -->
    <permission android:name="android.permission.SHOW_KEYGUARD_MESSAGE"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to launch the trust agent settings activity.
        @hide -->
    <permission android:name="android.permission.LAUNCH_TRUST_AGENT_SETTINGS"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Must be required by an {@link
        android.service.trust.TrustAgentService},
        to ensure that only the system can bind to it.
        @hide -->
    <permission android:name="android.permission.BIND_TRUST_AGENT"
        android:protectionLevel="signature" />

    <!-- Must be required by an {@link
         android.service.notification.NotificationListenerService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE"
        android:protectionLevel="signature" />

    <!-- @SystemApi Must be required by an {@link
         android.service.notification.NotificationAssistantService} to ensure that only the system
         can bind to it.
         <p>Protection level: signature
         @hide
    -->
    <permission android:name="android.permission.BIND_NOTIFICATION_ASSISTANT_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by a {@link
         android.service.chooser.ChooserTargetService}, to ensure that
         only the system can bind to it.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_CHOOSER_TARGET_SERVICE"
        android:protectionLevel="signature" />

    <!-- @SystemApi Must be held by services that extend
         {@link android.service.resolver.ResolverRankerService}.
         <p>Protection level: signature|privileged
         @hide
    -->
    <permission android:name="android.permission.PROVIDE_RESOLVER_RANKER_SERVICE"
                android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Must be required by services that extend
         {@link android.service.resolver.ResolverRankerService}, to ensure that only the system can
         bind to them.
         <p>Protection level: signature
         @hide
    -->
    <permission android:name="android.permission.BIND_RESOLVER_RANKER_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by a {@link
         android.service.notification.ConditionProviderService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature
         -->
    <permission android:name="android.permission.BIND_CONDITION_PROVIDER_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by an {@link android.service.dreams.DreamService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature
    -->
    <permission android:name="android.permission.BIND_DREAM_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by an {@link android.app.usage.CacheQuotaService} to ensure that only the
         system can bind to it.
         @hide This is not a third-party API (intended for OEMs and system apps).
    -->
    <permission android:name="android.permission.BIND_CACHE_QUOTA_SERVICE"
                android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to call into a carrier setup flow. It is up to the
         carrier setup application to enforce that this permission is required
         @hide This is not a third-party API (intended for OEMs and system apps). -->
    <permission android:name="android.permission.INVOKE_CARRIER_SETUP"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to listen for network condition observations.
         @hide This is not a third-party API (intended for system apps). -->
    <permission android:name="android.permission.ACCESS_NETWORK_CONDITIONS"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to provision and access DRM certificates
         @hide This is not a third-party API (intended for system apps). -->
    <permission android:name="android.permission.ACCESS_DRM_CERTIFICATES"
        android:protectionLevel="signature|privileged" />

    <!-- Api Allows an application to manage media projection sessions.
         @hide This is not a third-party API (intended for system apps). -->
    <permission android:name="android.permission.MANAGE_MEDIA_PROJECTION"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to read install sessions
         @hide This is not a third-party API (intended for system apps). -->
    <permission android:name="android.permission.READ_INSTALL_SESSIONS"
        android:label="@string/permlab_readInstallSessions"
        android:description="@string/permdesc_readInstallSessions"
        android:protectionLevel="normal"/>

    <!-- @SystemApi Allows an application to remove DRM certificates
         @hide This is not a third-party API (intended for system apps). -->
    <permission android:name="android.permission.REMOVE_DRM_CERTIFICATES"
        android:protectionLevel="signature|privileged" />

    <!-- @deprecated Use {@link android.Manifest.permission#BIND_CARRIER_SERVICES} instead -->
    <permission android:name="android.permission.BIND_CARRIER_MESSAGING_SERVICE"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to interact with the currently active
         {@link android.service.voice.VoiceInteractionService}.
         @hide -->
    <permission android:name="android.permission.ACCESS_VOICE_INTERACTION_SERVICE"
        android:protectionLevel="signature" />

    <!-- 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.
         <p>Protection level: signature|privileged
    -->
    <permission android:name="android.permission.BIND_CARRIER_SERVICES"
        android:label="@string/permlab_bindCarrierServices"
        android:description="@string/permdesc_bindCarrierServices"
        android:protectionLevel="signature|privileged" />

    <!--
        Allows the holder to start the permission usage screen for an app.
        <p>Protection level: signature|installer
    -->
    <permission android:name="android.permission.START_VIEW_PERMISSION_USAGE"
        android:label="@string/permlab_startViewPermissionUsage"
        android:description="@string/permdesc_startViewPermissionUsage"
        android:protectionLevel="signature|installer" />

    <!-- Allows an application to query whether DO_NOT_ASK_CREDENTIALS_ON_BOOT
         flag is set.
         @hide -->
    <permission android:name="android.permission.QUERY_DO_NOT_ASK_CREDENTIALS_ON_BOOT"
                android:protectionLevel="signature" />

    <!-- @SystemApi Allows applications to kill UIDs.
        <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.KILL_UID"
                android:protectionLevel="signature|installer" />

    <!-- @SystemApi Allows applications to read the local WiFi and Bluetooth MAC address.
        @hide -->
    <permission android:name="android.permission.LOCAL_MAC_ADDRESS"
                android:protectionLevel="signature|privileged" />
    <uses-permission android:name="android.permission.LOCAL_MAC_ADDRESS"/>

    <!-- @SystemApi Allows access to MAC addresses of WiFi and Bluetooth peer devices.
        @hide -->
    <permission android:name="android.permission.PEERS_MAC_ADDRESS"
                android:protectionLevel="signature|setup" />

    <!-- Allows the Nfc stack to dispatch Nfc messages to applications. Applications
        can use this permission to ensure incoming Nfc messages are from the Nfc stack
        and not simulated by another application.
        @hide -->
    <permission android:name="android.permission.DISPATCH_NFC_MESSAGE"
                android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows changing day / night mode when system is configured with
         config_lockDayNightMode set to true. If requesting app does not have permission,
         it will be ignored.
        @hide -->
    <permission android:name="android.permission.MODIFY_DAY_NIGHT_MODE"
                android:protectionLevel="signature|privileged" />

    <!-- The system process is explicitly the only one allowed to launch the
         confirmation UI for full backup/restore -->
    <uses-permission android:name="android.permission.CONFIRM_FULL_BACKUP"/>

    <!-- @SystemApi Allows the holder to access and manage instant applications on the device.
         @hide -->
    <permission android:name="android.permission.ACCESS_INSTANT_APPS"
            android:protectionLevel="signature|installer|verifier|wellbeing" />
    <uses-permission android:name="android.permission.ACCESS_INSTANT_APPS"/>

    <!-- Allows the holder to view the instant applications on the device.
    @hide -->
    <permission android:name="android.permission.VIEW_INSTANT_APPS"
                android:protectionLevel="signature|preinstalled" />

    <!-- Allows the holder to manage whether the system can bind to services
         provided by instant apps. This permission is intended to protect
         test/development fucntionality and should be used only in such cases.
    @hide -->
    <permission android:name="android.permission.MANAGE_BIND_INSTANT_SERVICE"
                android:protectionLevel="signature" />

    <!-- Allows receiving the usage of media resource e.g. video/audio codec and
         graphic memory.
         @hide -->
    <permission android:name="android.permission.RECEIVE_MEDIA_RESOURCE_USAGE"
                android:protectionLevel="signature|privileged" />

    <!-- Must be required by system/priv apps when accessing the sound trigger
         APIs given by {@link SoundTriggerManager}.
         @hide
         @SystemApi -->
    <permission android:name="android.permission.MANAGE_SOUND_TRIGGER"
        android:protectionLevel="signature|privileged" />

    <!-- Must be required by system/priv apps implementing sound trigger detection services
         @hide
         @SystemApi -->
    <permission android:name="android.permission.BIND_SOUND_TRIGGER_DETECTION_SERVICE"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows trusted applications to dispatch managed provisioning message to Managed
         Provisioning app. If requesting app does not have permission, it will be ignored.
         @hide -->
    <permission android:name="android.permission.DISPATCH_PROVISIONING_MESSAGE"
                android:protectionLevel="signature|privileged" />

    <!-- Allows the holder to read blocked numbers. See
         {@link android.provider.BlockedNumberContract}.
         @hide -->
    <permission android:name="android.permission.READ_BLOCKED_NUMBERS"
                android:protectionLevel="signature" />

    <!-- Allows the holder to write blocked numbers. See
         {@link android.provider.BlockedNumberContract}.
         @hide -->
    <permission android:name="android.permission.WRITE_BLOCKED_NUMBERS"
                android:protectionLevel="signature" />

    <!-- Must be required by an {@link android.service.vr.VrListenerService}, to ensure that only
         the system can bind to it.
         <p>Protection level: signature -->
    <permission android:name="android.permission.BIND_VR_LISTENER_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by system apps when accessing restricted VR APIs.
         @hide
         @SystemApi
         <p>Protection level: signature -->
    <permission android:name="android.permission.RESTRICTED_VR_ACCESS"
        android:protectionLevel="signature|preinstalled" />

    <!-- Required to make calls to {@link android.service.vr.IVrManager}.
         @hide -->
    <permission android:name="android.permission.ACCESS_VR_MANAGER"
            android:protectionLevel="signature" />

    <!-- Required to access VR-Mode state and state change events via {android.app.VrStateCallback}
         @hide -->
    <permission android:name="android.permission.ACCESS_VR_STATE"
        android:protectionLevel="signature|preinstalled" />

    <!-- Allows an application to whitelist tasks during lock task mode
         @hide <p>Not for use by third-party applications.</p> -->
    <permission android:name="android.permission.UPDATE_LOCK_TASK_PACKAGES"
        android:protectionLevel="signature|setup" />

    <!-- @SystemApi Allows an application to replace the app name displayed alongside notifications
         in the N-release and later.
         @hide  <p>Not for use by third-party applications.</p> -->
    <permission android:name="android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME"
                android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to show notifications before the device is provisioned.
         @hide  <p>Not for use by third-party applications.</p> -->
    <permission android:name="android.permission.NOTIFICATION_DURING_SETUP"
                android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to manage auto-fill sessions.
         @hide  <p>Not for use by third-party applications.</p> -->
    <permission android:name="android.permission.MANAGE_AUTO_FILL"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to manage the content capture service.
         @hide  <p>Not for use by third-party applications.</p> -->
    <permission android:name="android.permission.MANAGE_CONTENT_CAPTURE"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to manage the content suggestions service.
         @hide  <p>Not for use by third-party applications.</p> -->
    <permission android:name="android.permission.MANAGE_CONTENT_SUGGESTIONS"
         android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to manage the app predictions service.
         @hide  <p>Not for use by third-party applications.</p> -->
    <permission android:name="android.permission.MANAGE_APP_PREDICTIONS"
         android:protectionLevel="signature|appPredictor" />

    <!-- Allows an app to set the theme overlay in /vendor/overlay
         being used.
         @hide  <p>Not for use by third-party applications.</p> -->
    <permission android:name="android.permission.MODIFY_THEME_OVERLAY"
                android:protectionLevel="signature" />

    <!-- Allows an instant app to create foreground services. -->
    <permission android:name="android.permission.INSTANT_APP_FOREGROUND_SERVICE"
        android:protectionLevel="signature|development|instant|appop" />

    <!-- Allows a regular application to use {@link android.app.Service#startForeground
         Service.startForeground}.
         <p>Protection level: normal
    -->
    <permission android:name="android.permission.FOREGROUND_SERVICE"
        android:description="@string/permdesc_foregroundService"
        android:label="@string/permlab_foregroundService"
        android:protectionLevel="normal|instant" />

    <!-- @SystemApi Allows to access all app shortcuts.
         @hide -->
    <permission android:name="android.permission.ACCESS_SHORTCUTS"
        android:protectionLevel="signature|textClassifier" />

    <!-- @SystemApi Allows unlimited calls to shortcut mutation APIs.
         @hide -->
    <permission android:name="android.permission.UNLIMITED_SHORTCUTS_API_CALLS"
        android:protectionLevel="signature|textClassifier" />

    <!-- @SystemApi Allows an application to read the runtime profiles of other apps.
         @hide <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.READ_RUNTIME_PROFILES"
                android:protectionLevel="signature|privileged" />

    <!-- @hide Allows audio policy management. -->
    <permission android:name="android.permission.MANAGE_AUDIO_POLICY"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows an application to turn on / off quiet mode.
         @hide <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.MODIFY_QUIET_MODE"
                android:protectionLevel="signature|privileged" />

    <!-- Allows internal management of the camera framework
         @hide -->
    <permission android:name="android.permission.MANAGE_CAMERA"
        android:protectionLevel="signature" />

    <!-- Allows an application to control remote animations. See
         {@link ActivityOptions#makeRemoteAnimation}
         @hide <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.CONTROL_REMOTE_APP_TRANSITION_ANIMATIONS"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to watch changes and/or active state of app ops.
         @hide <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.WATCH_APPOPS"
        android:protectionLevel="signature|privileged" />

    <!-- Allows an application to directly open the "Open by default" page inside a package's
         Details screen.
         @hide <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.OPEN_APP_OPEN_BY_DEFAULT_SETTINGS"
                android:protectionLevel="signature" />

    <!-- Allows hidden API checks to be disabled when starting a process.
         @hide <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.DISABLE_HIDDEN_API_CHECKS"
                android:protectionLevel="signature" />

    <!-- @hide Permission that protects the
        {@link android.provider.Telephony.Intents#ACTION_DEFAULT_SMS_PACKAGE_CHANGED_INTERNAL}
        broadcast -->
    <permission android:name="android.permission.MONITOR_DEFAULT_SMS_PACKAGE"
        android:protectionLevel="signature|privileged" />

    <!-- A subclass of {@link android.service.carrier.CarrierMessagingClientService} must be protected with this permission. -->
    <permission android:name="android.permission.BIND_CARRIER_MESSAGING_CLIENT_SERVICE"
        android:protectionLevel="signature" />

    <!-- Must be required by an {@link android.service.watchdog.ExplicitHealthCheckService} to
         ensure that only the system can bind to it.
         @hide This is not a third-party API (intended for OEMs and system apps).
    -->
    <permission android:name="android.permission.BIND_EXPLICIT_HEALTH_CHECK_SERVICE"
        android:protectionLevel="signature|privileged" />

    <!-- @hide Permission that allows configuring appops.
     <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.MANAGE_APPOPS"
                android:protectionLevel="signature" />

    <!-- @hide Permission that allows background clipboard access.
         <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.READ_CLIPBOARD_IN_BACKGROUND"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allows modifying accessibility state.
         @hide -->
    <permission android:name="android.permission.MANAGE_ACCESSIBILITY"
        android:protectionLevel="signature|setup" />

    <!-- @SystemApi Allows an app to grant a profile owner access to device identifiers.
         <p>Not for use by third-party applications.
         @hide -->
    <permission android:name="android.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS"
        android:protectionLevel="signature" />

    <!-- Allows financial apps to read filtered sms messages. -->
    <permission android:name="android.permission.SMS_FINANCIAL_TRANSACTIONS"
        android:protectionLevel="signature|appop" />

    <!-- Required for apps targeting {@link android.os.Build.VERSION_CODES#Q} that want to use
         {@link android.app.Notification.Builder#setFullScreenIntent notification full screen
         intents}.  -->
    <permission android:name="android.permission.USE_FULL_SCREEN_INTENT"
                android:protectionLevel="normal" />

    <!-- @SystemApi Allows requesting the framework broadcast the
         {@link Intent#ACTION_DEVICE_CUSTOMIZATION_READY} intent.
         @hide -->
    <permission android:name="android.permission.SEND_DEVICE_CUSTOMIZATION_READY"
        android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Permission that protects the {@link Intent#ACTION_DEVICE_CUSTOMIZATION_READY}
         intent.
         @hide -->
    <permission android:name="android.permission.RECEIVE_DEVICE_CUSTOMIZATION_READY"
        android:protectionLevel="signature|preinstalled" />

    <!-- @SystemApi Allows wallpaper to be rendered in ambient mode.
         @hide -->
    <permission android:name="android.permission.AMBIENT_WALLPAPER"
                android:protectionLevel="signature|preinstalled" />

    <!-- @SystemApi Allows sensor privacy to be modified.
         @hide -->
    <permission android:name="android.permission.MANAGE_SENSOR_PRIVACY"
                android:protectionLevel="signature" />
    <!-- @SystemApi Permission that protects the {@link Intent#ACTION_REVIEW_ACCESSIBILITY_SERVICES}
         intent.
         @hide -->
    <permission android:name="android.permission.REVIEW_ACCESSIBILITY_SERVICES"
                android:protectionLevel="signature" />

    <!-- @SystemApi Allows an activity to replace the app name and icon displayed in share targets
         in the sharesheet for the Q-release and later.
         @hide  <p>Not for use by third-party applications.</p> -->
    <permission android:name="android.permission.SUBSTITUTE_SHARE_TARGET_APP_NAME_AND_ICON"
                android:protectionLevel="signature|privileged" />

    <!-- @SystemApi Allows an application to access shared libraries.
         @hide -->
    <permission android:name="android.permission.ACCESS_SHARED_LIBRARIES"
                android:protectionLevel="signature|installer" />

    <!-- Allows input events to be monitored. Very dangerous!  @hide -->
    <permission android:name="android.permission.MONITOR_INPUT"
                android:protectionLevel="signature" />

    <application android:process="system"
                 android:persistent="true"
                 android:hasCode="false"
                 android:label="@string/android_system_label"
                 android:allowClearUserData="false"
                 android:backupAgent="com.android.server.backup.SystemBackupAgent"
                 android:killAfterRestore="false"
                 android:icon="@drawable/ic_launcher_android"
                 android:supportsRtl="true"
                 android:theme="@style/Theme.DeviceDefault.Light.DarkActionBar"
                 android:defaultToDeviceProtectedStorage="true"
                 android:directBootAware="true">
        <activity android:name="com.android.internal.app.ChooserActivity"
                android:theme="@style/Theme.DeviceDefault.Resolver"
                android:finishOnCloseSystemDialogs="true"
                android:excludeFromRecents="true"
                android:documentLaunchMode="never"
                android:relinquishTaskIdentity="true"
                android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation|keyboard|keyboardHidden"
                android:process=":ui"
                android:visibleToInstantApps="true">
            <intent-filter>
                <action android:name="android.intent.action.CHOOSER" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.VOICE" />
            </intent-filter>
        </activity>
        <activity android:name="com.android.internal.app.AccessibilityButtonChooserActivity"
                  android:exported="false"
                  android:theme="@style/Theme.DeviceDefault.Resolver"
                  android:finishOnCloseSystemDialogs="true"
                  android:excludeFromRecents="true"
                  android:documentLaunchMode="never"
                  android:relinquishTaskIdentity="true"
                  android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation|keyboard|keyboardHidden"
                  android:process=":ui"
                  android:visibleToInstantApps="true">
            <intent-filter>
                <action android:name="com.android.internal.intent.action.CHOOSE_ACCESSIBILITY_BUTTON" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity android:name="com.android.internal.app.IntentForwarderActivity"
                android:finishOnCloseSystemDialogs="true"
                android:theme="@style/Theme.NoDisplay"
                android:excludeFromRecents="true"
                android:label="@string/user_owner_label"
                android:exported="true"
                android:visibleToInstantApps="true"
                >
        </activity>
        <activity-alias android:name="com.android.internal.app.ForwardIntentToParent"
                android:targetActivity="com.android.internal.app.IntentForwarderActivity"
                android:exported="true"
                android:label="@string/user_owner_label">
        </activity-alias>
        <activity-alias android:name="com.android.internal.app.ForwardIntentToManagedProfile"
                android:targetActivity="com.android.internal.app.IntentForwarderActivity"
                android:icon="@drawable/ic_corp_badge"
                android:exported="true"
                android:label="@string/managed_profile_label">
        </activity-alias>
        <activity android:name="com.android.internal.app.HeavyWeightSwitcherActivity"
                android:theme="@style/Theme.DeviceDefault.Light.Dialog"
                android:label="@string/heavy_weight_switcher_title"
                android:finishOnCloseSystemDialogs="true"
                android:excludeFromRecents="true"
                android:process=":ui">
        </activity>
        <activity android:name="com.android.internal.app.PlatLogoActivity"
                android:theme="@style/Theme.DeviceDefault.DayNight"
                android:configChanges="orientation|keyboardHidden"
                android:icon="@drawable/platlogo"
                android:process=":ui">
        </activity>
        <activity android:name="com.android.internal.app.DisableCarModeActivity"
                android:theme="@style/Theme.NoDisplay"
                android:excludeFromRecents="true"
                android:process=":ui">
        </activity>
        <activity android:name="com.android.internal.app.DumpHeapActivity"
                android:theme="@style/Theme.Translucent.NoTitleBar"
                android:label="@string/dump_heap_title"
                android:finishOnCloseSystemDialogs="true"
                android:noHistory="true"
                android:excludeFromRecents="true"
                android:process=":ui">
        </activity>
        <provider android:name="com.android.server.am.DumpHeapProvider"
                android:authorities="com.android.server.heapdump"
                android:grantUriPermissions="true"
                android:multiprocess="false"
                android:singleUser="true" />

        <activity android:name="android.accounts.ChooseAccountActivity"
                android:excludeFromRecents="true"
                android:exported="true"
                android:theme="@style/Theme.DeviceDefault.Light.Dialog"
                android:label="@string/choose_account_label"
                android:process=":ui"
                android:visibleToInstantApps="true">
        </activity>

        <activity android:name="android.accounts.ChooseTypeAndAccountActivity"
                android:excludeFromRecents="true"
                android:exported="true"
                android:theme="@style/Theme.DeviceDefault.Light.Dialog"
                android:label="@string/choose_account_label"
                android:process=":ui"
                android:visibleToInstantApps="true">
        </activity>

        <activity android:name="android.accounts.ChooseAccountTypeActivity"
                android:excludeFromRecents="true"
                android:theme="@style/Theme.DeviceDefault.Light.Dialog"
                android:label="@string/choose_account_label"
                android:process=":ui"
                android:visibleToInstantApps="true">
        </activity>

        <activity android:name="android.accounts.CantAddAccountActivity"
                android:excludeFromRecents="true"
                android:exported="true"
                android:theme="@style/Theme.DeviceDefault.Light.Dialog.NoActionBar"
                android:process=":ui">
        </activity>

        <activity android:name="android.accounts.GrantCredentialsPermissionActivity"
                android:excludeFromRecents="true"
                android:exported="true"
                android:theme="@style/Theme.DeviceDefault.Light.DialogWhenLarge"
                android:process=":ui"
                android:visibleToInstantApps="true">
        </activity>

        <activity android:name="android.content.SyncActivityTooManyDeletes"
               android:theme="@style/Theme.DeviceDefault.Light.Dialog"
               android:label="@string/sync_too_many_deletes"
               android:process=":ui">
        </activity>

        <activity android:name="com.android.internal.app.ShutdownActivity"
            android:permission="android.permission.SHUTDOWN"
            android:theme="@style/Theme.NoDisplay"
            android:excludeFromRecents="true">
            <intent-filter>
                <action android:name="com.android.internal.intent.action.REQUEST_SHUTDOWN" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.REBOOT" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.internal.app.NetInitiatedActivity"
                android:theme="@style/Theme.Dialog.Confirmation"
                android:excludeFromRecents="true"
                android:process=":ui">
        </activity>

        <activity android:name="com.android.internal.app.SystemUserHomeActivity"
                  android:enabled="false"
                  android:process=":ui"
                  android:systemUserOnly="true"
                  android:theme="@style/Theme.Translucent.NoTitleBar">
            <intent-filter android:priority="-100">
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.HOME" />
            </intent-filter>
        </activity>

        <!-- Activity to prompt user if it's ok to create a new user sandbox for a
             specified account. -->
        <activity android:name="com.android.internal.app.ConfirmUserCreationActivity"
                android:excludeFromRecents="true"
                android:process=":ui"
                android:theme="@style/Theme.Dialog.Confirmation">
            <intent-filter android:priority="1000">
                <action android:name="android.os.action.CREATE_USER" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.internal.app.SuspendedAppActivity"
                  android:theme="@style/Theme.Dialog.Confirmation"
                  android:excludeFromRecents="true"
                  android:process=":ui">
        </activity>

        <activity android:name="com.android.internal.app.UnlaunchableAppActivity"
                android:theme="@style/Theme.Dialog.Confirmation"
                android:excludeFromRecents="true"
                android:process=":ui">
        </activity>

        <activity android:name="com.android.settings.notification.NotificationAccessConfirmationActivity"
                  android:theme="@style/Theme.Dialog.Confirmation"
                  android:excludeFromRecents="true">
        </activity>

        <activity android:name="com.android.internal.app.HarmfulAppWarningActivity"
                  android:theme="@style/Theme.Dialog.Confirmation"
                  android:excludeFromRecents="true"
                  android:process=":ui"
                  android:label="@string/harmful_app_warning_title"
                  android:exported="false">
        </activity>

        <receiver android:name="com.android.server.BootReceiver"
                android:systemUserOnly="true">
            <intent-filter android:priority="1000">
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.server.updates.CertPinInstallReceiver"
                android:permission="android.permission.UPDATE_CONFIG">
            <intent-filter>
                <action android:name="android.intent.action.UPDATE_PINS" />
                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.server.updates.IntentFirewallInstallReceiver"
                android:permission="android.permission.UPDATE_CONFIG">
            <intent-filter>
                <action android:name="android.intent.action.UPDATE_INTENT_FIREWALL" />
                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.server.updates.SmsShortCodesInstallReceiver"
                android:permission="android.permission.UPDATE_CONFIG">
            <intent-filter>
                <action android:name="android.intent.action.UPDATE_SMS_SHORT_CODES" />
                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.server.updates.NetworkWatchlistInstallReceiver"
                  android:permission="android.permission.UPDATE_CONFIG">
            <intent-filter>
                <action android:name="android.intent.action.UPDATE_NETWORK_WATCHLIST" />
                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.server.updates.ApnDbInstallReceiver"
                android:permission="android.permission.UPDATE_CONFIG">
            <intent-filter>
                <action android:name="com.android.internal.intent.action.UPDATE_APN_DB" />
                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.server.updates.CarrierProvisioningUrlsInstallReceiver"
                android:permission="android.permission.UPDATE_CONFIG">
            <intent-filter>
                <action android:name="android.intent.action.UPDATE_CARRIER_PROVISIONING_URLS" />
                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.server.updates.CertificateTransparencyLogInstallReceiver"
                android:permission="android.permission.UPDATE_CONFIG">
            <intent-filter>
                <action android:name="android.intent.action.UPDATE_CT_LOGS" />
                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.server.updates.LangIdInstallReceiver"
                android:permission="android.permission.UPDATE_CONFIG">
            <intent-filter>
                <action android:name="android.intent.action.UPDATE_LANG_ID" />
                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.server.updates.SmartSelectionInstallReceiver"
                android:permission="android.permission.UPDATE_CONFIG">
            <intent-filter>
                <action android:name="android.intent.action.UPDATE_SMART_SELECTION" />
                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.server.updates.ConversationActionsInstallReceiver"
                  android:permission="android.permission.UPDATE_CONFIG">
            <intent-filter>
                <action android:name="android.intent.action.UPDATE_CONVERSATION_ACTIONS" />
                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.server.updates.CarrierIdInstallReceiver"
                  android:permission="android.permission.UPDATE_CONFIG">
            <intent-filter>
                <action android:name="android.os.action.UPDATE_CARRIER_ID_DB" />
                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.server.MasterClearReceiver"
            android:permission="android.permission.MASTER_CLEAR">
            <intent-filter
                    android:priority="100" >
                <!-- For Checkin, Settings, etc.: action=FACTORY_RESET -->
                <action android:name="android.intent.action.FACTORY_RESET" />
                <!-- As above until all the references to the deprecated MASTER_CLEAR get updated to
                     FACTORY_RESET. -->
                <action android:name="android.intent.action.MASTER_CLEAR" />

                <!-- MCS always uses REMOTE_INTENT: category=MASTER_CLEAR -->
                <action android:name="com.google.android.c2dm.intent.RECEIVE" />
                <category android:name="android.intent.category.MASTER_CLEAR" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.server.WallpaperUpdateReceiver"
                  android:permission="android.permission.RECEIVE_DEVICE_CUSTOMIZATION_READY">
            <intent-filter>
                <action android:name="android.intent.action.DEVICE_CUSTOMIZATION_READY"/>
            </intent-filter>
        </receiver>

        <service android:name="android.hardware.location.GeofenceHardwareService"
            android:permission="android.permission.LOCATION_HARDWARE"
            android:exported="false" />

        <service android:name="com.android.server.MountServiceIdler"
                 android:exported="true"
                 android:permission="android.permission.BIND_JOB_SERVICE" >
        </service>

        <service android:name="com.android.server.ZramWriteback"
                 android:exported="false"
                 android:permission="android.permission.BIND_JOB_SERVICE" >
        </service>

        <service android:name="com.android.server.backup.FullBackupJob"
                 android:exported="true"
                 android:permission="android.permission.BIND_JOB_SERVICE" >
        </service>

        <service android:name="com.android.server.backup.KeyValueBackupJob"
                 android:permission="android.permission.BIND_JOB_SERVICE" >
        </service>

        <service android:name="com.android.server.content.SyncJobService"
                 android:permission="android.permission.BIND_JOB_SERVICE" >
        </service>

        <service android:name="com.android.server.pm.BackgroundDexOptService"
                 android:exported="true"
                 android:permission="android.permission.BIND_JOB_SERVICE">
        </service>

        <service android:name="com.android.server.pm.DynamicCodeLoggingService"
                 android:permission="android.permission.BIND_JOB_SERVICE">
        </service>

        <service android:name="com.android.server.PruneInstantAppsJobService"
                 android:permission="android.permission.BIND_JOB_SERVICE" >
        </service>

        <service android:name="com.android.server.storage.DiskStatsLoggingService"
                 android:permission="android.permission.BIND_JOB_SERVICE" >
        </service>

        <service android:name="com.android.server.PreloadsFileCacheExpirationJobService"
                 android:permission="android.permission.BIND_JOB_SERVICE" >
        </service>

        <service android:name="com.android.server.camera.CameraStatsJobService"
                 android:permission="android.permission.BIND_JOB_SERVICE" >
        </service>

        <service android:name="com.android.server.timezone.TimeZoneUpdateIdler"
                 android:permission="android.permission.BIND_JOB_SERVICE" >
        </service>

        <service android:name="com.android.server.net.watchlist.ReportWatchlistJobService"
                 android:permission="android.permission.BIND_JOB_SERVICE" >
        </service>

        <service android:name="com.android.server.display.BrightnessIdleJob"
                 android:permission="android.permission.BIND_JOB_SERVICE" >
        </service>

        <service
                android:name="com.android.server.autofill.AutofillCompatAccessibilityService"
                android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE"
                android:visibleToInstantApps="true"
                android:exported="true">
            <meta-data
                    android:name="android.accessibilityservice"
                    android:resource="@xml/autofill_compat_accessibility_service" />
        </service>

</application>

</manifest>
