1<!-- Copyright (C) 2019 The Android Open Source Project
2
3     Licensed under the Apache License, Version 2.0 (the "License");
4     you may not use this file except in compliance with the License.
5     You may obtain a copy of the License at
6
7          http://www.apache.org/licenses/LICENSE-2.0
8
9     Unless required by applicable law or agreed to in writing, software
10     distributed under the License is distributed on an "AS IS" BASIS,
11     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12     See the License for the specific language governing permissions and
13     limitations under the License.
14-->
15
16<manifest xmlns:android="http://schemas.android.com/apk/res/android"
17        package="com.android.car.developeroptions"
18        coreApp="true"
19        android:sharedUserId="android.uid.system">
20
21    <original-package android:name="com.android.car.developeroptions" />
22
23    <uses-permission android:name="android.permission.REQUEST_NETWORK_SCORES" />
24    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
25    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
26    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
27    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
28    <uses-permission android:name="android.permission.DEVICE_POWER" />
29    <uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
30    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
31    <uses-permission android:name="android.permission.VIBRATE" />
32    <uses-permission android:name="android.permission.BLUETOOTH" />
33    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
34    <uses-permission android:name="android.permission.BLUETOOTH_PRIVILEGED" />
35    <uses-permission android:name="android.permission.NFC" />
36    <uses-permission android:name="android.permission.HARDWARE_TEST" />
37    <uses-permission android:name="android.permission.CALL_PHONE" />
38    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
39    <uses-permission android:name="android.permission.MASTER_CLEAR" />
40    <uses-permission android:name="com.google.android.googleapps.permission.GOOGLE_AUTH" />
41    <uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER" />
42    <uses-permission android:name="android.permission.READ_CONTACTS" />
43    <uses-permission android:name="android.permission.WRITE_CONTACTS" />
44    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
45    <uses-permission android:name="android.permission.LOCAL_MAC_ADDRESS" />
46    <uses-permission android:name="android.permission.ACCESS_WIMAX_STATE" />
47    <uses-permission android:name="android.permission.CHANGE_WIMAX_STATE" />
48    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
49    <uses-permission android:name="com.android.certinstaller.INSTALL_AS_USER" />
50    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
51    <uses-permission android:name="android.permission.TETHER_PRIVILEGED" />
52    <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
53    <uses-permission android:name="android.permission.INTERNET" />
54    <uses-permission android:name="android.permission.CLEAR_APP_USER_DATA" />
55    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
56    <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
57    <uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
58    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
59    <uses-permission android:name="android.permission.WRITE_APN_SETTINGS"/>
60    <uses-permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES"/>
61    <uses-permission android:name="android.permission.READ_USER_DICTIONARY"/>
62    <uses-permission android:name="android.permission.WRITE_USER_DICTIONARY"/>
63    <uses-permission android:name="android.permission.FORCE_STOP_PACKAGES"/>
64    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS"/>
65    <uses-permission android:name="android.permission.BATTERY_STATS"/>
66    <uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
67    <uses-permission android:name="com.android.launcher.permission.WRITE_SETTINGS" />
68    <uses-permission android:name="android.permission.MOVE_PACKAGE" />
69    <uses-permission android:name="android.permission.USE_CREDENTIALS" />
70    <uses-permission android:name="android.permission.BACKUP" />
71    <uses-permission android:name="android.permission.READ_SYNC_STATS" />
72    <uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
73    <uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
74    <uses-permission android:name="android.permission.READ_DEVICE_CONFIG" />
75    <uses-permission android:name="android.permission.STATUS_BAR" />
76    <uses-permission android:name="android.permission.MANAGE_USB" />
77    <uses-permission android:name="android.permission.MANAGE_DEBUGGING" />
78    <uses-permission android:name="android.permission.SET_POINTER_SPEED" />
79    <uses-permission android:name="android.permission.SET_KEYBOARD_LAYOUT" />
80    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
81    <uses-permission android:name="android.permission.COPY_PROTECTED_DATA" />
82    <uses-permission android:name="android.permission.MANAGE_USERS" />
83    <uses-permission android:name="android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS" />
84    <uses-permission android:name="android.permission.READ_PROFILE" />
85    <uses-permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY" />
86    <uses-permission android:name="android.permission.CONFIGURE_DISPLAY_COLOR_MODE" />
87    <uses-permission android:name="android.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS" />
88    <uses-permission android:name="android.permission.SUGGEST_MANUAL_TIME_AND_ZONE" />
89    <uses-permission android:name="android.permission.ACCESS_NOTIFICATIONS" />
90    <uses-permission android:name="android.permission.REBOOT" />
91    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
92    <uses-permission android:name="android.permission.MANAGE_DEVICE_ADMINS" />
93    <uses-permission android:name="android.permission.READ_SEARCH_INDEXABLES" />
94    <uses-permission android:name="android.permission.BIND_SETTINGS_SUGGESTIONS_SERVICE" />
95    <uses-permission android:name="android.permission.OEM_UNLOCK_STATE" />
96    <uses-permission android:name="android.permission.MANAGE_USER_OEM_UNLOCK_STATE" />
97    <uses-permission android:name="android.permission.OVERRIDE_WIFI_CONFIG" />
98    <uses-permission android:name="android.permission.USE_FINGERPRINT" />
99    <uses-permission android:name="android.permission.MANAGE_FINGERPRINT" />
100    <uses-permission android:name="android.permission.USE_BIOMETRIC" />
101    <uses-permission android:name="android.permission.USE_BIOMETRIC_INTERNAL" />
102    <uses-permission android:name="android.permission.USER_ACTIVITY" />
103    <uses-permission android:name="android.permission.CHANGE_APP_IDLE_STATE" />
104    <uses-permission android:name="android.permission.PEERS_MAC_ADDRESS"/>
105    <uses-permission android:name="android.permission.MANAGE_NOTIFICATIONS"/>
106    <uses-permission android:name="android.permission.DELETE_PACKAGES"/>
107    <uses-permission android:name="android.permission.REQUEST_DELETE_PACKAGES" />
108    <uses-permission android:name="android.permission.MANAGE_APP_OPS_RESTRICTIONS"/>
109    <uses-permission android:name="android.permission.MANAGE_APP_OPS_MODES" />
110    <uses-permission android:name="android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS"/>
111    <uses-permission android:name="android.permission.READ_PRINT_SERVICES" />
112    <uses-permission android:name="android.permission.NETWORK_SETTINGS" />
113    <uses-permission android:name="android.permission.TEST_BLACKLISTED_PASSWORD" />
114    <uses-permission android:name="android.permission.USE_RESERVED_DISK" />
115    <uses-permission android:name="android.permission.MANAGE_SCOPED_ACCESS_DIRECTORY_PERMISSIONS" />
116    <uses-permission android:name="android.permission.CAMERA" />
117    <uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL" />
118
119    <application android:label="@string/development_settings_title"
120            android:icon="@drawable/ic_launcher_settings"
121            android:theme="@style/Theme.Settings"
122            android:hardwareAccelerated="true"
123            android:requiredForAllUsers="true"
124            android:supportsRtl="true"
125            android:allowBackup="false"
126            android:usesCleartextTraffic="true"
127            android:defaultToDeviceProtectedStorage="true"
128            android:directBootAware="true"
129            android:appComponentFactory="androidx.core.app.CoreComponentFactory">
130
131        <uses-library android:name="org.apache.http.legacy" />
132
133        <!-- Settings -->
134        <activity android:name=".SubSettings"
135                android:parentActivityName="Settings" />
136
137        <activity android:name="SetFullBackupPassword"
138                  android:label="@string/local_backup_password_title"
139                  android:exported="false" />
140
141        <activity
142            android:name="Settings$DevelopmentSettingsDashboardActivity"
143            android:label="@string/development_settings_title"
144            android:icon="@drawable/ic_settings_development"
145            android:parentActivityName="Settings"
146            android:enabled="false">
147            <intent-filter android:priority="1">
148                <action android:name="android.settings.APPLICATION_DEVELOPMENT_SETTINGS" />
149                <category android:name="android.intent.category.DEFAULT" />
150            </intent-filter>
151            <intent-filter>
152                <action android:name="com.android.settings.action.SETTINGS" />
153            </intent-filter>
154            <meta-data android:name="com.android.settings.order" android:value="-40"/>
155            <meta-data android:name="com.android.settings.category"
156                       android:value="com.android.settings.category.ia.system" />
157            <meta-data android:name="com.android.settings.summary"
158                       android:resource="@string/summary_empty"/>
159            <meta-data android:name="com.android.car.developeroptions.FRAGMENT_CLASS"
160                       android:value="com.android.car.developeroptions.development.DevelopmentSettingsDashboardFragment" />
161            <meta-data android:name="com.android.car.developeroptions.PRIMARY_PROFILE_CONTROLLED"
162                       android:value="true" />
163        </activity>
164
165        <!-- The opposite of DevelopmentSettingsActivity, it's no-op and only enabled when the real
166             activity is disabled to be CTS compliant. -->
167        <activity
168            android:name=".development.DevelopmentSettingsDisabledActivity"
169            android:icon="@drawable/ic_settings_development"
170            android:label="@string/development_settings_title"
171            android:excludeFromRecents="true"
172            android:theme="@style/Transparent">
173            <intent-filter android:priority="-1">
174                <action android:name="android.settings.APPLICATION_DEVELOPMENT_SETTINGS" />
175                <category android:name="android.intent.category.DEFAULT" />
176            </intent-filter>
177        </activity>
178
179        <activity android:name=".development.AppPicker"
180                  android:label="@string/select_application"
181                  android:theme="@android:style/Theme.DeviceDefault.Light.Dialog" />
182
183        <!-- For CtsVerifier use. -->
184        <activity
185            android:name="Settings$TrustedCredentialsSettingsActivity"
186            android:label="@string/trusted_credentials"
187            android:icon="@drawable/ic_settings_security"
188            android:parentActivityName="Settings">
189            <intent-filter android:priority="1">
190                <action android:name="com.android.settings.TRUSTED_CREDENTIALS" />
191                <action android:name="com.android.settings.TRUSTED_CREDENTIALS_USER" />
192                <category android:name="android.intent.category.DEFAULT" />
193            </intent-filter>
194            <meta-data android:name="com.android.car.developeroptions.FRAGMENT_CLASS"
195                       android:value="com.android.car.developeroptions.TrustedCredentialsSettings" />
196            <meta-data android:name="com.android.car.developeroptions.PRIMARY_PROFILE_CONTROLLED"
197                       android:value="true" />
198        </activity>
199
200    </application>
201</manifest>
202