<!--
**
** 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.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>
