<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 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.cts.deviceowner" >

    <uses-sdk android:minSdkVersion="20"/>

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

    <application>
        <uses-library android:name="android.test.runner" />
        <receiver
            android:name="com.android.cts.deviceowner.BaseDeviceOwnerTest$BasicAdminReceiver"
            android:permission="android.permission.BIND_DEVICE_ADMIN">
            <meta-data android:name="android.app.device_admin"
                       android:resource="@xml/device_admin" />
            <intent-filter>
                <action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
            </intent-filter>
        </receiver>
        <activity android:name="com.android.cts.deviceowner.ExampleIntentReceivingActivity1">
            <intent-filter>
                <action android:name="com.android.cts.deviceowner.EXAMPLE_ACTION" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name="com.android.cts.deviceowner.ExampleIntentReceivingActivity2">
            <intent-filter>
                <action android:name="com.android.cts.deviceowner.EXAMPLE_ACTION" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity
            android:name="com.android.cts.deviceowner.LockTaskUtilityActivity" />
        <activity
            android:name="com.android.cts.deviceowner.LockTaskUtilityActivityIfWhitelisted"
            android:lockTaskMode="if_whitelisted" />

        <!-- we need to give a different taskAffinity so that when we use
             FLAG_ACTIVITY_NEW_TASK, the system tries to start it in a different task
        -->
        <activity
            android:name="com.android.cts.deviceowner.LockTaskTest$IntentReceivingActivity"
            android:taskAffinity="com.android.cts.deviceowner.LockTaskTest.IntentReceivingActivity"
            />
        <activity
            android:name="com.android.cts.deviceowner.ApplicationRestrictionActivity" />
    </application>

    <instrumentation android:name="android.support.test.runner.AndroidJUnitRunner"
                     android:targetPackage="com.android.cts.deviceowner"
                     android:label="Device Owner CTS tests"/>
</manifest>
