1<?xml version="1.0" encoding="utf-8"?> 2<!-- Copyright (C) 2018 The Android Open Source Project 3 4 Licensed under the Apache License, Version 2.0 (the "License"); 5 you may not use this file except in compliance with the License. 6 You may obtain a copy of the License at 7 8 http://www.apache.org/licenses/LICENSE-2.0 9 10 Unless required by applicable law or agreed to in writing, software 11 distributed under the License is distributed on an "AS IS" BASIS, 12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 See the License for the specific language governing permissions and 14 limitations under the License. 15--> 16 17<manifest xmlns:android="http://schemas.android.com/apk/res/android" 18 package="com.android.frameworks.wmtests"> 19 20 <!-- Uses API introduced in S (31). Using SDK 31+ avoids Google Play Protect popups. --> 21 <uses-sdk 22 android:minSdkVersion="1" 23 android:targetSdkVersion="31" /> 24 25 <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" /> 26 <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" /> 27 <uses-permission android:name="android.permission.MANAGE_ACTIVITY_TASKS" /> 28 <uses-permission android:name="android.permission.GET_TOP_ACTIVITY_INFO" /> 29 <uses-permission android:name="android.permission.MANAGE_USERS" /> 30 <uses-permission android:name="android.permission.STORAGE_INTERNAL" /> 31 <uses-permission android:name="android.permission.ACCESS_KEYGUARD_SECURE_STORAGE" /> 32 <uses-permission android:name="android.permission.STATUS_BAR_SERVICE" /> 33 <uses-permission android:name="android.permission.CHANGE_CONFIGURATION" /> 34 <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> 35 <uses-permission android:name="android.permission.ACCESS_SURFACE_FLINGER" /> 36 <uses-permission android:name="android.permission.READ_FRAME_BUFFER" /> 37 <uses-permission android:name="android.permission.WAKE_LOCK" /> 38 <uses-permission android:name="android.permission.REORDER_TASKS" /> 39 <uses-permission android:name="android.permission.READ_DEVICE_CONFIG" /> 40 <uses-permission android:name="android.permission.STATUS_BAR" /> 41 <uses-permission android:name="android.permission.CAPTURE_VIDEO_OUTPUT" /> 42 <uses-permission android:name="android.permission.READ_COMPAT_CHANGE_CONFIG" /> 43 <uses-permission android:name="android.permission.LOG_COMPAT_CHANGE" /> 44 <uses-permission android:name="android.permission.CAPTURE_BLACKOUT_CONTENT"/> 45 <uses-permission android:name="android.permission.WRITE_ALLOWLISTED_DEVICE_CONFIG" /> 46 <uses-permission android:name="android.permission.READ_WRITE_SYNC_DISABLED_MODE_CONFIG" /> 47 <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/> 48 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 49 <uses-permission android:name="android.permission.MANAGE_MEDIA_PROJECTION"/> 50 <uses-permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW"/> 51 <uses-permission android:name="android.permission.MONITOR_INPUT"/> 52 <uses-permission android:name="android.permission.OBSERVE_ROLE_HOLDERS"/> 53 <uses-permission android:name="android.permission.MANAGE_DEFAULT_APPLICATIONS"/> 54 <uses-permission android:name="android.permission.DUMP"/> 55 <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" /> 56 57 <!-- TODO: Remove largeHeap hack when memory leak is fixed (b/123984854) --> 58 <application android:debuggable="true" 59 android:testOnly="true" 60 android:largeHeap="true"> 61 <uses-library android:name="android.test.mock" android:required="true" /> 62 <uses-library android:name="android.test.runner" /> 63 64 <activity android:name="com.android.server.wm.TaskStackChangedListenerTest$ActivityA" /> 65 <activity android:name="com.android.server.wm.TaskStackChangedListenerTest$ActivityB" /> 66 <activity android:name="com.android.server.wm.TaskStackChangedListenerTest$ActivityRequestedOrientationChange" /> 67 <activity android:name="com.android.server.wm.TaskStackChangedListenerTest$ActivityTaskChangeCallbacks" 68 android:showWhenLocked="true" 69 android:turnScreenOn="true" /> 70 <activity android:name="com.android.server.wm.TaskStackChangedListenerTest$ActivityTaskDescriptionChange" /> 71 <activity android:name="com.android.server.wm.TaskStackChangedListenerTest$ActivityInVirtualDisplay" 72 android:resizeableActivity="true" /> 73 <activity android:name="com.android.server.wm.TaskStackChangedListenerTest$LandscapeActivity" 74 android:configChanges="screenLayout|screenSize|smallestScreenSize|orientation" 75 android:screenOrientation="sensorLandscape" 76 android:showWhenLocked="true" 77 android:turnScreenOn="true" /> 78 <activity android:name="com.android.server.wm.TaskStackChangedListenerTest$ResumeWhilePausingActivity" 79 android:resumeWhilePausing="true"/> 80 <activity android:name="com.android.server.wm.ActivityLeakTests$DetectLeakActivity" /> 81 <!-- 82 Simulate the common trampoline task that uses floating/translucent theme to avoid double 83 starting windows and animations of task open. 84 --> 85 <activity android:name="com.android.server.wm.ActivityOptionsTest$TrampolineActivity" 86 android:taskAffinity="com.android.frameworks.wmtests.trampoline" 87 android:theme="@android:style/Theme.Translucent.NoTitleBar" 88 android:turnScreenOn="true" 89 android:showWhenLocked="true" /> 90 <activity android:name="com.android.server.wm.ActivityOptionsTest$MainActivity" 91 android:configChanges="screenLayout|screenSize|smallestScreenSize|orientation" 92 android:turnScreenOn="true" 93 android:showWhenLocked="true" /> 94 <activity android:name="com.android.server.wm.ScreenshotTests$ScreenshotActivity" 95 android:theme="@style/WhiteBackgroundTheme" 96 android:turnScreenOn="true" 97 android:showWhenLocked="true"/> 98 <activity android:name="android.view.cts.surfacevalidator.CapturedActivity"/> 99 100 <activity android:name="com.android.server.wm.SurfaceSyncGroupTests$TestActivity" 101 android:screenOrientation="locked" 102 android:turnScreenOn="true" 103 android:theme="@style/WhiteBackgroundTheme" 104 android:exported="true"/> 105 106 <activity android:name="android.app.Activity" 107 android:exported="true" 108 android:showWhenLocked="true" 109 android:turnScreenOn="true" /> 110 111 <activity 112 android:name="androidx.test.core.app.InstrumentationActivityInvoker$EmptyActivity" 113 android:exported="true"> 114 <intent-filter> 115 <action android:name="android.intent.action.MAIN" /> 116 </intent-filter> 117 </activity> 118 119 <activity android:name="com.android.server.wm.ActivityRecordInputSinkTests$TestActivity" 120 android:exported="true"> 121 </activity> 122 123 <activity android:name="com.android.server.wm.utils.TestActivity" 124 android:screenOrientation="locked" 125 android:turnScreenOn="true" 126 android:showWhenLocked="true" 127 android:theme="@style/WhiteBackgroundTheme" 128 android:exported="true" /> 129 </application> 130 131 <instrumentation 132 android:name="androidx.test.runner.AndroidJUnitRunner" 133 android:label="Window Manager Tests" 134 android:targetPackage="com.android.frameworks.wmtests" /> 135</manifest> 136