<!--
**
** Copyright 2014, 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.managedprovisioning" >

    <permission
        android:name="android.permission.PROVISION_MANAGED_DEVICE_SILENTLY"
        android:protectionLevel="signature|preinstalled" />

    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.MANAGE_USERS" />
    <uses-permission android:name="android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS" />
    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
    <uses-permission android:name="android.permission.INSTALL_PACKAGES"/>
    <uses-permission android:name="android.permission.DELETE_PACKAGES"/>
    <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.BIND_DEVICE_ADMIN" />
    <uses-permission android:name="android.permission.MANAGE_DEVICE_ADMINS" />
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
    <uses-permission android:name="android.permission.MANAGE_APP_OPS_MODES"/>
    <uses-permission android:name="android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS"/>

    <uses-permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE" />
    <uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.MASTER_CLEAR" />
    <uses-permission android:name="android.permission.NFC" />
    <uses-permission android:name="android.permission.SET_TIME" />
    <uses-permission android:name="android.permission.SET_TIME_ZONE" />

    <uses-permission android:name="android.permission.CRYPT_KEEPER" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-permission android:name="android.permission.SHUTDOWN" />

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

    <uses-permission android:name="android.permission.PERFORM_CDMA_PROVISIONING" />
    <uses-permission android:name="android.permission.ACCESS_PDB_STATE" />
    <uses-permission android:name="android.permission.PEERS_MAC_ADDRESS" />

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

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

    <!-- To set the bg color of the deferred setup notification (without a foreground service) -->
    <uses-permission android:name="android.permission.USE_COLORIZED_NOTIFICATIONS" />

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

    <!-- Required by setup design library -->
    <uses-permission android:name="com.google.android.setupwizard.SETUP_COMPAT_SERVICE" />

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

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

    <application
        android:label="@string/app_label"
        android:allowClearUserData="false"
        android:hardwareAccelerated="true"
        android:usesCleartextTraffic="true"
        android:supportsRtl="true">

        <!--
             Note: Setup activities are android:immersive to prevent full-screen notifications (USB
            mass storage; incoming calls) from taking over. Note that high-priority notifications
            (phone calls) will still pop up a small window that can be activated.
        -->
        <activity
             android:name=".provisioning.ProvisioningActivity"
             android:excludeFromRecents="true"
             android:immersive="true"
             android:launchMode="singleTop"
             android:theme="@style/SudThemeGlifV3.Light">
        </activity>

        <activity
            android:name=".provisioning.AdminIntegratedFlowPrepareActivity"
            android:excludeFromRecents="true"
            android:immersive="true"
            android:launchMode="singleTop"
            android:theme="@style/SudThemeGlifV3.Light">
        </activity>

        <activity
            android:name=".preprovisioning.PreProvisioningActivity"
            android:excludeFromRecents="true"
            android:immersive="true"
            android:launchMode="singleTop"
            android:theme="@style/SudThemeGlifV3.Light">
            <intent-filter android:priority="10">
                <action android:name="android.app.action.PROVISION_MANAGED_PROFILE" />
                <action android:name="android.app.action.PROVISION_MANAGED_USER" />
                <action android:name="android.app.action.PROVISION_MANAGED_DEVICE" />
                <action android:name="android.app.action.PROVISION_MANAGED_SHAREABLE_DEVICE" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <!--
            Nfc bump entry for device owner provisioning, protected by a permission so only the Nfc
            stack can trigger this.
        -->
        <activity-alias
            android:name=".PreProvisioningActivityViaNfc"
            android:targetActivity=".preprovisioning.PreProvisioningActivity"
            android:permission="android.permission.DISPATCH_NFC_MESSAGE"
            android:exported="true">
            <intent-filter android:priority="10">
                <action android:name="android.nfc.action.NDEF_DISCOVERED" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="application/com.android.managedprovisioning" />
            </intent-filter>
        </activity-alias>
        <!--
            Trusted app entry for device owner provisioning, protected by a permission so only
            privileged app can trigger this.
        -->
        <activity-alias
            android:name=".PreProvisioningActivityViaTrustedApp"
            android:targetActivity=".preprovisioning.PreProvisioningActivity"
            android:permission="android.permission.DISPATCH_PROVISIONING_MESSAGE"
            android:exported="true">
            <intent-filter android:priority="10">
                <action
                    android:name="android.app.action.PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE"
                />
                <action
                    android:name="android.app.action.PROVISION_FINANCED_DEVICE"
                />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity-alias>
        <!-- Entry to resume encryption after reboot. -->
        <activity-alias
            android:name=".PreProvisioningActivityAfterEncryption"
            android:targetActivity=".preprovisioning.PreProvisioningActivity"
            android:exported="false">
            <intent-filter android:priority="10">
                <action
                    android:name="com.android.managedprovisioning.action.RESUME_PROVISIONING"
                />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity-alias>
        <activity
            android:name=".preprovisioning.terms.TermsActivity"
            android:excludeFromRecents="true"
            android:immersive="true"
            android:launchMode="singleTop"
            android:theme="@style/NonGlifTheme"/>
        <activity
            android:name=".preprovisioning.EncryptDeviceActivity"
            android:immersive="true"
            android:launchMode="singleTop">
        </activity>
        <!--
            Entry point for silent device owner provisioning.
        -->
        <service
            android:name=".provisioning.SilentDeviceOwnerProvisioningService">
        </service>
        <receiver android:name=".provisioning.SilentDeviceOwnerProvisioningReceiver"
            android:permission="android.permission.PROVISION_MANAGED_DEVICE_SILENTLY">
            <intent-filter android:priority="10">
                <action android:name="android.app.action.PROVISION_MANAGED_DEVICE_SILENTLY" />
            </intent-filter>
        </receiver>

        <activity
            android:name=".preprovisioning.WebActivity"
            android:immersive="true"
            android:launchMode="singleTop"
            android:theme="@style/NonGlifTheme"
            android:process=":webview">
        </activity>

        <activity
            android:name=".TrampolineActivity"
            android:theme="@android:style/Theme.NoDisplay"
            android:excludeFromRecents="true">
        </activity>

        <!--
            When PostEncryptionActivity is disabled, its entire task is going to get killed.
            So, we explicitly specify a taskAffinity for this instead of a package default to make
            sure it starts in a new task.
        -->
        <activity android:name=".preprovisioning.PostEncryptionActivity"
            android:theme="@android:style/Theme.NoDisplay"
            android:noHistory="true"
            android:excludeFromRecents="true"
            android:enabled="false"
            android:taskAffinity=":PostEncryptionActivity">
            <intent-filter android:priority="10">
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.HOME" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity
            android:name=".transition.TransitionActivity"
            android:theme="@style/SudThemeGlifV3.Light"
            android:immersive="true"/>

        <service android:name=".provisioning.ProvisioningService" />
        <service android:name=".finalization.SendDpcBroadcastService" />
        <service android:name=".ota.OtaService" />

        <receiver android:name="com.android.managedprovisioning.BootReminder">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.managedprovisioning.ota.PreBootListener">
            <intent-filter>
                <action android:name="android.intent.action.PRE_BOOT_COMPLETED" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.managedprovisioning.manageduser.ManagedUserCreationListener">
            <intent-filter>
                <action android:name="android.app.action.MANAGED_USER_CREATED" />
            </intent-filter>
        </receiver>

        <receiver android:name="com.android.managedprovisioning.task.CrossProfileIntentFiltersSetter$RestrictionChangedReceiver">
            <intent-filter>
                <action android:name="android.app.action.DATA_SHARING_RESTRICTION_CHANGED" />
            </intent-filter>
        </receiver>

        <!-- TODO (b/146135268): Add permission for setup-wizard to guard access? -->
        <activity android:name=".finalization.FinalizationPostSuwActivity"
                android:theme="@style/SudThemeGlifV3.Light"
                android:noHistory="true"
                android:excludeFromRecents="true"
                android:exported="true"
                android:immersive="true">
            <intent-filter>
                <action android:name="android.app.action.PROVISION_FINALIZATION" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <!-- TODO (b/146135268): Add permission for setup-wizard to guard access? -->
        <activity android:name=".finalization.FinalizationInsideSuwActivity"
                  android:excludeFromRecents="true"
                  android:exported="true"
                  android:immersive="true"
                  android:launchMode="singleTop"
                  android:theme="@style/SudThemeGlifV3.Light">
            <intent-filter>
                <action android:name="android.app.action.PROVISION_FINALIZATION_INSIDE_SUW" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity
            android:name=".provisioning.LandingActivity"
            android:theme="@style/SudThemeGlifV3.Light"
            android:immersive="true" />

        <activity
            android:name=".provisioning.FinancedDeviceLandingActivity"
            android:theme="@style/SudThemeGlifV3.Light"
            android:immersive="true" />

        <activity
            android:name=".finalization.FinalScreenActivity"
            android:theme="@style/SudThemeGlifV3.Light"
            android:immersive="true" />

        <service
            android:name=".analytics.ProcessMetricsJobService"
            android:permission="android.permission.BIND_JOB_SERVICE"/>
    </application>
</manifest>
