1<?xml version="1.0" encoding="utf-8"?> 2<!-- 3 ~ Copyright (C) 2022 The Android Open Source Project 4 ~ 5 ~ Licensed under the Apache License, Version 2.0 (the "License"); 6 ~ you may not use this file except in compliance with the License. 7 ~ You may obtain a copy of the License at 8 ~ 9 ~ http://www.apache.org/licenses/LICENSE-2.0 10 ~ 11 ~ Unless required by applicable law or agreed to in writing, software 12 ~ distributed under the License is distributed on an "AS IS" BASIS, 13 ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 ~ See the License for the specific language governing permissions and 15 ~ limitations under the License. 16 --> 17 18<manifest 19 xmlns:android="http://schemas.android.com/apk/res/android" 20 xmlns:tools="http://schemas.android.com/tools" 21 package="com.android.adextservices.tests.ui"> 22 23 <!-- New permission introduced in T+ devices needed to show notifications. --> 24 <uses-permission android:name="android.permission.POST_NOTIFICATIONS"/> 25 26 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 27 <!--acts as an application that uses adservices in order for PPAPI to be enabled and notification to be displayed--> 28 <uses-permission android:name="android.permission.ACCESS_ADSERVICES_TOPICS"/> 29 <!-- Permissions required for reading device configs --> 30 <uses-permission android:name="android.permission.READ_DEVICE_CONFIG"/> 31 <!-- Allows JobScheduler to persist jobs across reboot. --> 32 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/> 33 <!-- Allows to see other sample apps installed on the device. --> 34 <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" 35 tools:ignore="QueryAllPackagesPermission" /> 36 37 <application android:debuggable="true"> 38 <!-- Activity for the main view of Adservices Settings UI--> 39 <activity 40 android:name="com.android.adservices.ui.settings.activities.AdServicesSettingsMainActivity" 41 android:exported="true" 42 android:theme="@style/Theme.SubSettingsBase"> 43 <intent-filter android:priority="1"> 44 <action android:name="android.test.adservices.ui.MAIN"/> 45 <category android:name="android.intent.category.DEFAULT"/> 46 </intent-filter> 47 </activity> 48 49 <!-- Activity for the topics view of Adservices Settings UI--> 50 <activity 51 android:name="com.android.adservices.ui.settings.activities.TopicsActivity" 52 android:exported="true" 53 android:theme="@style/Theme.SubSettingsBase"> 54 <intent-filter android:priority="1"> 55 <action android:name="android.test.adservices.ui.TOPICS"/> 56 <category android:name="android.intent.category.DEFAULT"/> 57 </intent-filter> 58 </activity> 59 60 <!-- Activity for the blocked topics view of Adservices Settings UI--> 61 <activity 62 android:name="com.android.adservices.ui.settings.activities.BlockedTopicsActivity" 63 android:exported="true" 64 android:theme="@style/Theme.SubSettingsBase"> 65 <intent-filter android:priority="1"> 66 <action android:name="android.test.adservices.ui.BLOCKED_TOPICS"/> 67 <category android:name="android.intent.category.DEFAULT"/> 68 </intent-filter> 69 </activity> 70 71 <!-- Activity for the apps view of Adservices Settings UI--> 72 <activity 73 android:name="com.android.adservices.ui.settings.activities.AppsActivity" 74 android:exported="true" 75 android:theme="@style/Theme.SubSettingsBase"> 76 <intent-filter android:priority="1"> 77 <action android:name="android.test.adservices.ui.APPS"/> 78 <category android:name="android.intent.category.DEFAULT"/> 79 </intent-filter> 80 </activity> 81 82 <!-- Activity for the blocked apps view of Adservices Settings UI--> 83 <activity 84 android:name="com.android.adservices.ui.settings.activities.BlockedAppsActivity" 85 android:exported="true" 86 android:theme="@style/Theme.SubSettingsBase"> 87 <intent-filter android:priority="1"> 88 <action android:name="android.test.adservices.ui.BLOCKED_APPS"/> 89 <category android:name="android.intent.category.DEFAULT"/> 90 </intent-filter> 91 </activity> 92 93 <!-- Activity for the ads measurement view of AdServices Settings UI--> 94 <activity 95 android:name="com.android.adservices.ui.settings.activities.MeasurementActivity" 96 android:exported="true" 97 android:theme="@style/Theme.SubSettingsBase"> 98 <intent-filter android:priority="1"> 99 <action android:name="android.adservices.ui.MEASUREMENT"/> 100 <category android:name="android.intent.category.DEFAULT"/> 101 </intent-filter> 102 </activity> 103 104 <activity 105 android:name="com.android.adservices.ui.notifications.ConsentNotificationActivity" 106 android:exported="true" 107 android:theme="@style/AdServices.NotificationTheme"> 108 <intent-filter> 109 <action android:name="android.test.adservices.ui.NOTIFICATIONS"/> 110 <category android:name="android.intent.category.DEFAULT"/> 111 </intent-filter> 112 </activity> 113 114 <!-- Daily maintenance Job. --> 115 <!-- Used by SettingsGaUiAutomatorTest on S- --> 116 <service android:name="com.android.adservices.service.MaintenanceJobService" 117 android:permission="android.permission.BIND_JOB_SERVICE"> 118 </service> 119 120 <!-- START - Used by BlockedTopicsSettingsUiAutomatorTest ConsentManager.enable() on S- --> 121 122 <!-- Epoch computation Job. --> 123 <service android:name="com.android.adservices.service.topics.EpochJobService" 124 android:permission="android.permission.BIND_JOB_SERVICE"> 125 </service> 126 127 <!-- Mdd background Job. --> 128 <service android:name="com.android.adservices.download.MddJobService" 129 android:permission="android.permission.BIND_JOB_SERVICE"> 130 </service> 131 132 <!-- Measurement aggregate main report upload job. --> 133 <service android:name= 134 "com.android.adservices.service.measurement.reporting.AggregateReportingJobService" 135 android:permission="android.permission.BIND_JOB_SERVICE"> 136 </service> 137 138 <!-- Measurement aggregate fallback report upload job. --> 139 <service android:name= 140 "com.android.adservices.service.measurement.reporting.AggregateFallbackReportingJobService" 141 android:permission="android.permission.BIND_JOB_SERVICE"> 142 </service> 143 144 <!-- Measurement immediate aggregate report upload job. --> 145 <service android:name= 146 "com.android.adservices.service.measurement.reporting.ImmediateAggregateReportingJobService" 147 android:permission="android.permission.BIND_JOB_SERVICE"> 148 </service> 149 150 <!-- Measurement regular report upload job. --> 151 <service android:name= 152 "com.android.adservices.service.measurement.reporting.ReportingJobService" 153 android:permission="android.permission.BIND_JOB_SERVICE"> 154 </service> 155 156 157 <!-- Attribution Job.--> 158 <service android:name= 159 "com.android.adservices.service.measurement.attribution.AttributionJobService" 160 android:permission="android.permission.BIND_JOB_SERVICE"> 161 </service> 162 163 <!-- Measurement event main report upload job. --> 164 <service 165 android:name="com.android.adservices.service.measurement.reporting.EventReportingJobService" 166 android:permission="android.permission.BIND_JOB_SERVICE"> 167 </service> 168 169 <!-- Measurement event fallback report upload job. --> 170 <service android:name= 171 "com.android.adservices.service.measurement.reporting.EventFallbackReportingJobService" 172 android:permission="android.permission.BIND_JOB_SERVICE"> 173 </service> 174 175 <!-- Deletion Job.--> 176 <service android:name= 177 "com.android.adservices.service.measurement.DeleteExpiredJobService" 178 android:permission="android.permission.BIND_JOB_SERVICE"> 179 </service> 180 181 <!-- Measurement Deletion Uninstalled Apps Job. --> 182 <service android:name= 183 "com.android.adservices.service.measurement.DeleteUninstalledJobService" 184 android:permission="android.permission.BIND_JOB_SERVICE"> 185 </service> 186 187 <!-- Registration Queue job. --> 188 <service android:name= 189 "com.android.adservices.service.measurement.registration.AsyncRegistrationQueueJobService" 190 android:permission="android.permission.BIND_JOB_SERVICE"> 191 </service> 192 193 <!-- END - Used by ConsentManager.enable() in BlockedTopicsSettingsUiAutomatorTest on S- --> 194 195 <uses-library android:name="android.ext.adservices" android:required="false"/> 196 </application> 197 198 <instrumentation 199 android:name="androidx.test.runner.AndroidJUnitRunner" 200 android:label="AdServices UI Test Cases" 201 android:targetPackage="com.android.adextservices.tests.ui"/> 202</manifest> 203