blob: 84dd06aa392fb1490cef45dfcea7849f453711f8 [file] [log] [blame]
Sunny Goyald83a67a2016-05-23 21:40:53 -07001<?xml version="1.0" encoding="utf-8"?>
2<!--
3/*
4**
5** Copyright 2016, The Android Open Source Project
6**
7** Licensed under the Apache License, Version 2.0 (the "License");
8** you may not use this file except in compliance with the License.
9** You may obtain a copy of the License at
10**
11** http://www.apache.org/licenses/LICENSE-2.0
12**
13** Unless required by applicable law or agreed to in writing, software
14** distributed under the License is distributed on an "AS IS" BASIS,
15** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16** See the License for the specific language governing permissions and
17** limitations under the License.
18*/
19-->
20<manifest
21 xmlns:android="http://schemas.android.com/apk/res/android"
22 package="com.android.launcher3">
Sunny Goyald83a67a2016-05-23 21:40:53 -070023
24 <!--
25 The manifest defines the common entries that should be present in any derivative of Launcher3.
26 The components should generally not require any changes.
27
28 Rest of the components are defined in AndroidManifest.xml which is merged with this manifest
29 at compile time. Note that the components defined in AndroidManifest.xml are also required,
30 with some minor changed based on the derivative app.
31 -->
32 <permission
33 android:name="com.android.launcher.permission.INSTALL_SHORTCUT"
34 android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
35 android:protectionLevel="dangerous"
36 android:label="@string/permlab_install_shortcut"
37 android:description="@string/permdesc_install_shortcut" />
38
39 <uses-permission android:name="android.permission.CALL_PHONE" />
40 <uses-permission android:name="android.permission.SET_WALLPAPER" />
41 <uses-permission android:name="android.permission.SET_WALLPAPER_HINTS" />
42 <uses-permission android:name="android.permission.BIND_APPWIDGET" />
43 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
44 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
Jon Miranda94fe9fa2017-09-05 13:38:07 -070045 <uses-permission android:name="android.permission.REQUEST_DELETE_PACKAGES" />
Hyunyoung Song2dac6f82019-08-16 10:16:39 -070046 <uses-permission android:name="android.permission.READ_DEVICE_CONFIG" />
Patrick Baumannca169112020-02-14 10:32:39 -080047 <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
Sunny Goyald83a67a2016-05-23 21:40:53 -070048
Vinit Nayakb9ec9312020-03-04 12:05:28 -080049 <!-- TODO(b/150802536): Enabled only for ENABLE_FIXED_ROTATION_TRANSFORM feature flag -->
50 <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>
51
Sunny Goyal7f920b82018-06-27 15:47:49 -070052 <!--
53 Permissions required for read/write access to the workspace data. These permission name
54 should not conflict with that defined in other apps, as such an app should embed its package
55 name in the permissions. eq com.mypackage.permission.READ_SETTINGS
56 -->
57 <permission
58 android:name="${packageName}.permission.READ_SETTINGS"
59 android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
60 android:protectionLevel="signatureOrSystem"
61 android:label="@string/permlab_read_settings"
62 android:description="@string/permdesc_read_settings"/>
63 <permission
64 android:name="${packageName}.permission.WRITE_SETTINGS"
65 android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
66 android:protectionLevel="signatureOrSystem"
67 android:label="@string/permlab_write_settings"
68 android:description="@string/permdesc_write_settings"/>
69
70 <uses-permission android:name="${packageName}.permission.READ_SETTINGS" />
71 <uses-permission android:name="${packageName}.permission.WRITE_SETTINGS" />
72
Sunny Goyald83a67a2016-05-23 21:40:53 -070073 <application
74 android:backupAgent="com.android.launcher3.LauncherBackupAgent"
75 android:fullBackupOnly="true"
Sunny Goyal3bba1682016-08-19 13:13:03 -070076 android:backupInForeground="true"
Sunny Goyald83a67a2016-05-23 21:40:53 -070077 android:fullBackupContent="@xml/backupscheme"
78 android:hardwareAccelerated="true"
Hyunyoung Song837eb1f2017-03-03 11:14:05 -080079 android:icon="@drawable/ic_launcher_home"
Sunny Goyal112ce422016-08-22 16:45:29 -070080 android:label="@string/derived_app_name"
Sunny Goyald83a67a2016-05-23 21:40:53 -070081 android:largeHeap="@bool/config_largeHeap"
82 android:restoreAnyVersion="true"
83 android:supportsRtl="true" >
84
85 <!-- Intent received used to install shortcuts from other applications -->
86 <receiver
87 android:name="com.android.launcher3.InstallShortcutReceiver"
Sunny Goyal4179e9b2017-03-08 14:25:09 -080088 android:permission="com.android.launcher.permission.INSTALL_SHORTCUT"
Ashwini Orugantiaa902e82020-06-04 17:47:09 -070089 android:exported="true"
Sunny Goyal4179e9b2017-03-08 14:25:09 -080090 android:enabled="@bool/enable_install_shortcut_api" >
Sunny Goyald83a67a2016-05-23 21:40:53 -070091 <intent-filter>
92 <action android:name="com.android.launcher.action.INSTALL_SHORTCUT" />
93 </intent-filter>
94 </receiver>
95
Sunny Goyal4179e9b2017-03-08 14:25:09 -080096 <!-- Intent received when a session is committed -->
97 <receiver
Ashwini Orugantiaa902e82020-06-04 17:47:09 -070098 android:name="com.android.launcher3.SessionCommitReceiver"
99 android:exported="true">
Sunny Goyal4179e9b2017-03-08 14:25:09 -0800100 <intent-filter>
101 <action android:name="android.content.pm.action.SESSION_COMMITTED" />
102 </intent-filter>
103 </receiver>
104
Sunny Goyald83a67a2016-05-23 21:40:53 -0700105 <!-- Intent received used to initialize a restored widget -->
Ashwini Orugantiaa902e82020-06-04 17:47:09 -0700106 <receiver android:name="com.android.launcher3.AppWidgetsRestoredReceiver"
107 android:exported="true">
Sunny Goyald83a67a2016-05-23 21:40:53 -0700108 <intent-filter>
109 <action android:name="android.appwidget.action.APPWIDGET_HOST_RESTORED"/>
110 </intent-filter>
111 </receiver>
112
Sunny Goyal3e93ec52017-05-23 14:00:32 -0700113 <service
Sunny Goyal18c699f2018-05-03 16:58:41 -0700114 android:name="com.android.launcher3.uioverrides.dynamicui.WallpaperManagerCompatVL$ColorExtractionService"
Sunny Goyal3e93ec52017-05-23 14:00:32 -0700115 android:exported="false"
Sunny Goyal82315962017-06-08 14:27:49 -0700116 android:process=":wallpaper_chooser"
117 android:permission="android.permission.BIND_JOB_SERVICE" />
Sunny Goyal3e93ec52017-05-23 14:00:32 -0700118
Sunny Goyalc466b172018-03-01 16:10:19 -0800119 <service
120 android:name="com.android.launcher3.notification.NotificationListener"
Tony Wickhamf34bee82018-12-03 18:11:39 -0800121 android:label="@string/notification_dots_service_title"
122 android:enabled="@bool/notification_dots_enabled"
Ashwini Orugantiaa902e82020-06-04 17:47:09 -0700123 android:exported="true"
Sunny Goyalc466b172018-03-01 16:10:19 -0800124 android:permission="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE">
Tony4d8019a2017-02-13 07:44:01 -0800125 <intent-filter>
126 <action android:name="android.service.notification.NotificationListenerService" />
127 </intent-filter>
128 </service>
129
Sunny Goyald83a67a2016-05-23 21:40:53 -0700130 <meta-data android:name="android.nfc.disable_beam_default"
131 android:value="true" />
132
Sunny Goyal27835952017-01-13 12:15:53 -0800133 <activity android:name="com.android.launcher3.dragndrop.AddItemActivity"
Sunny Goyal367f2192018-10-17 11:24:48 -0700134 android:theme="@style/AppItemActivityTheme"
Sunny Goyalb38fab72017-01-20 19:32:31 -0800135 android:excludeFromRecents="true"
136 android:autoRemoveFromRecents="true"
Ashwini Orugantiaa902e82020-06-04 17:47:09 -0700137 android:exported="true"
Sunny Goyal27835952017-01-13 12:15:53 -0800138 android:label="@string/action_add_to_workspace" >
139 <intent-filter>
Sunny Goyal8b2002e2017-01-26 14:40:10 -0800140 <action android:name="android.content.pm.action.CONFIRM_PIN_SHORTCUT" />
141 <action android:name="android.content.pm.action.CONFIRM_PIN_APPWIDGET" />
Sunny Goyal27835952017-01-13 12:15:53 -0800142 </intent-filter>
143 </activity>
144
Hyunyoung Song37fa9b42017-05-04 15:21:20 -0700145 <!--
Sunny Goyal7f920b82018-06-27 15:47:49 -0700146 The settings provider contains Home's data, like the workspace favorites. The permissions
147 should be changed to what is defined above. The authorities should also be changed to
148 represent the package name.
149 -->
150 <provider
151 android:name="com.android.launcher3.LauncherProvider"
152 android:authorities="${packageName}.settings"
153 android:exported="true"
154 android:writePermission="${packageName}.permission.WRITE_SETTINGS"
155 android:readPermission="${packageName}.permission.READ_SETTINGS" />
156
157 <!--
Sunny Goyaleff44f32019-01-09 17:29:49 -0800158 The content provider for exposing various launcher grid options.
159 TODO: Add proper permissions
Hyunyoung Song58de5de2019-05-15 14:01:30 -0700160 -->
Sunny Goyaleff44f32019-01-09 17:29:49 -0800161 <provider
162 android:name="com.android.launcher3.graphics.GridOptionsProvider"
163 android:authorities="${packageName}.grid_control"
164 android:exported="true" />
165
166 <!--
Sunny Goyal7f920b82018-06-27 15:47:49 -0700167 The settings activity. To extend point settings_fragment_name to appropriate fragment class
168 -->
169 <activity
Sunny Goyalb2498b22018-10-16 16:36:02 -0700170 android:name="com.android.launcher3.settings.SettingsActivity"
Sunny Goyal7f920b82018-06-27 15:47:49 -0700171 android:label="@string/settings_button_text"
Samuel Fufa9fee0452019-11-12 16:49:21 -0800172 android:theme="@style/HomeSettingsTheme"
Ashwini Orugantiaa902e82020-06-04 17:47:09 -0700173 android:exported="true"
Sunny Goyal7f920b82018-06-27 15:47:49 -0700174 android:autoRemoveFromRecents="true">
175 <intent-filter>
176 <action android:name="android.intent.action.APPLICATION_PREFERENCES" />
177 <category android:name="android.intent.category.DEFAULT" />
178 </intent-filter>
179 </activity>
180
Sunny Goyalab3963d2019-05-23 00:50:08 -0700181 <provider
182 android:name="com.android.launcher3.testing.TestInformationProvider"
183 android:authorities="${packageName}.TestInfo"
184 android:readPermission="android.permission.WRITE_SECURE_SETTINGS"
185 android:writePermission="android.permission.WRITE_SECURE_SETTINGS"
186 android:exported="true"
187 android:enabled="false" />
Sunny Goyal9c2b9602020-01-07 13:07:55 -0800188
189 <!--
190 Launcher activity for secondary display
191 -->
192 <activity
193 android:name="com.android.launcher3.secondarydisplay.SecondaryDisplayLauncher"
194 android:theme="@style/AppTheme"
195 android:launchMode="singleTop"
Ashwini Orugantiaa902e82020-06-04 17:47:09 -0700196 android:exported="true"
Sunny Goyal9c2b9602020-01-07 13:07:55 -0800197 android:enabled="true">
198 <intent-filter>
199 <action android:name="android.intent.action.MAIN" />
200 <category android:name="android.intent.category.SECONDARY_HOME" />
201 <category android:name="android.intent.category.DEFAULT" />
202 </intent-filter>
203 </activity>
Sunny Goyald83a67a2016-05-23 21:40:53 -0700204 </application>
205</manifest>