<?xml version="1.0" encoding="utf-8"?>
<manifest
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  package="com.android.permissioncontroller"
  coreApp="true"
  android:versionCode="330000000"
  android:versionName="33 system image"
>

    <original-package android:name="com.android.permissioncontroller" />

    <permission android:name="com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER"
                android:protectionLevel="signature" />

    <uses-permission android:name="android.permission.MANAGE_USERS" />
    <uses-permission android:name="android.permission.GRANT_RUNTIME_PERMISSIONS" />
    <uses-permission android:name="android.permission.REVOKE_RUNTIME_PERMISSIONS" />
    <uses-permission android:name="android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY" />
    <uses-permission android:name="android.permission.WHITELIST_RESTRICTED_PERMISSIONS" />
    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
    <uses-permission android:name="android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS" />
    <uses-permission android:name="android.permission.UPDATE_APP_OPS_STATS" />
    <uses-permission android:name="android.permission.MANAGE_APP_OPS_MODES" />
    <uses-permission android:name="android.permission.GET_APP_OPS_STATS" />
    <uses-permission android:name="android.permission.KILL_UID" />
    <uses-permission android:name="android.permission.REQUEST_DELETE_PACKAGES" />
    <uses-permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE" />
    <uses-permission android:name="android.permission.MANAGE_APP_OPS_RESTRICTIONS" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-permission android:name="android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS" />
    <uses-permission android:name="android.permission.MANAGE_ROLE_HOLDERS" />
    <uses-permission android:name="android.permission.OBSERVE_ROLE_HOLDERS" />
    <uses-permission android:name="android.permission.SET_PREFERRED_APPLICATIONS" />
    <uses-permission android:name="android.permission.ACCESS_SHARED_LIBRARIES" />
    <uses-permission android:name="com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER" />
    <uses-permission android:name="android.permission.ACCESS_INSTANT_APPS" />
    <uses-permission android:name="android.permission.REQUEST_INCIDENT_REPORT_APPROVAL" />
    <uses-permission android:name="android.permission.APPROVE_INCIDENT_REPORTS" />
    <uses-permission android:name="android.permission.READ_DEVICE_CONFIG" />
    <uses-permission android:name="android.permission.OPEN_ACCESSIBILITY_DETAILS_SETTINGS" />
    <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
    <uses-permission android:name="android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME" />
    <uses-permission android:name="android.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS" />
    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />
    <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"
                     android:maxSdkVersion="32" />
    <uses-permission android:name="android.permission.MODIFY_AUDIO_ROUTING" />
    <uses-permission android:name="android.permission.OBSERVE_SENSOR_PRIVACY" />
    <!-- TODO(b/170896938): make this privileged(signature may only work on pixel) -->
    <uses-permission android:name="android.permission.MANAGE_NOTIFICATION_LISTENERS" />
    <uses-permission android:name="android.permission.START_VIEW_PERMISSION_USAGE" />
    <uses-permission android:name="android.permission.MANAGE_APP_HIBERNATION" />
    <uses-permission android:name="android.permission.MANAGE_SENSOR_PRIVACY" />
    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
    <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
    <uses-permission android:name="android.permission.MANAGE_SAFETY_CENTER" />
    <uses-permission android:name="android.permission.READ_SAFETY_CENTER_STATUS" />
    <uses-permission android:name="android.permission.SEND_SAFETY_CENTER_UPDATE" />
    <!--SYSTEM_APPLICATION_OVERLAY will be granted on T+, as installer protection is added in T -->
    <uses-permission android:name="android.permission.SYSTEM_APPLICATION_OVERLAY"/>
    <uses-permission android:name="android.permission.LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK" />
    <uses-permission android:name="android.permission.SET_UNRESTRICTED_KEEP_CLEAR_AREAS"/>
    <uses-permission android:name="android.permission.START_TASKS_FROM_RECENTS" />
    <uses-permission android:name="android.permission.READ_APP_SPECIFIC_LOCALES" />
    <uses-permission android:name="android.permission.GET_APP_METADATA" />
    <uses-permission android:name="android.permission.NFC_PREFERRED_PAYMENT_INFO" />
    <uses-permission android:name="android.permission.MANAGE_ENHANCED_CONFIRMATION_STATES" />
    <uses-permission android:name="android.permission.READ_SYSTEM_GRAMMATICAL_GENDER" />
    <uses-permission android:name="android.permission.MANAGE_CLIPBOARD_ACCESS_NOTIFICATION" />

    <application android:name="com.android.permissioncontroller.PermissionControllerApplication"
            android:label="@string/app_name"
            android:icon="@drawable/ic_permission_controller_app_icon"
            android:allowBackup="false"
            android:allowClearUserData="false"
            android:supportsRtl="true"
            android:defaultToDeviceProtectedStorage="true"
            android:forceQueryable="true"
            android:directBootAware="true"
            android:theme="@style/FilterTouches">

        <receiver android:name="com.android.permissioncontroller.permission.service.LocationAccessCheck$SetupPeriodicBackgroundLocationAccessCheck"
                  android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="com.android.permissioncontroller.action.SET_UP_LOCATION_ACCESS_CHECK" />
            </intent-filter>
        </receiver>

        <receiver
            android:name="com.android.permissioncontroller.privacysources.SetupPeriodicNotificationListenerCheck"
            android:enabled="@bool/is_at_least_t"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="com.android.permissioncontroller.action.SET_UP_NOTIFICATION_LISTENER_CHECK" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.permissioncontroller.hibernation.HibernationBroadcastReceiver"
                  android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="com.android.permissioncontroller.action.SET_UP_HIBERNATION" />
                <action android:name="android.intent.action.TIME_SET" />
                <action android:name="android.intent.action.TIMEZONE_CHANGED" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.permissioncontroller.hibernation.DismissHandler"
            android:enabled="@bool/is_at_least_t"/>

        <receiver android:name="com.android.permissioncontroller.permission.service.LocationAccessCheck$NotificationDeleteHandler" />

        <receiver android:name="com.android.permissioncontroller.permission.service.LocationAccessCheck$NotificationClickHandler" />

        <receiver android:name="com.android.permissioncontroller.permission.service.LocationAccessCheck$SafetyCenterPrimaryActionHandler"
                  android:enabled="@bool/is_at_least_t" />

        <receiver android:name="com.android.permissioncontroller.permission.service.LocationAccessCheck$WarningCardDismissalHandler"
                  android:enabled="@bool/is_at_least_t"/>

        <receiver android:name="com.android.permissioncontroller.permission.service.LocationAccessCheck$PackageResetHandler"
                  android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.PACKAGE_FULLY_REMOVED"/>
                <action android:name="android.intent.action.PACKAGE_DATA_CLEARED" />
                <data android:scheme="package" />
            </intent-filter>
        </receiver>

        <receiver
            android:name="com.android.permissioncontroller.privacysources.NotificationListenerCheckNotificationDeleteHandler"
            android:enabled="@bool/is_at_least_t" />

        <receiver
            android:name="com.android.permissioncontroller.privacysources.DisableNotificationListenerComponentHandler"
            android:enabled="@bool/is_at_least_t" />

        <receiver
            android:name="com.android.permissioncontroller.privacysources.NotificationListenerActionCardDismissalReceiver"
            android:enabled="@bool/is_at_least_t" />

        <receiver
            android:name="com.android.permissioncontroller.privacysources.NotificationListenerPackageResetHandler"
            android:enabled="@bool/is_at_least_t"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.PACKAGE_FULLY_REMOVED"/>
                <action android:name="android.intent.action.PACKAGE_DATA_CLEARED" />
                <data android:scheme="package" />
            </intent-filter>
        </receiver>

        <receiver
            android:name="com.android.permissioncontroller.privacysources.SafetyCenterReceiver"
            android:enabled="@bool/is_at_least_t"
            android:exported="true">
            <intent-filter>
                <action android:name="android.safetycenter.action.SAFETY_CENTER_ENABLED_CHANGED"/>
                <action android:name="android.safetycenter.action.REFRESH_SAFETY_SOURCES"/>
                <action android:name="android.intent.action.BOOT_COMPLETED"/>
            </intent-filter>
        </receiver>

        <service android:name="com.android.permissioncontroller.permission.service.LocationAccessCheck$LocationAccessCheckJobService"
                 android:permission="android.permission.BIND_JOB_SERVICE" />

        <service
            android:name="com.android.permissioncontroller.privacysources.NotificationListenerCheckJobService"
            android:enabled="@bool/is_at_least_t"
            android:permission="android.permission.BIND_JOB_SERVICE" />

        <service android:name="com.android.permissioncontroller.hibernation.HibernationJobService"
                 android:permission="android.permission.BIND_JOB_SERVICE" />

        <service android:name="com.android.permissioncontroller.permission.service.PermissionEventCleanupJobService"
                 android:permission="android.permission.BIND_JOB_SERVICE" />

        <service
            android:name="com.android.permissioncontroller.safetycenter.service.SafetyCenterBackgroundRefreshJobService"
            android:enabled="@bool/is_at_least_t"
            android:permission="android.permission.BIND_JOB_SERVICE"
            android:exported="false" />

        <receiver
            android:name="com.android.permissioncontroller.safetycenter.service.SafetyCenterBackgroundRefreshJobService$SetupSafetyCenterBackgroundRefreshReceiver"
            android:enabled="@bool/is_at_least_t"
            android:exported="false">
            <intent-filter>
                <action android:name="android.safetycenter.action.SAFETY_CENTER_ENABLED_CHANGED"/>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
        </receiver>

        <service
            android:name="com.android.permissioncontroller.permission.service.v34.SafetyLabelChangesJobService"
            android:enabled="@bool/is_at_least_u"
            android:permission="android.permission.BIND_JOB_SERVICE"
            android:exported="false" />

        <receiver
            android:name="com.android.permissioncontroller.permission.service.v34.SafetyLabelChangesJobService$Receiver"
            android:enabled="@bool/is_at_least_u"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="com.android.permissioncontroller.action.SET_UP_SAFETY_LABEL_CHANGES_JOB" />
            </intent-filter>
        </receiver>

        <receiver
            android:name="com.android.permissioncontroller.permission.service.v34.SafetyLabelChangesJobService$NotificationDeleteHandler"
            android:enabled="@bool/is_at_least_u">
        </receiver>

        <receiver
            android:name="com.android.permissioncontroller.privacysources.AccessibilityOnBootReceiver"
            android:enabled="@bool/is_at_least_t"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="com.android.permissioncontroller.action.SET_UP_ACCESSIBILITY_CHECK" />
            </intent-filter>
        </receiver>

        <receiver
            android:name="com.android.permissioncontroller.privacysources.AccessibilityWarningCardDismissalReceiver"
            android:enabled="@bool/is_at_least_t" />

        <receiver
            android:name="com.android.permissioncontroller.privacysources.AccessibilityRemoveAccessHandler"
            android:enabled="@bool/is_at_least_t" />

        <receiver
            android:name="com.android.permissioncontroller.privacysources.AccessibilityNotificationDeleteHandler"
            android:enabled="@bool/is_at_least_t" />

        <receiver
            android:name="com.android.permissioncontroller.privacysources.AccessibilityPackageResetHandler"
            android:enabled="@bool/is_at_least_t"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.PACKAGE_FULLY_REMOVED" />
                <action android:name="android.intent.action.PACKAGE_DATA_CLEARED" />
                <data android:scheme="package" />
            </intent-filter>
        </receiver>

        <receiver
            android:name="com.android.permissioncontroller.safetylabel.SafetyLabelChangedBroadcastReceiver"
            android:enabled="@bool/is_at_least_u"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.PACKAGE_ADDED" />
                <action android:name="com.android.permissioncontroller.action.PACKAGE_ADDED_PERMISSIONCONTROLLER_FORWARDED" />
                <data android:scheme="package" />
            </intent-filter>
        </receiver>

        <service
            android:name="com.android.permissioncontroller.privacysources.AccessibilityJobService"
            android:enabled="@bool/is_at_least_t"
            android:permission="android.permission.BIND_JOB_SERVICE" />

        <activity android:name="com.android.permissioncontroller.permission.ui.GrantPermissionsActivity"
                  android:configChanges="keyboardHidden|screenSize"
                  android:excludeFromRecents="true"
                  android:exported="true"
                  android:theme="@style/GrantPermissions.FilterTouches"
                  android:windowSoftInputMode="stateAlwaysHidden|adjustNothing"
                  android:visibleToInstantApps="true"
                  android:inheritShowWhenLocked="true"
                  android:canDisplayOnRemoteDevices="@bool/is_at_least_v">
            <intent-filter android:priority="1">
                <action android:name="android.content.pm.action.REQUEST_PERMISSIONS" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <intent-filter android:priority="1">
                <action android:name="android.content.pm.action.REQUEST_PERMISSIONS_FOR_OTHER" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.permissioncontroller.permission.ui.PermissionDialogStreamingBlockedActivity"
            android:theme="@style/PermissionDialog.FilterTouches"
            android:excludeFromRecents="true"
            android:exported="false"
            android:enabled="@bool/is_at_least_v">
        </activity>

        <activity android:name="com.android.permissioncontroller.ecm.EnhancedConfirmationDialogActivity"
            android:theme="@style/Theme.EnhancedConfirmationDialog.FilterTouches"
            android:excludeFromRecents="true"
            android:exported="true"
            android:launchMode="singleTop"
            android:permission="android.permission.MANAGE_ENHANCED_CONFIRMATION_STATES"
            android:enabled="@bool/is_at_least_v">
            <intent-filter android:priority="1">
                <action android:name="android.app.ecm.action.SHOW_ECM_RESTRICTED_SETTING_DIALOG" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.permissioncontroller.permission.ui.v34.PermissionRationaleActivity"
                  android:configChanges="keyboardHidden|screenSize"
                  android:windowSoftInputMode="stateAlwaysHidden|adjustNothing"
                  android:excludeFromRecents="true"
                  android:exported="false"
                  android:theme="@style/GrantPermissions.FilterTouches"
                  android:visibleToInstantApps="true"
                  android:inheritShowWhenLocked="true"
                  android:hardwareAccelerated="false"
                  android:canDisplayOnRemoteDevices="@bool/is_at_least_v">
        </activity>

        <activity android:name="com.android.permissioncontroller.permission.ui.ManagePermissionsActivity"
                  android:configChanges="orientation|keyboardHidden|screenSize"
                  android:label="@string/app_permissions"
                  android:exported="true"
                  android:theme="@style/Theme.PermissionController.Settings.FilterTouches"
                  android:permission="android.permission.GRANT_RUNTIME_PERMISSIONS">
            <intent-filter android:priority="1">
                <action android:name="android.intent.action.MANAGE_APP_PERMISSIONS" />
                <action android:name="android.intent.action.MANAGE_APP_PERMISSION" />
                <action android:name="android.intent.action.MANAGE_PERMISSION_APPS" />
                <action android:name="android.intent.action.MANAGE_PERMISSIONS" />
                <action android:name="android.intent.action.REVIEW_PERMISSION_USAGE" />
                <action android:name="android.intent.action.REVIEW_PERMISSION_HISTORY" />
                <action android:name="android.intent.action.MANAGE_UNUSED_APPS" />
                <action android:name="android.intent.action.REVIEW_APP_DATA_SHARING_UPDATES" />
                <action android:name="android.permission.action.REVIEW_PERMISSION_DECISIONS"/>
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity-alias android:name="com.android.permissioncontroller.permission.ui.ManagePermissionsActivityAlias"
                        android:configChanges="orientation|keyboardHidden|screenSize"
                        android:label="@string/app_permissions"
                        android:exported="true"
                        android:theme="@style/Theme.PermissionController.Settings.FilterTouches"
                        android:permission="android.permission.LAUNCH_PERMISSION_SETTINGS"
                        android:targetActivity="com.android.permissioncontroller.permission.ui.ManagePermissionsActivity">
            <intent-filter android:priority="1">
                <action android:name="android.settings.APP_PERMISSIONS_SETTINGS"/>
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity-alias>

        <activity android:name="com.android.permissioncontroller.permission.ui.ManagePermissionsActivityTrampoline"
                  android:excludeFromRecents="true"
                  android:exported="true"
                  android:noHistory="true"
                  android:theme="@android:style/Theme.NoDisplay">
            <intent-filter android:priority="1">
                <action android:name="com.android.permissioncontroller.settingssearch.action.MANAGE_PERMISSION_APPS" />
                <action android:name="com.android.permissioncontroller.settingssearch.action.REVIEW_PERMISSION_USAGE" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.permissioncontroller.permission.ui.legacy.AppPermissionActivity"
                  android:configChanges="orientation|keyboardHidden|screenSize"
                  android:exported="false"
                  android:theme="@style/Theme.PermissionController.Settings.FilterTouches"
                  android:permission="android.permission.GRANT_RUNTIME_PERMISSIONS">
        </activity>

        <activity android:name="com.android.permissioncontroller.permission.ui.ReviewPermissionsActivity"
                  android:excludeFromRecents="true"
                  android:exported="true"
                  android:theme="@style/ReviewPermissions.FilterTouches"
                  android:permission="android.permission.GRANT_RUNTIME_PERMISSIONS">
            <intent-filter android:priority="1">
                <action android:name="android.intent.action.REVIEW_PERMISSIONS" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.permissioncontroller.safetycenter.ui.SafetyCenterQsActivity"
                  android:excludeFromRecents="true"
                  android:launchMode="singleInstance"
                  android:exported="true"
                  android:theme="@style/Theme.SafetyCenterQs"
                  android:permission="android.permission.REVOKE_RUNTIME_PERMISSIONS">
            <intent-filter android:priority="1">
                <action android:name="android.intent.action.VIEW_SAFETY_CENTER_QS" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.permissioncontroller.permission.ui.LocationProviderInterceptDialog"
                  android:excludeFromRecents="true"
                  android:exported="false"
                  android:theme="@style/PermissionDialog.FilterTouches" />

        <activity android:name="com.android.permissioncontroller.permission.ui.ReviewOngoingUsageActivity"
                  android:excludeFromRecents="true"
                  android:exported="true"
                  android:theme="@style/PermissionDialog"
                  android:launchMode="singleInstance"
                  android:permission="android.permission.GRANT_RUNTIME_PERMISSIONS" >
            <intent-filter android:priority="1">
                <action android:name="android.intent.action.REVIEW_ONGOING_PERMISSION_USAGE" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.permissioncontroller.permission.ui.ReviewAccessibilityServicesActivity"
                  android:excludeFromRecents="true"
                  android:exported="true"
                  android:theme="@style/PermissionDialog.FilterTouches"
                  android:permission="android.permission.GRANT_RUNTIME_PERMISSIONS" >
            <intent-filter android:priority="1">
                <action android:name="android.intent.action.REVIEW_ACCESSIBILITY_SERVICES" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.permissioncontroller.role.ui.RequestRoleActivity"
                  android:excludeFromRecents="true"
                  android:exported="true"
                  android:launchMode="singleTop"
                  android:theme="@style/RequestRole.FilterTouches">
            <intent-filter android:priority="1">
                <action android:name="android.app.role.action.REQUEST_ROLE" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <intent-filter android:priority="2">
                <action android:name="android.provider.Telephony.ACTION_CHANGE_DEFAULT" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <intent-filter android:priority="1001">
                <action android:name="android.telecom.action.CHANGE_DEFAULT_DIALER" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.permissioncontroller.role.ui.DefaultAppListActivity"
                  android:label="@string/default_apps"
                  android:exported="true"
                  android:theme="@style/Theme.PermissionController.Settings.FilterTouches">
            <intent-filter android:priority="2">
                <action android:name="android.settings.MANAGE_DEFAULT_APPS_SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.permissioncontroller.role.ui.DefaultAppActivity"
                  android:exported="true"
                  android:permission="android.permission.MANAGE_ROLE_HOLDERS"
                  android:theme="@style/Theme.PermissionController.Settings.FilterTouches">
            <intent-filter android:priority="1">
                <action android:name="android.intent.action.MANAGE_DEFAULT_APP" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.permissioncontroller.role.ui.HomeSettingsActivity"
                  android:excludeFromRecents="true"
                  android:noHistory="true"
                  android:exported="true"
                  android:theme="@android:style/Theme.NoDisplay">
            <intent-filter android:priority="2">
                <action android:name="android.settings.HOME_SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.permissioncontroller.role.ui.SpecialAppAccessListActivity"
                  android:label="@string/special_app_access"
                  android:exported="true"
                  android:permission="android.permission.MANAGE_ROLE_HOLDERS"
                  android:theme="@style/Theme.PermissionController.Settings.FilterTouches">
            <intent-filter android:priority="1">
                <action android:name="android.intent.action.MANAGE_SPECIAL_APP_ACCESSES" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <!-- TODO: Override other Settings intents when we've done migrating them. -->
        <activity android:name="com.android.permissioncontroller.role.ui.SpecialAppAccessActivity"
                  android:theme="@style/Theme.PermissionController.Settings.FilterTouches" />

        <activity android:name="com.android.permissioncontroller.role.ui.RoleSearchTrampolineActivity"
                  android:excludeFromRecents="true"
                  android:noHistory="true"
                  android:exported="true"
                  android:theme="@android:style/Theme.NoDisplay">
            <intent-filter android:priority="1">
                <action android:name="com.android.permissioncontroller.settingssearch.action.MANAGE_DEFAULT_APP" />
                <action android:name="com.android.permissioncontroller.settingssearch.action.MANAGE_SPECIAL_APP_ACCESS" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.permissioncontroller.role.ui.v35.ChangeDefaultCardEmulationActivity"
            android:enabled="@bool/is_at_least_v"
            android:excludeFromRecents="true"
            android:noHistory="true"
            android:exported="true"
            android:theme="@android:style/Theme.NoDisplay">
            <intent-filter android:priority="1001">
                <action android:name="android.nfc.cardemulation.action.ACTION_CHANGE_DEFAULT" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <provider android:name="com.android.permissioncontroller.permission.service.PermissionSearchIndexablesProvider"
            android:authorities="com.android.permissioncontroller"
            android:multiprocess="false"
            android:grantUriPermissions="true"
            android:permission="android.permission.READ_SEARCH_INDEXABLES"
            android:exported="true">
            <intent-filter>
                <action android:name="android.content.action.SEARCH_INDEXABLES_PROVIDER" />
            </intent-filter>
        </provider>

        <provider android:name="com.android.permissioncontroller.role.service.RoleSearchIndexablesProvider"
                  android:authorities="com.android.permissioncontroller.role"
                  android:exported="true"
                  android:grantUriPermissions="true"
                  android:permission="android.permission.READ_SEARCH_INDEXABLES">
            <intent-filter>
                <action android:name="android.content.action.SEARCH_INDEXABLES_PROVIDER" />
            </intent-filter>
        </provider>

        <provider android:name="com.android.permissioncontroller.safetycenter.service.SafetyCenterSearchIndexablesProvider"
            android:authorities="com.android.permissioncontroller.safetycenter"
            android:enabled="@bool/is_at_least_t"
            android:multiprocess="false"
            android:exported="true"
            android:grantUriPermissions="true"
            android:permission="android.permission.READ_SEARCH_INDEXABLES">
            <intent-filter>
                <action android:name="android.content.action.SEARCH_INDEXABLES_PROVIDER" />
            </intent-filter>
        </provider>

        <service android:name="com.android.permissioncontroller.permission.service.PermissionControllerServiceImpl"
                 android:exported="true"
                 android:visibleToInstantApps="true">
            <intent-filter android:priority="1">
                <action android:name="android.permission.PermissionControllerService"/>
            </intent-filter>
        </service>

        <service android:name="com.android.permissioncontroller.permission.service.RuntimePermissionPresenterServiceLegacyImpl"
                 android:exported="true"
                 android:permission="android.permission.BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE">
            <intent-filter android:priority="1">
                <action android:name="android.permissionpresenterservice.RuntimePermissionPresenterService"/>
            </intent-filter>
        </service>

        <service android:name="com.android.role.controller.service.RoleControllerServiceImpl"
                 android:exported="true">
            <intent-filter android:priority="1">
                <action android:name="android.app.role.RoleControllerService"/>
            </intent-filter>
        </service>

        <service
            android:name="com.android.permissioncontroller.permission.service.v33.SafetyCenterQsTileService"
            android:enabled="@bool/is_at_least_t"
            android:exported="true"
            android:label="@string/safety_privacy_qs_tile_title"
            android:icon ="@drawable/ic_safety_center_shield"
            android:permission="android.permission.BIND_QUICK_SETTINGS_TILE">
            <intent-filter>
                <action android:name="android.service.quicksettings.action.QS_TILE" />
            </intent-filter>
        </service>

        <service android:name="com.android.permissioncontroller.auto.DrivingDecisionReminderService" />

        <receiver android:name="com.android.permissioncontroller.role.service.ClearUserDeniedReceiver"
                  android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.PACKAGE_DATA_CLEARED" />
                <action android:name="android.intent.action.PACKAGE_FULLY_REMOVED"/>
                <data android:scheme="package" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.permissioncontroller.permission.service.PersistedStoragePackageUninstalledReceiver"
                  android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.PACKAGE_DATA_CLEARED" />
                <action android:name="android.intent.action.PACKAGE_FULLY_REMOVED"/>
                <data android:scheme="package" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.permissioncontroller.permission.service.PermissionStorageTimeChangeReceiver"
            android:exported="false">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="android.intent.action.TIME_SET" />
            </intent-filter>
        </receiver>

        <!-- Debug report authorization (bugreport and incident report) -->
        <receiver android:name="com.android.permissioncontroller.incident.ConfirmationReceiver"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.PENDING_INCIDENT_REPORTS_CHANGED" />
            </intent-filter>
        </receiver>

        <activity android:name="com.android.permissioncontroller.incident.ConfirmationActivity"
                android:theme="@style/Theme.PermissionController.IncidentReportDialog"
                android:exported="false"
                android:excludeFromRecents="true"
                android:finishOnCloseSystemDialogs="true"
                android:noHistory="true" />

        <receiver android:name="com.android.permissioncontroller.incident.ApprovalReceiver"
            android:exported="false" />

        <receiver android:name="com.android.permissioncontroller.permission.service.ExemptRestrictedPermission"
                  android:exported="false" />

        <activity
            android:name="com.android.permissioncontroller.safetycenter.ui.SafetyCenterActivity"
            android:enabled="@bool/is_at_least_t"
            android:exported="true"
            android:enableOnBackInvokedCallback="true"
            android:theme="@style/Theme.SafetyCenter">
            <intent-filter android:priority="1">
                <action android:name="android.intent.action.SAFETY_CENTER"/>
                <action android:name="android.service.quicksettings.action.QS_TILE_PREFERENCES"/>
                <category android:name="android.intent.category.DEFAULT"/>
            </intent-filter>
            <!-- Higher priority than the settings version of controls, so this should handle it -->
            <intent-filter android:priority="100">
                <action android:name="android.settings.PRIVACY_CONTROLS"/>
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

    </application>

</manifest>
