<?xml version="1.0" encoding="utf-8"?>
<!--
/*
 * Copyright (C) 2015 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="com.android.shell"
        coreApp="true"
        updatableSystem="false"
        android:sharedUserId="android.uid.shell"
        >

        <!-- Standard permissions granted to the shell. -->
    <uses-permission android:name="android.permission.CAMERA_HEADLESS_SYSTEM_USER" />
    <uses-permission android:name="android.permission.MANAGE_HEALTH_PERMISSIONS" />
    <uses-permission android:name="android.permission.MANAGE_HEALTH_DATA" />
    <uses-permission android:name="android.permission.health.READ_EXERCISE_ROUTE" />
    <uses-permission android:name="android.permission.MIGRATE_HEALTH_CONNECT_DATA" />
    <uses-permission android:name="android.permission.LAUNCH_DEVICE_MANAGER_SETUP" />
    <uses-permission android:name="android.permission.GET_RUNTIME_PERMISSIONS" />
    <uses-permission android:name="android.permission.SEND_SMS" />
    <uses-permission android:name="android.permission.READ_SMS" />
    <uses-permission android:name="android.permission.CALL_PHONE" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.READ_PRECISE_PHONE_STATE" />
    <uses-permission android:name="android.permission.READ_ACTIVE_EMERGENCY_SESSION" />
    <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
    <uses-permission android:name="android.permission.READ_CONTACTS" />
    <uses-permission android:name="android.permission.WRITE_CONTACTS" />
    <uses-permission android:name="android.permission.READ_CALENDAR" />
    <uses-permission android:name="android.permission.WRITE_CALENDAR" />
    <uses-permission android:name="android.permission.READ_CALL_LOG" />
    <uses-permission android:name="android.permission.WRITE_CALL_LOG" />
    <uses-permission android:name="android.permission.READ_USER_DICTIONARY" />
    <uses-permission android:name="android.permission.WRITE_USER_DICTIONARY" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.HIGH_SAMPLING_RATE_SENSORS" />
    <uses-permission android:name="android.permission.RECEIVE_SMS" />
    <uses-permission android:name="android.permission.RECEIVE_WAP_PUSH" />
    <uses-permission android:name="android.permission.RECEIVE_MMS" />
    <uses-permission android:name="android.permission.READ_CELL_BROADCASTS" />
    <uses-permission android:name="android.permission.SATELLITE_COMMUNICATION" />
    <uses-permission android:name="android.permission.ACCESS_MEDIA_LOCATION" />
    <uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
    <uses-permission android:name="android.permission.READ_PHONE_NUMBERS" />
    <uses-permission android:name="android.permission.USE_SIP" />
    <uses-permission android:name="android.permission.ANSWER_PHONE_CALLS" />
    <uses-permission android:name="android.permission.ACCEPT_HANDOVER" />
    <uses-permission android:name="android.permission.ACTIVITY_RECOGNITION" />
    <uses-permission android:name="android.permission.BODY_SENSORS" />
    <uses-permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL" />
    <uses-permission android:name="android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS" />
    <uses-permission android:name="android.permission.GET_PROCESS_STATE_AND_OOM_SCORE" />
    <uses-permission android:name="android.permission.READ_DROPBOX_DATA" />
    <uses-permission android:name="android.permission.READ_LOGS" />
    <uses-permission android:name="android.permission.BRIGHTNESS_SLIDER_USAGE" />
    <uses-permission android:name="android.permission.ACCESS_AMBIENT_LIGHT_STATS" />
    <uses-permission android:name="android.permission.CONFIGURE_DISPLAY_BRIGHTNESS" />
    <uses-permission android:name="android.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER" />
    <uses-permission android:name="android.permission.SET_MEDIA_KEY_LISTENER" />
    <uses-permission android:name="android.permission.INSTANT_APP_FOREGROUND_SERVICE" />
    <uses-permission android:name="android.permission.MANAGE_OWN_CALLS" />
    <uses-permission android:name="android.permission.CALL_COMPANION_APP" />
    <uses-permission android:name="android.permission.USE_FINGERPRINT" />
    <uses-permission android:name="android.permission.READ_PROFILE" />
    <uses-permission android:name="android.permission.WRITE_PROFILE" />
    <uses-permission android:name="android.permission.READ_SOCIAL_STREAM" />
    <uses-permission android:name="android.permission.WRITE_SOCIAL_STREAM" />
    <uses-permission android:name="android.permission.WRITE_SMS" />
    <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
    <uses-permission android:name="android.permission.USE_CREDENTIALS" />
    <uses-permission android:name="android.permission.SUBSCRIBED_FEEDS_READ" />
    <uses-permission android:name="android.permission.SUBSCRIBED_FEEDS_WRITE" />
    <uses-permission android:name="android.permission.FLASHLIGHT" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.NFC" />
    <uses-permission android:name="android.permission.NFC_TRANSACTION_EVENT" />
    <uses-permission android:name="android.permission.NFC_PREFERRED_PAYMENT_INFO" />
    <uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />
    <uses-permission android:name="android.permission.TRANSMIT_IR" />
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    <uses-permission android:name="android.permission.REQUEST_PASSWORD_COMPLEXITY" />
    <uses-permission android:name="android.permission.GET_TASKS" />
    <uses-permission android:name="android.permission.RESTART_PACKAGES" />
    <uses-permission android:name="android.permission.REQUEST_COMPANION_RUN_IN_BACKGROUND" />
    <uses-permission android:name="android.permission.REQUEST_COMPANION_USE_DATA_IN_BACKGROUND" />
    <uses-permission android:name="android.permission.HIDE_OVERLAY_WINDOWS" />
    <uses-permission android:name="android.permission.SET_WALLPAPER_HINTS" />
    <uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
    <uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
    <uses-permission android:name="android.permission.READ_SYNC_STATS" />
    <uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS" />
    <uses-permission android:name="com.android.browser.permission.WRITE_HISTORY_BOOKMARKS" />
    <uses-permission android:name="com.android.alarm.permission.SET_ALARM" />
    <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
    <uses-permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT" />
    <uses-permission android:name="android.permission.PERSISTENT_ACTIVITY" />
    <uses-permission android:name="android.permission.GET_PACKAGE_SIZE" />
    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
    <uses-permission android:name="android.permission.REQUEST_DELETE_PACKAGES" />
    <uses-permission android:name="android.permission.REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE" />
    <uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
    <uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY" />
    <uses-permission android:name="android.permission.READ_INSTALL_SESSIONS" />
    <uses-permission android:name="android.permission.USE_FULL_SCREEN_INTENT" />
    <uses-permission android:name="android.permission.TRIGGER_LOST_MODE" />
    <!-- ACCESS_BACKGROUND_LOCATION is needed for testing purposes only. -->
    <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
    <!-- ACCESS_MTP is needed for testing purposes only. -->
    <uses-permission android:name="android.permission.ACCESS_MTP" />
    <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE" />
    <uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
    <!-- BLUETOOTH_PRIVILEGED is needed for testing purposes only. -->
    <uses-permission android:name="android.permission.BLUETOOTH_PRIVILEGED" />
    <uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
    <uses-permission android:name="android.permission.LOCAL_MAC_ADDRESS" />
    <uses-permission android:name="android.permission.EXPAND_STATUS_BAR" />
    <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
    <uses-permission android:name="android.permission.MANAGE_NETWORK_POLICY" />
    <uses-permission android:name="android.permission.MANAGE_USB" />
    <uses-permission android:name="android.permission.USE_RESERVED_DISK" />
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
    <!-- System tool permissions granted to the shell. -->
    <uses-permission android:name="android.permission.REAL_GET_TASKS" />
    <uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
    <uses-permission android:name="android.permission.REORDER_TASKS" />
    <uses-permission android:name="android.permission.REMOVE_TASKS" />
    <uses-permission android:name="android.permission.SET_ANIMATION_SCALE" />
    <uses-permission android:name="android.permission.SET_PREFERRED_APPLICATIONS" />
    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
    <uses-permission android:name="android.permission.LOCATION_BYPASS" />
    <uses-permission android:name="android.permission.READ_DEVICE_CONFIG" />
    <uses-permission android:name="android.permission.WRITE_DEVICE_CONFIG" />
    <uses-permission android:name="android.permission.WRITE_ALLOWLISTED_DEVICE_CONFIG" />
    <uses-permission android:name="android.permission.READ_WRITE_SYNC_DISABLED_MODE_CONFIG" />
    <uses-permission android:name="android.permission.MONITOR_DEVICE_CONFIG_ACCESS" />
    <uses-permission android:name="android.permission.BROADCAST_STICKY" />
    <uses-permission android:name="android.permission.MANAGE_ACCESSIBILITY" />
    <!-- Development tool permissions granted to the shell. -->
    <uses-permission android:name="android.permission.SET_DEBUG_APP" />
    <uses-permission android:name="android.permission.SET_PROCESS_LIMIT" />
    <uses-permission android:name="android.permission.SET_ALWAYS_FINISH" />
    <uses-permission android:name="android.permission.DUMP" />
    <uses-permission android:name="android.permission.CONTROL_UI_TRACING" />
    <uses-permission android:name="android.permission.SIGNAL_PERSISTENT_PROCESSES" />
    <uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES" />
    <uses-permission android:name="android.permission.KILL_ALL_BACKGROUND_PROCESSES" />
    <!-- Internal permissions granted to the shell. -->
    <uses-permission android:name="android.permission.FORCE_BACK" />
    <uses-permission android:name="android.permission.BATTERY_STATS" />
    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />
    <uses-permission android:name="android.permission.REPORT_USAGE_STATS" />
    <uses-permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW" />
    <uses-permission android:name="android.permission.INJECT_EVENTS" />
    <uses-permission android:name="android.permission.RETRIEVE_WINDOW_CONTENT" />
    <uses-permission android:name="android.permission.SET_ACTIVITY_WATCHER" />
    <uses-permission android:name="android.permission.READ_INPUT_STATE" />
    <uses-permission android:name="android.permission.SET_ORIENTATION" />
    <uses-permission android:name="android.permission.INSTALL_PACKAGES" />
    <uses-permission android:name="android.permission.INSTALL_PACKAGE_UPDATES" />
    <uses-permission android:name="android.permission.ENFORCE_UPDATE_OWNERSHIP" />
    <uses-permission android:name="android.permission.INSTALL_DPC_PACKAGES" />
    <uses-permission android:name="com.android.permission.USE_INSTALLER_V2" />
    <uses-permission android:name="android.permission.INSTALL_TEST_ONLY_PACKAGE" />
    <uses-permission android:name="com.android.permission.USE_SYSTEM_DATA_LOADERS" />
    <uses-permission android:name="android.permission.PACKAGE_VERIFICATION_AGENT" />
    <uses-permission android:name="android.permission.MOVE_PACKAGE" />
    <uses-permission android:name="android.permission.KEEP_UNINSTALLED_PACKAGES" />
    <uses-permission android:name="android.permission.CLEAR_APP_USER_DATA" />
    <uses-permission android:name="android.permission.CLEAR_APP_CACHE" />
    <uses-permission android:name="android.permission.ACCESS_INSTANT_APPS" />
    <uses-permission android:name="android.permission.DELETE_CACHE_FILES" />
    <uses-permission android:name="android.permission.DELETE_PACKAGES" />
    <uses-permission android:name="android.permission.MANAGE_ROLLBACKS" />
    <uses-permission android:name="android.permission.TEST_MANAGE_ROLLBACKS" />
    <uses-permission android:name="android.permission.ACCESS_SURFACE_FLINGER" />
    <uses-permission android:name="android.permission.CAPTURE_VIDEO_OUTPUT" />
    <uses-permission android:name="android.permission.READ_FRAME_BUFFER" />
    <uses-permission android:name="android.permission.REBOOT" />
    <uses-permission android:name="android.permission.DEVICE_POWER" />
    <uses-permission android:name="android.permission.POWER_SAVER" />
    <uses-permission android:name="android.permission.BATTERY_PREDICTION" />
    <uses-permission android:name="android.permission.INSTALL_LOCATION_PROVIDER" />
    <uses-permission android:name="android.permission.BACKUP" />
    <uses-permission android:name="android.permission.FORCE_STOP_PACKAGES" />
    <uses-permission android:name="android.permission.STOP_APP_SWITCHES" />
    <uses-permission android:name="android.permission.ACCESS_CONTENT_PROVIDERS_EXTERNALLY" />
    <uses-permission android:name="android.permission.GRANT_RUNTIME_PERMISSIONS" />
    <uses-permission android:name="android.permission.REVOKE_RUNTIME_PERMISSIONS" />
    <uses-permission android:name="android.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS" />
    <uses-permission android:name="android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS" />
    <uses-permission android:name="android.permission.WHITELIST_RESTRICTED_PERMISSIONS" />
    <uses-permission android:name="android.permission.EMERGENCY_INSTALL_PACKAGES" />
    <!-- Permission required for processes that don't own the focused window to switch
         touch mode state -->
    <uses-permission android:name="android.permission.MODIFY_TOUCH_MODE_STATE" />
    <!-- Permission required to test onPermissionsChangedListener -->
    <uses-permission android:name="android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS" />
    <uses-permission android:name="android.permission.SET_KEYBOARD_LAYOUT" />
    <uses-permission android:name="android.permission.GET_DETAILED_TASKS" />
    <uses-permission android:name="android.permission.SET_SCREEN_COMPATIBILITY" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE" />
    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS" />
    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
    <uses-permission android:name="android.permission.CREATE_USERS" />
    <uses-permission android:name="android.permission.MANAGE_SUBSCRIPTION_USER_ASSOCIATION" />
    <uses-permission android:name="android.permission.QUERY_USERS" />
    <uses-permission android:name="android.permission.MANAGE_CREDENTIAL_MANAGEMENT_APP" />
    <uses-permission android:name="android.permission.MANAGE_DEVICE_ADMINS" />
    <uses-permission android:name="android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS" />
    <uses-permission android:name="android.permission.PROVISION_DEMO_DEVICE" />
    <uses-permission android:name="android.permission.QUERY_ADMIN_POLICY" />
    <uses-permission android:name="android.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES" />
    <uses-permission android:name="android.permission.FORCE_DEVICE_POLICY_MANAGER_LOGS" />
    <uses-permission android:name="android.permission.CLEAR_FREEZE_PERIOD" />
    <uses-permission android:name="android.permission.MODIFY_QUIET_MODE" />
    <uses-permission android:name="android.permission.ACCESS_LOWPAN_STATE" />
    <uses-permission android:name="android.permission.CHANGE_LOWPAN_STATE" />
    <uses-permission android:name="android.permission.READ_LOWPAN_CREDENTIAL" />
    <uses-permission android:name="android.permission.BLUETOOTH_STACK" />
    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="android.permission.RETRIEVE_WINDOW_TOKEN" />
    <uses-permission android:name="android.permission.FRAME_STATS" />
    <uses-permission android:name="android.permission.BIND_APPWIDGET" />
    <uses-permission android:name="android.permission.UPDATE_APP_OPS_STATS" />
    <uses-permission android:name="android.permission.MODIFY_APPWIDGET_BIND_PERMISSIONS" />
    <uses-permission android:name="android.permission.CHANGE_APP_IDLE_STATE" />
    <uses-permission android:name="android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST" />
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
    <uses-permission android:name="android.permission.MOUNT_FORMAT_FILESYSTEMS" />
    <uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
    <!-- Permission required to test LauncherApps APIs for hidden profiles -->
    <uses-permission android:name="android.permission.ACCESS_HIDDEN_PROFILES_FULL" />
    <!-- Shell only holds android.permission.NETWORK_SCAN in order to to enable CTS testing -->
    <uses-permission android:name="android.permission.NETWORK_SCAN" />
    <uses-permission android:name="android.permission.REGISTER_CALL_PROVIDER" />
    <uses-permission android:name="android.permission.REGISTER_CONNECTION_MANAGER" />
    <uses-permission android:name="android.permission.REGISTER_SIM_SUBSCRIPTION" />
    <uses-permission android:name="android.permission.GET_APP_OPS_STATS" />
    <uses-permission android:name="android.permission.MANAGE_APP_OPS_MODES" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.ACCESS_VIBRATOR_STATE" />
    <uses-permission android:name="android.permission.MANAGE_ACTIVITY_TASKS" />
    <uses-permission android:name="android.permission.START_TASKS_FROM_RECENTS" />
    <uses-permission android:name="android.permission.START_ACTIVITIES_FROM_BACKGROUND" />
    <uses-permission android:name="android.permission.START_FOREGROUND_SERVICES_FROM_BACKGROUND" />
    <uses-permission android:name="android.permission.ACTIVITY_EMBEDDING" />
    <uses-permission android:name="android.permission.CONNECTIVITY_INTERNAL" />
    <uses-permission android:name="android.permission.MANAGE_CLOUDSEARCH" />
    <uses-permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE" />
    <uses-permission android:name="android.permission.MANAGE_AUTO_FILL" />
    <uses-permission android:name="android.permission.MANAGE_CONTENT_CAPTURE" />
    <uses-permission android:name="android.permission.MANAGE_CONTENT_SUGGESTIONS" />
    <uses-permission android:name="android.permission.MANAGE_APP_PREDICTIONS" />
    <uses-permission android:name="android.permission.MANAGE_LOW_POWER_STANDBY" />
    <uses-permission android:name="android.permission.SET_LOW_POWER_STANDBY_PORTS" />
    <uses-permission android:name="android.permission.MANAGE_SEARCH_UI" />
    <uses-permission android:name="android.permission.MANAGE_SMARTSPACE" />
    <uses-permission android:name="android.permission.MANAGE_WALLPAPER_EFFECTS_GENERATION" />
    <uses-permission android:name="android.permission.MANAGE_UI_TRANSLATION" />
    <uses-permission android:name="android.permission.NETWORK_SETTINGS" />
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
    <uses-permission android:name="android.permission.SET_TIME" />
    <uses-permission android:name="android.permission.SET_TIME_ZONE" />
    <uses-permission android:name="android.permission.DISABLE_HIDDEN_API_CHECKS" />
    <uses-permission android:name="android.permission.MANAGE_ROLE_HOLDERS" />
    <uses-permission android:name="android.permission.MANAGE_DEFAULT_APPLICATIONS" />
    <uses-permission android:name="android.permission.BYPASS_ROLE_QUALIFICATION" />
    <uses-permission android:name="android.permission.OBSERVE_ROLE_HOLDERS" />
    <uses-permission android:name="android.permission.STATUS_BAR_SERVICE" />
    <uses-permission android:name="android.permission.STATUS_BAR" />
    <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
    <!-- Permission needed to rename bugreport notifications (so they're not shown as Shell) -->
    <uses-permission android:name="android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME" />
    <uses-permission android:name="android.permission.REQUEST_NOTIFICATION_ASSISTANT_SERVICE" />
    <!-- Permission needed to hold a wakelock in dumpstate.cpp (drop_root_user()) -->
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <!-- Permission needed to enable/disable overlays -->
    <uses-permission android:name="android.permission.CHANGE_OVERLAY_PACKAGES" />
    <!-- Permission needed to access privileged VR APIs -->
    <uses-permission android:name="android.permission.RESTRICTED_VR_ACCESS" />
    <uses-permission android:name="android.permission.MANAGE_BIND_INSTANT_SERVICE" />
    <uses-permission android:name="android.permission.SET_HARMFUL_APP_WARNINGS" />
    <uses-permission android:name="android.permission.MANAGE_SENSORS" />
    <uses-permission android:name="android.permission.MANAGE_AUDIO_POLICY" />
    <uses-permission android:name="android.permission.QUERY_AUDIO_STATE" />
    <uses-permission android:name="android.permission.MANAGE_CAMERA" />
    <!-- Permissions needed to test system only camera devices -->
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.BACKGROUND_CAMERA" />
    <uses-permission android:name="android.permission.SYSTEM_CAMERA" />
    <!-- Permissions needed to test onCameraOpened/Closed callbacks -->
    <uses-permission android:name="android.permission.CAMERA_OPEN_CLOSE_LISTENER" />
    <!-- Permissions needed for CTS camera test: RecordingTest.java when assuming shell id -->
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.RECORD_BACKGROUND_AUDIO" />

    <!-- Permission needed to enable/disable Bluetooth/Wifi -->
    <uses-permission android:name="android.permission.MANAGE_BLUETOOTH_WHEN_WIRELESS_CONSENT_REQUIRED" />
    <uses-permission android:name="android.permission.MANAGE_WIFI_WHEN_WIRELESS_CONSENT_REQUIRED" />
    <!-- Permission needed to invoke DynamicSystem (AOT) -->
    <uses-permission android:name="android.permission.INSTALL_DYNAMIC_SYSTEM" />
    <!-- Used to clean up heap dumps on boot. -->
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />


    <uses-permission android:name="android.permission.CONTROL_KEYGUARD" />
    <uses-permission android:name="android.permission.CONTROL_REMOTE_APP_TRANSITION_ANIMATIONS" />
    <uses-permission android:name="android.permission.SUSPEND_APPS" />
    <uses-permission android:name="android.permission.QUARANTINE_APPS" />
    <uses-permission android:name="android.permission.OBSERVE_APP_USAGE" />
    <uses-permission android:name="android.permission.READ_CLIPBOARD_IN_BACKGROUND" />
    <!-- Permission needed to wipe the device for Test Harness Mode -->
    <uses-permission android:name="android.permission.ENABLE_TEST_HARNESS_MODE" />

    <!-- Permission needed for CTS test - CompanionDeviceManagerTest -->
    <uses-permission android:name="android.permission.COMPANION_APPROVE_WIFI_CONNECTIONS" />
    <uses-permission android:name="android.permission.MANAGE_COMPANION_DEVICES" />
    <uses-permission android:name="android.permission.REQUEST_COMPANION_PROFILE_APP_STREAMING" />
    <uses-permission android:name="android.permission.REQUEST_COMPANION_PROFILE_COMPUTER" />
    <uses-permission android:name="android.permission.REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION" />
    <uses-permission android:name="android.permission.REQUEST_COMPANION_PROFILE_NEARBY_DEVICE_STREAMING" />
    <uses-permission android:name="android.permission.REQUEST_COMPANION_PROFILE_WATCH" />
    <uses-permission android:name="android.permission.REQUEST_COMPANION_PROFILE_GLASSES" />
    <uses-permission android:name="android.permission.REQUEST_COMPANION_SELF_MANAGED" />
    <uses-permission android:name="android.permission.USE_COMPANION_TRANSPORTS" />
    <uses-permission android:name="android.permission.REQUEST_OBSERVE_DEVICE_UUID_PRESENCE" />
    <uses-permission android:name="android.permission.DELIVER_COMPANION_MESSAGES" />

    <uses-permission android:name="android.permission.MANAGE_APPOPS" />
    <uses-permission android:name="android.permission.WATCH_APPOPS" />

    <!-- Permission required for IncrementalLogCollectionTest -->
    <uses-permission android:name="android.permission.LOADER_USAGE_STATS" />

    <!-- Permission required for storage tests - FuseDaemonHostTest -->
    <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />

    <!-- Permission needed to run network tests in CTS -->
    <uses-permission android:name="android.permission.MANAGE_TEST_NETWORKS" />
    <!-- Permission needed to test tcp keepalive offload. -->
    <uses-permission android:name="android.permission.PACKET_KEEPALIVE_OFFLOAD" />

    <!-- Permission needed for CTS test - UnsupportedErrorDialogTests -->
    <uses-permission android:name="android.permission.RESET_APP_ERRORS" />

    <!-- Permission needed for CTS test - CtsSystemUiTestCases:PipNotificationTests -->
    <uses-permission android:name="android.permission.GET_INTENT_SENDER_INTENT" />

    <!-- Permission needed to run keyguard manager tests in CTS -->
    <uses-permission android:name="android.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS" />

    <!-- Permission needed to add/remove weak escrow token in CTS tests -->
    <uses-permission android:name="android.permission.MANAGE_WEAK_ESCROW_TOKEN" />

    <!-- Permission needed to set/clear/verify lockscreen credentials in CTS tests -->
    <uses-permission android:name="android.permission.SET_AND_VERIFY_LOCKSCREEN_CREDENTIALS" />

    <!-- Permission needed to test wallpaper component -->
    <uses-permission android:name="android.permission.SET_WALLPAPER" />
    <uses-permission android:name="android.permission.SET_WALLPAPER_COMPONENT" />

    <!-- Permission needed to test wallpaper dimming -->
    <uses-permission android:name="android.permission.SET_WALLPAPER_DIM_AMOUNT" />

    <!-- Permission needed to test wallpapers supporting ambient mode -->
    <uses-permission android:name="android.permission.AMBIENT_WALLPAPER" />

    <!-- Permission needed to test wallpaper read methods -->
    <uses-permission android:name="android.permission.READ_WALLPAPER_INTERNAL" />

    <!-- Permission required to test ContentResolver caching. -->
    <uses-permission android:name="android.permission.CACHE_CONTENT" />

    <!-- Permission required to test ExplicitHealthCheckServiceImpl. -->
    <uses-permission android:name="android.permission.BIND_EXPLICIT_HEALTH_CHECK_SERVICE" />

    <!-- Permission required for CTS test - CrossProfileAppsHostSideTest -->
    <uses-permission android:name="android.permission.INTERACT_ACROSS_PROFILES" />

    <!-- Permission required for CTS test - CrossProfileAppsHostSideTest -->
    <uses-permission android:name="android.permission.START_CROSS_PROFILE_ACTIVITIES" />

    <!-- permissions required for CTS test - PhoneStateListenerTest -->
    <uses-permission android:name="android.permission.LISTEN_ALWAYS_REPORTED_SIGNAL_STRENGTH" />

    <!-- Permissions required for granting and logging -->
    <uses-permission android:name="android.permission.LOG_COMPAT_CHANGE" />
    <uses-permission android:name="android.permission.READ_COMPAT_CHANGE_CONFIG" />
    <uses-permission android:name="android.permission.OVERRIDE_COMPAT_CHANGE_CONFIG" />
    <uses-permission android:name="android.permission.OVERRIDE_COMPAT_CHANGE_CONFIG_ON_RELEASE_BUILD" />

    <!-- Permission required for CTS test - BatterySaverTest -->
    <uses-permission android:name="android.permission.MODIFY_DAY_NIGHT_MODE" />

    <!-- Permission required for CTS test - UiModeManagerTest -->
    <uses-permission android:name="android.permission.ENTER_CAR_MODE_PRIORITIZED" />
    <uses-permission android:name="android.permission.READ_PROJECTION_STATE" />

    <!-- Permission required for CTS tests - UiModeManagerTest, CarModeInCallServiceTest -->
    <uses-permission android:name="android.permission.TOGGLE_AUTOMOTIVE_PROJECTION" />

    <!-- Permission required for CTS test - SystemConfigTest -->
    <uses-permission android:name="android.permission.READ_CARRIER_APP_INFO" />

    <!-- Permission required for CTS test - CarModeInCallServiceTest -->
    <uses-permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE" />

    <!-- Permission requried for CTS test - CellBroadcastIntentsTest -->
    <uses-permission android:name="android.permission.GRANT_RUNTIME_PERMISSIONS_TO_TELEPHONY_DEFAULTS" />

    <!-- Permission required for CTS test - TetheringManagerTest -->
    <uses-permission android:name="android.permission.TETHER_PRIVILEGED" />

    <!-- Permission required for CTS test - CtsOsTestCases -->
    <uses-permission android:name="android.permission.MANAGE_CRATES" />

    <!-- Allows setting brightness from the shell -->
    <uses-permission android:name="android.permission.CONTROL_DISPLAY_BRIGHTNESS" />

    <!-- Permission required for CTS test - ShortcutManagerUsageTest -->
    <uses-permission android:name="android.permission.ACCESS_SHORTCUTS" />

    <!-- Permissions required for CTS test - UsageStatsTest -->
    <uses-permission android:name="android.permission.MANAGE_NOTIFICATIONS" />
    <uses-permission android:name="android.permission.ACCESS_LOCUS_ID_USAGE_STATS" />

    <!-- Permission required for CTS test - CtsNfcResolverDerviceTest -->
    <uses-permission android:name="android.permission.SHOW_CUSTOMIZED_RESOLVER" />

    <!-- Permission needed for CTS test - MusicRecognitionManagerTest -->
    <uses-permission android:name="android.permission.MANAGE_MUSIC_RECOGNITION" />

    <!-- Permission needed for CTS test - CtsVoiceRecognitionTestCases -->
    <uses-permission android:name="android.permission.MANAGE_SPEECH_RECOGNITION" />

    <!-- Permissions required to test ambient display. -->
    <uses-permission android:name="android.permission.READ_DREAM_STATE" />
    <uses-permission android:name="android.permission.WRITE_DREAM_STATE" />

    <!-- Permission required for CTS test - CtsLightsManagerTest -->
    <uses-permission android:name="android.permission.CONTROL_DEVICE_LIGHTS" />

    <!-- Permission needed to test mainline permission module rollback -->
    <uses-permission android:name="android.permission.UPGRADE_RUNTIME_PERMISSIONS" />

    <!-- Permission needed to restart WiFi Subsystem -->
    <uses-permission android:name="android.permission.RESTART_WIFI_SUBSYSTEM" />

    <!-- Permission needed to read wifi network credentials for CtsNetTestCases -->
    <uses-permission android:name="android.permission.READ_WIFI_CREDENTIAL" />

    <!-- Permission needed to use wifi usability API's for CtsNetTestCases -->
    <uses-permission android:name="android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE" />

    <!-- Permission needed to test registering pull atom callbacks -->
    <uses-permission android:name="android.permission.REGISTER_STATS_PULL_ATOM" />

    <!-- Permission needed to test querying restricted metrics -->
    <uses-permission android:name="android.permission.READ_RESTRICTED_STATS" />

    <!-- Permission needed to modify settings overrideable by restore in CTS tests -->
    <uses-permission android:name="android.permission.MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE" />

    <!-- Permission required for testing system audio effect APIs. -->
    <uses-permission android:name="android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS" />

    <!-- Permission required for running networking unit tests -->
    <uses-permission android:name="android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS" />

    <!-- Permission required for CTS test - CtsHostsideNetworkTests -->
    <uses-permission android:name="android.permission.OBSERVE_NETWORK_POLICY" />

    <!-- Permissions required for CTS test - TunerTest -->
    <uses-permission android:name="android.permission.ACCESS_TV_DESCRAMBLER" />
    <uses-permission android:name="android.permission.ACCESS_TV_SHARED_FILTER" />
    <uses-permission android:name="android.permission.ACCESS_TV_TUNER" />
    <uses-permission android:name="android.permission.TUNER_RESOURCE_ACCESS" />

    <!-- Permissions required for CTS test - AutoRevokeTest -->
    <uses-permission android:name="android.permission.WHITELIST_AUTO_REVOKE_PERMISSIONS" />

    <!-- Permissions needed to test shared libraries -->
    <uses-permission android:name="android.permission.ACCESS_SHARED_LIBRARIES" />

    <!-- Permissions required for CTS test - TVInputManagerTest -->
    <uses-permission android:name="android.permission.ACCESS_TUNED_INFO" />
    <uses-permission android:name="android.permission.TV_INPUT_HARDWARE" />
    <uses-permission android:name="android.permission.TIS_EXTENSION_INTERFACE" />
    <uses-permission android:name="com.android.providers.tv.permission.ACCESS_WATCHED_PROGRAMS" />
    <uses-permission android:name="com.android.providers.tv.permission.WRITE_EPG_DATA" />

    <!-- Permission needed for CTS test - PrivilegedLocationPermissionTest -->
    <uses-permission android:name="android.permission.LOCATION_HARDWARE" />

    <!-- Permissions required for GTS test - GtsDialerAudioTestCases -->
    <uses-permission android:name="android.permission.CAPTURE_AUDIO_OUTPUT" />

    <!-- Permissions required for CTS test - AdbManagerTest -->
    <uses-permission android:name="android.permission.MANAGE_DEBUGGING" />

    <!-- Permission required for CTS test - CtsTelephonyTestCases -->
    <uses-permission android:name="android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE" />

    <!-- Permission required for CTS test - CtsTelephonyTestCases -->
    <uses-permission android:name="android.permission.PERFORM_IMS_SINGLE_REGISTRATION" />

    <!-- Permission needed for CTS test - DisplayTest -->
    <uses-permission android:name="android.permission.OVERRIDE_DISPLAY_MODE_REQUESTS" />

    <!-- Permission needed for CTS test - MatchContentFrameRateTest -->
    <uses-permission android:name="android.permission.MODIFY_REFRESH_RATE_SWITCHING_TYPE" />

    <!-- Permission needed for CTS test - DefaultDisplayModeTest -->
    <uses-permission android:name="android.permission.MODIFY_USER_PREFERRED_DISPLAY_MODE" />

    <!-- Permission needed for CTS test - HdrConversionTest -->
    <uses-permission android:name="android.permission.MODIFY_HDR_CONVERSION_MODE" />

    <!-- Permissions needed for manual testing telephony time zone detector behavior -->
    <uses-permission android:name="android.permission.SUGGEST_TELEPHONY_TIME_AND_ZONE" />

    <!-- Permissions needed for CTS test - TimeManagerTest -->
    <uses-permission android:name="android.permission.MANAGE_TIME_AND_ZONE_DETECTION" />
    <uses-permission android:name="android.permission.SUGGEST_EXTERNAL_TIME" />

    <!-- Permissions needed for CTS test - CtsLocaleManagerTestCases -->
    <uses-permission android:name="android.permission.READ_APP_SPECIFIC_LOCALES" />

    <!-- Permissions needed for CTS test - CtsLocaleManagerTestCases -->
    <uses-permission android:name="android.permission.SET_APP_SPECIFIC_LOCALECONFIG" />

    <!-- Permissions used for manual testing of time detection behavior. -->
    <uses-permission android:name="android.permission.SUGGEST_MANUAL_TIME" />
    <uses-permission android:name="android.permission.SUGGEST_TELEPHONY_TIME" />
    <uses-permission android:name="android.permission.SUGGEST_NETWORK_TIME" />
    <uses-permission android:name="android.permission.SUGGEST_GNSS_TIME" />

    <!-- Permission required for CTS test - android.server.biometrics -->
    <uses-permission android:name="android.permission.USE_BIOMETRIC" />

    <!-- Permission required for CTS test - android.server.biometrics -->
    <uses-permission android:name="android.permission.TEST_BIOMETRIC" />

    <!-- Permission required for CTS test - android.server.biometrics -->
    <uses-permission android:name="android.permission.SET_BIOMETRIC_DIALOG_ADVANCED" />

    <!-- Permissions required for CTS test - NotificationManagerTest -->
    <uses-permission android:name="android.permission.MANAGE_NOTIFICATION_LISTENERS" />

    <!-- Permissions required for CTS test - NotificationManagerZenTest -->
    <uses-permission android:name="android.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS" />

    <!-- Permissions required for CTS test - CtsContactsProviderTestCases -->
    <uses-permission android:name="android.contacts.permission.MANAGE_SIM_ACCOUNTS" />
    <uses-permission android:name="android.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS" />

    <!-- Permissions required for CTS test - CarrierMessagingServiceWrapprTest -->
    <uses-permission android:name="android.permission.BIND_CARRIER_SERVICES" />

    <!-- Allows overriding the system's device state from the shell -->
    <uses-permission android:name="android.permission.CONTROL_DEVICE_STATE" />

    <!-- Permissions required for CTS tests to close system dialogs -->
    <uses-permission android:name="android.permission.BROADCAST_CLOSE_SYSTEM_DIALOGS" />

    <!-- Permissions required for CTS test - HideOverlayWindowsTest -->
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
    <uses-permission android:name="android.permission.SYSTEM_APPLICATION_OVERLAY" />

    <!-- Permission required for CTS test - CtsHdmiCecHostTestCases -->
    <uses-permission android:name="android.permission.HDMI_CEC" />

    <!-- Permission needed for CTS test - MediaPlayerTest -->
    <uses-permission android:name="android.permission.BIND_IMS_SERVICE" />

    <!-- Permission needed for CTS test - WifiManagerTest -->
    <uses-permission android:name="android.permission.WIFI_ACCESS_COEX_UNSAFE_CHANNELS" />
    <uses-permission android:name="android.permission.WIFI_UPDATE_COEX_UNSAFE_CHANNELS" />
    <uses-permission android:name="android.permission.NEARBY_WIFI_DEVICES" />
    <uses-permission android:name="android.permission.MANAGE_WIFI_INTERFACES" />
    <uses-permission android:name="android.permission.OVERRIDE_WIFI_CONFIG" />
    <!-- Permission needed for CTS test - ConcurrencyTest#testP2pExternalApprover
         P2P external approver API sets require MANAGE_WIFI_NETWORK_SELECTION permission. -->
    <uses-permission android:name="android.permission.MANAGE_WIFI_NETWORK_SELECTION" />
    <!-- Permission needed for CTS test - ConcurrencyTest#testP2pSetWfdInfo -->
    <uses-permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY" />

    <!-- Permission required for CTS test - CtsThreadNetworkTestCases -->
    <uses-permission android:name="android.permission.THREAD_NETWORK_PRIVILEGED"/>
    <!-- Permission required to access Thread network shell commands for testing -->
    <uses-permission android:name="android.permission.THREAD_NETWORK_TESTING"/>

    <!-- Permission required for CTS tests to enable/disable rate limiting toasts. -->
    <uses-permission android:name="android.permission.MANAGE_TOAST_RATE_LIMITING" />

    <!-- Permission required for CTS to test sensor privacy behavior -->
    <uses-permission android:name="android.permission.MANAGE_SENSOR_PRIVACY" />
    <uses-permission android:name="android.permission.OBSERVE_SENSOR_PRIVACY" />

    <!-- Permission needed for CTS test - CallLogTest -->
    <uses-permission android:name="com.android.voicemail.permission.READ_VOICEMAIL" />

    <!-- Permission required for GTS test - GtsAssistIntentTestCases -->
    <uses-permission android:name="android.permission.MANAGE_SOUND_TRIGGER" />
    <uses-permission android:name="android.permission.CAPTURE_AUDIO_HOTWORD" />
    <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
    <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
    <uses-permission android:name="android.permission.BIND_RESUME_ON_REBOOT_SERVICE" />

    <!-- Permission required for CTS test - CtsRebootReadinessTestCases -->
    <uses-permission android:name="android.permission.SIGNAL_REBOOT_READINESS" />

    <!-- Permission required for CTS test - PeopleManagerTest -->
    <uses-permission android:name="android.permission.READ_PEOPLE_DATA" />

    <!-- Permission required for CTS test - CtsTaskFpsCallbackTestCases -->
    <uses-permission android:name="android.permission.ACCESS_FPS_COUNTER" />

    <!-- Permission required for CTS test - CtsGameManagerTestCases -->
    <uses-permission android:name="android.permission.MANAGE_GAME_MODE" />

    <!-- Permission required for CTS test - CtsGameServiceTestCases -->
    <uses-permission android:name="android.permission.SET_GAME_SERVICE" />
    <uses-permission android:name="android.permission.MANAGE_GAME_ACTIVITY" />

    <!-- Permission required for CTS test - ClipboardManagerTest -->
    <uses-permission android:name="android.permission.SET_CLIP_SOURCE" />

    <!-- Permission required for CTS test - CtsInputMethodTestCases -->
    <uses-permission android:name="android.permission.TEST_INPUT_METHOD" />

    <!-- Permission required for CTS test - FontManagerTest -->
    <uses-permission android:name="android.permission.UPDATE_FONTS" />

    <!-- Permission required for Launcher testing - DigitalWellbeingToastTest -->
    <uses-permission android:name="android.permission.GET_TOP_ACTIVITY_INFO" />

    <!-- Permission required for hotword detection service CTS tests -->
    <uses-permission android:name="android.permission.MANAGE_HOTWORD_DETECTION" />
    <uses-permission android:name="android.permission.BIND_HOTWORD_DETECTION_SERVICE" />

    <!-- Permission required for CTS test - CtsVoiceInteractionTestCases -->
    <uses-permission android:name="android.permission.SOUND_TRIGGER_RUN_IN_BATTERY_SAVER" />

    <uses-permission android:name="android.permission.BIND_VISUAL_QUERY_DETECTION_SERVICE" />

    <!-- Permission required for CTS test - KeyguardLockedStateApiTest -->
    <uses-permission android:name="android.permission.SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE" />

    <uses-permission android:name="android.permission.MANAGE_APP_HIBERNATION" />

    <!-- Permission required for CTS test - MediaCodecResourceTest -->
    <uses-permission android:name="android.permission.MEDIA_RESOURCE_OVERRIDE_PID" />

    <!-- Permission required for CTS test - ResourceObserverNativeTest -->
    <uses-permission android:name="android.permission.REGISTER_MEDIA_RESOURCE_OBSERVER" />

    <!-- Permission required for CTS test - CtsAttributionSourceTestCases -->
    <uses-permission android:name="android.permission.RENOUNCE_PERMISSIONS" />

    <!-- Permission required for CTS test - android.widget.cts.ToastTest -->
    <uses-permission android:name="android.permission.UNLIMITED_TOASTS" />

    <!-- Permission required for CTS test - CtsAlarmManagerTestCases -->
    <uses-permission android:name="android.permission.SCHEDULE_PRIORITIZED_ALARM" />

    <!-- Permission required for CTS test - SystemMediaRouter2Test -->
    <uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL" />
    <uses-permission android:name="android.permission.MEDIA_ROUTING_CONTROL" />
    <uses-permission android:name="android.permission.MODIFY_AUDIO_ROUTING" />

    <!-- Permission required for CTS test - SoundDoseHelperTest -->
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED" />

    <!-- Permission required for CTS test - CtsAmbientContextDetectionServiceDeviceTest -->
    <uses-permission android:name="android.permission.ACCESS_AMBIENT_CONTEXT_EVENT" />

    <!-- Permission required for CTS test - CtsWearableSensingServiceTestCases -->
    <uses-permission android:name="android.permission.MANAGE_WEARABLE_SENSING_SERVICE" />

    <!-- Permission required for CTS test - OnDeviceIntelligenceManagerTest -->
    <uses-permission android:name="android.permission.USE_ON_DEVICE_INTELLIGENCE" />

    <!-- Permission required for CTS test - CallAudioInterceptionTest -->
    <uses-permission android:name="android.permission.CALL_AUDIO_INTERCEPTION" />

    <!-- Permission required for CTS test - CtsRotationResolverServiceDeviceTestCases -->
    <uses-permission android:name="android.permission.MANAGE_ROTATION_RESOLVER" />

    <!-- Permission required for CTS test - CtsUwbTestCases -->
    <uses-permission android:name="android.permission.UWB_PRIVILEGED" />
    <uses-permission android:name="android.permission.UWB_RANGING" />

    <!-- Permission required for CTS test - CtsRangingTestCases -->
    <uses-permission android:name="android.permission.RANGING" />

    <!-- Permission required for CTS test - CtsAlarmManagerTestCases -->
    <uses-permission android:name="android.permission.UPDATE_DEVICE_STATS" />

    <!-- Permission required for CTS test - GlobalSearchSessionPlatformCtsTests -->
    <uses-permission android:name="android.permission.READ_GLOBAL_APP_SEARCH_DATA" />

    <!-- Permission required for GTS test - PendingSystemUpdateTest -->
    <uses-permission android:name="android.permission.NOTIFY_PENDING_SYSTEM_UPDATE" />

    <!-- Permission required to run the `vm` tool which manages on-device virtual machines -->
    <uses-permission android:name="android.permission.MANAGE_VIRTUAL_MACHINE" />
    <uses-permission android:name="android.permission.USE_CUSTOM_VIRTUAL_MACHINE" />
    <uses-permission android:name="android.permission.DEBUG_VIRTUAL_MACHINE" />

    <!-- Permission required to run GtsAssistantTestCases -->
    <uses-permission android:name="android.permission.MANAGE_VOICE_KEYPHRASES" />

    <!-- Permission required for CTS test - SettingsMultiPaneDeepLinkTest -->
    <uses-permission android:name="android.permission.LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK" />

    <!-- Permission required for ATS test - CarDevicePolicyManagerTest -->
    <uses-permission android:name="android.permission.LOCK_DEVICE" />

    <!-- Permissions required for CTS test - CtsSafetyCenterTestCases -->
    <uses-permission android:name="android.permission.SEND_SAFETY_CENTER_UPDATE" />
    <uses-permission android:name="android.permission.READ_SAFETY_CENTER_STATUS" />
    <uses-permission android:name="android.permission.MANAGE_SAFETY_CENTER" />

    <!-- Permissions required for CTS test - CtsVirtualDevicesTestCases -->
    <uses-permission android:name="android.permission.CREATE_VIRTUAL_DEVICE" />
    <uses-permission android:name="android.permission.ADD_TRUSTED_DISPLAY" />
    <uses-permission android:name="android.permission.ADD_ALWAYS_UNLOCKED_DISPLAY" />


    <!-- Permission required for CTS test - Notification test suite -->
    <uses-permission android:name="android.permission.REVOKE_POST_NOTIFICATIONS_WITHOUT_KILL" />

    <!-- Permission required for test - CellBroadcastComplianceTest -->
    <uses-permission android:name="com.android.cellbroadcastservice.FULL_ACCESS_CELL_BROADCAST_HISTORY" />

    <!-- Permission required for CTS test - CaptioningManagerTest -->
    <uses-permission android:name="android.permission.SET_SYSTEM_AUDIO_CAPTION" />

    <!-- Permission required for CTS test - CtsTelephonyTestCases -->
    <uses-permission android:name="android.permission.BIND_TELECOM_CONNECTION_SERVICE" />
    <uses-permission android:name="android.permission.MODIFY_CELL_BROADCASTS" />
    <uses-permission android:name="android.permission.SATELLITE_COMMUNICATION" />
    <uses-permission android:name="android.permission.ACCESS_LAST_KNOWN_CELL_ID" />

    <!-- Permission required for CTS test - CtsPersistentDataBlockManagerTestCases -->
    <uses-permission android:name="android.permission.ACCESS_PDB_STATE" />

    <!-- Permission required for CTS test - CtsAppEnumerationTestCases -->
    <uses-permission android:name="android.permission.MAKE_UID_VISIBLE" />

    <!-- Permission required for CTS test - CtsInputTestCases -->
    <uses-permission android:name="android.permission.ASSOCIATE_INPUT_DEVICE_TO_DISPLAY" />

    <!-- Permission required for CTS test - CtsDevicePolicyManagerTestCases -->
    <uses-permission android:name="android.permission.READ_NEARBY_STREAMING_POLICY" />

    <!-- Permission required for CTS test - CtsDevicePolicyTestCases -->
    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_AUDIT_LOGGING" />

    <!-- Permission required for CTS test - CtsKeystoreTestCases -->
    <uses-permission android:name="android.permission.REQUEST_UNIQUE_ID_ATTESTATION" />

    <!-- Permission required for CTS test - CtsWindowManagerDeviceTestCases-->
    <uses-permission android:name="android.permission.UPDATE_LOCK_TASK_PACKAGES" />

    <!-- Permission required for CTS test - ActivityPermissionRationaleTest -->
    <uses-permission android:name="android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY" />

    <!-- Permission required for CTS test - CtsDeviceLockTestCases -->
    <uses-permission android:name="android.permission.MANAGE_DEVICE_LOCK_STATE" />

    <!-- Permission required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_CAMERA" />

    <!-- Permission required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE" />

    <!-- Permission required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_DATA_SYNC" />

    <!-- Permission required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_LOCATION" />

    <!-- Permission required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK" />

    <!-- Permission required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_MEDIA_PROJECTION" />

    <!-- Permission required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_MICROPHONE" />

    <!-- Permission required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_PHONE_CALL" />

    <!-- Permission required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_HEALTH" />

    <!-- Permission required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_REMOTE_MESSAGING" />

    <!-- Permission required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_SYSTEM_EXEMPTED" />

    <!-- Permission required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_FILE_MANAGEMENT" />

    <!-- Permission required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_MEDIA_PROCESSING" />

    <!-- Permission required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_SPECIAL_USE" />

    <!-- Permissions required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.CAPTURE_MEDIA_OUTPUT" />

    <!-- Permissions required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.CAPTURE_TUNER_AUDIO_INPUT" />

    <!-- Permissions required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.CAPTURE_VOICE_COMMUNICATION_OUTPUT" />

    <!-- Permissions required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM" />

    <!-- Permissions required for CTS test - CtsAppFgsTestCases -->
    <uses-permission android:name="android.permission.USE_EXACT_ALARM" />

    <!-- Permission required for CTS test - CtsHardwareTestCases -->
    <uses-permission android:name="android.permission.REMAP_MODIFIER_KEYS" />

    <!-- Permission required for CTS test - ApplicationExemptionsTests -->
    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_APP_EXEMPTIONS" />

    <!-- Permission required for CTS test - CtsPackageInstallTestCases-->
    <uses-permission android:name="android.permission.GET_APP_METADATA" />

    <!-- Permission required for CTS test - CtsHealthConnectDeviceTestCases -->
    <uses-permission android:name="android.permission.DELETE_STAGED_HEALTH_CONNECT_REMOTE_DATA" />
    <uses-permission android:name="android.permission.STAGE_HEALTH_CONNECT_REMOTE_DATA" />

    <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_SYSTEM_EXEMPTED" />

    <!-- Permissions required for CTS test - CtsBroadcastRadioTestCases -->
    <uses-permission android:name="android.permission.ACCESS_BROADCAST_RADIO" />

    <!-- Permission required for CTS test - ActivityCaptureCallbackTests -->
    <uses-permission android:name="android.permission.DETECT_SCREEN_CAPTURE" />

    <!-- Permission required for CTS test - CtsTelephonyProviderTestCases -->
    <uses-permission android:name="android.permission.WRITE_APN_SETTINGS" />
    <uses-permission android:name="android.permission.WRITE_BLOCKED_NUMBERS" />
    <uses-permission android:name="android.permission.READ_BLOCKED_NUMBERS" />

    <uses-permission android:name="android.permission.LOG_FOREGROUND_RESOURCE_USE" />

    <!-- Permission required for CTS test - CtsPackageInstallTestCases -->
    <uses-permission android:name="android.permission.READ_INSTALLED_SESSION_PATHS" />

    <!-- Permission required for GTS test - GtsAttestationVerificationDeviceSideTestCases -->
    <uses-permission android:name="android.permission.USE_ATTESTATION_VERIFICATION_SERVICE" />

    <!-- Permission required for GTS test - GtsCredentialsTestCases -->
    <uses-permission android:name="android.permission.LAUNCH_CREDENTIAL_SELECTOR" />
    <!-- Permission required for CTS test IntentRedirectionTest -->
    <uses-permission android:name="android.permission.QUERY_CLONED_APPS" />
    <!-- Permission required for adb display commands `enable-display` and `disable-display`. -->
    <uses-permission android:name="android.permission.MANAGE_DISPLAYS" />
    <!-- Permission required for accessing all content provider mime types -->
    <uses-permission android:name="android.permission.GET_ANY_PROVIDER_TYPE" />

    <!-- Permission required for CTS-in-sandbox tests -->
    <uses-permission android:name="android.permission.START_ACTIVITIES_FROM_SDK_SANDBOX" />

    <!-- Permission required for CTS test - CtsWallpaperTestCases -->
    <uses-permission android:name="android.permission.ALWAYS_UPDATE_WALLPAPER" />

    <!-- Permissions required for CTS test - CtsVoiceInteractionTestCases -->
    <uses-permission android:name="android.permission.RESET_HOTWORD_TRAINING_DATA_EGRESS_COUNT" />
    <uses-permission android:name="android.permission.RECEIVE_SANDBOX_TRIGGER_AUDIO" />

    <uses-permission android:name="android.permission.GET_BINDING_UID_IMPORTANCE" />

    <!-- Permissions required for CTS test - CtsAccessibilityServiceTestCases-->
    <uses-permission android:name="android.permission.ACCESSIBILITY_MOTION_EVENT_OBSERVING" />

    <!-- Permission required for Cts test - CtsNotificationTestCases -->
    <uses-permission android:name="android.permission.RECEIVE_SENSITIVE_NOTIFICATIONS" />

    <!-- Permission required for Cts test - CtsWindowManagerJetpackTestCases -->
    <uses-permission android:name="android.permission.EMBED_ANY_APP_IN_UNTRUSTED_MODE" />

    <!-- Permission required for BinaryTransparencyService shell API and host test -->
    <uses-permission android:name="android.permission.GET_BACKGROUND_INSTALLED_PACKAGES" />

    <!-- Permissions required for CTS test - CtsPermissionUiTestCases -->
    <uses-permission android:name="android.permission.MANAGE_ENHANCED_CONFIRMATION_STATES" />

    <!-- Permissions required for CTS test - CtsContactKeysProviderPrivilegedApp -->
    <uses-permission android:name="android.permission.WRITE_VERIFICATION_STATE_E2EE_CONTACT_KEYS"/>

    <!-- Permission required for Cts test ScreenRecordingCallbackTests -->
    <uses-permission android:name="android.permission.DETECT_SCREEN_RECORDING" />

    <!-- Permissions required for CTS test - GrammaticalInflectionManagerTest -->
    <uses-permission android:name="android.permission.READ_SYSTEM_GRAMMATICAL_GENDER" />

    <!-- Permission required for CTS test - CtsPackageManagerTestCases-->
    <uses-permission android:name="android.permission.DOMAIN_VERIFICATION_AGENT" />

    <!-- Permission required for Cts test - CtsInputTestCases -->
    <uses-permission
        android:name="android.permission.OVERRIDE_SYSTEM_KEY_BEHAVIOR_IN_FOCUSED_WINDOW" />

    <!-- Permission required for Cts test - CtsSettingsTestCases -->
    <uses-permission android:name="android.permission.PREPARE_FACTORY_RESET" />

    <!-- Permission required for CTS test - FileIntegrityManagerTest -->
    <uses-permission android:name="android.permission.SETUP_FSVERITY" />

    <!-- Permission required for CTS test - CtsNfcTestCases -->
    <uses-permission android:name="android.permission.NFC_SET_CONTROLLER_ALWAYS_ON" />

    <application
        android:label="@string/app_label"
        android:theme="@android:style/Theme.DeviceDefault.DayNight"
        android:defaultToDeviceProtectedStorage="true"
        android:directBootAware="true">

        <provider
            android:name="androidx.core.content.FileProvider"
            android:authorities="com.android.shell"
            android:grantUriPermissions="true"
            android:exported="false">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/file_provider_paths" />
        </provider>

        <provider
            android:name=".BugreportStorageProvider"
            android:authorities="com.android.shell.documents"
            android:grantUriPermissions="true"
            android:exported="true"
            android:permission="android.permission.MANAGE_DOCUMENTS"
            android:enabled="false">
            <intent-filter>
                <action android:name="android.content.action.DOCUMENTS_PROVIDER" />
            </intent-filter>
        </provider>

        <provider
            android:name=".HeapDumpProvider"
            android:authorities="com.android.shell.heapdump"
            android:grantUriPermissions="true"
            android:exported="false" />

        <activity
            android:name=".BugreportWarningActivity"
            android:theme="@*android:style/Theme.DeviceDefault.Dialog.Alert.DayNight"
            android:finishOnCloseSystemDialogs="true"
            android:excludeFromRecents="true"
            android:exported="false" />

        <activity
            android:name=".HeapDumpActivity"
            android:theme="@*android:style/Theme.Translucent.NoTitleBar"
            android:label="@*android:string/dump_heap_title"
            android:finishOnCloseSystemDialogs="true"
            android:noHistory="true"
            android:excludeFromRecents="true"
            android:exported="false" />

        <receiver
            android:name=".BugreportRequestedReceiver"
            android:exported="true"
            android:permission="android.permission.TRIGGER_SHELL_BUGREPORT">
            <intent-filter>
                <action android:name="com.android.internal.intent.action.BUGREPORT_REQUESTED" />
            </intent-filter>
        </receiver>

        <receiver
            android:name=".HeapDumpReceiver"
            android:exported="true"
            android:permission="android.permission.DUMP">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="com.android.internal.intent.action.HEAP_DUMP_FINISHED" />
                <action android:name="com.android.shell.action.DELETE_HEAP_DUMP" />
            </intent-filter>
        </receiver>

        <receiver
            android:name=".ProfcollectUploadReceiver"
            android:exported="true"
            android:permission="android.permission.TRIGGER_SHELL_PROFCOLLECT_UPLOAD">
            <intent-filter>
                <action android:name="com.android.shell.action.PROFCOLLECT_UPLOAD" />
            </intent-filter>
        </receiver>

        <service
            android:name=".BugreportProgressService"
            android:foregroundServiceType="systemExempted"
            android:exported="false" />
    </application>
</manifest>
