1<?xml version="1.0" encoding="utf-8"?>
2<!--
3/*
4**
5** Copyright 2008, 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">
23    <uses-sdk android:targetSdkVersion="23" android:minSdkVersion="16"/>
24
25    <permission
26        android:name="com.android.launcher.permission.INSTALL_SHORTCUT"
27        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
28        android:protectionLevel="dangerous"
29        android:label="@string/permlab_install_shortcut"
30        android:description="@string/permdesc_install_shortcut" />
31    <permission
32        android:name="com.android.launcher3.permission.READ_SETTINGS"
33        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
34        android:protectionLevel="normal"
35        android:label="@string/permlab_read_settings"
36        android:description="@string/permdesc_read_settings"/>
37    <permission
38        android:name="com.android.launcher3.permission.WRITE_SETTINGS"
39        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
40        android:protectionLevel="signatureOrSystem"
41        android:label="@string/permlab_write_settings"
42        android:description="@string/permdesc_write_settings"/>
43    <permission
44        android:name="com.android.launcher3.permission.RECEIVE_LAUNCH_BROADCASTS"
45        android:protectionLevel="signature"
46        />
47    <permission
48        android:name="com.android.launcher3.permission.RECEIVE_FIRST_LOAD_BROADCAST"
49        android:protectionLevel="signatureOrSystem" />
50
51    <uses-permission android:name="android.permission.CALL_PHONE" />
52    <uses-permission android:name="android.permission.SET_WALLPAPER" />
53    <uses-permission android:name="android.permission.SET_WALLPAPER_HINTS" />
54    <uses-permission android:name="android.permission.VIBRATE" />
55    <uses-permission android:name="android.permission.BIND_APPWIDGET" />
56    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
57    <uses-permission android:name="android.permission.BROADCAST_STICKY"/>
58    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
59    <uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
60    <uses-permission android:name="com.android.launcher.permission.WRITE_SETTINGS" />
61    <uses-permission android:name="com.android.launcher3.permission.READ_SETTINGS" />
62    <uses-permission android:name="com.android.launcher3.permission.WRITE_SETTINGS" />
63    <uses-permission android:name="com.android.launcher3.permission.RECEIVE_LAUNCH_BROADCASTS" />
64    <uses-permission android:name="com.android.launcher3.permission.RECEIVE_FIRST_LOAD_BROADCAST" />
65
66    <application
67        android:allowBackup="@bool/enable_backup"
68        android:backupAgent="com.android.launcher3.LauncherBackupAgentHelper"
69        android:hardwareAccelerated="true"
70        android:icon="@mipmap/ic_launcher_home"
71        android:label="@string/app_name"
72        android:largeHeap="@bool/config_largeHeap"
73        android:restoreAnyVersion="true"
74        android:supportsRtl="true" >
75
76        <activity
77            android:name="com.android.launcher3.Launcher"
78            android:launchMode="singleTask"
79            android:clearTaskOnLaunch="true"
80            android:stateNotNeeded="true"
81            android:theme="@style/Theme"
82            android:windowSoftInputMode="adjustPan"
83            android:screenOrientation="nosensor"
84            android:configChanges="keyboard|keyboardHidden|navigation"
85            android:resumeWhilePausing="true"
86            android:taskAffinity=""
87            android:enabled="true">
88            <intent-filter>
89                <action android:name="android.intent.action.MAIN" />
90                <category android:name="android.intent.category.HOME" />
91                <category android:name="android.intent.category.DEFAULT" />
92                <category android:name="android.intent.category.MONKEY"/>
93            </intent-filter>
94        </activity>
95
96        <activity
97            android:name="com.android.launcher3.WallpaperPickerActivity"
98            android:theme="@style/Theme.WallpaperPicker"
99            android:label="@string/pick_wallpaper"
100            android:icon="@mipmap/ic_launcher_wallpaper"
101            android:finishOnCloseSystemDialogs="true"
102            android:process=":wallpaper_chooser">
103            <intent-filter>
104                <action android:name="android.intent.action.SET_WALLPAPER" />
105                <category android:name="android.intent.category.DEFAULT" />
106            </intent-filter>
107        </activity>
108
109        <activity
110            android:name="com.android.launcher3.WallpaperCropActivity"
111            android:theme="@style/Theme.WallpaperCropper"
112            android:label="@string/crop_wallpaper"
113            android:icon="@mipmap/ic_launcher_wallpaper"
114            android:finishOnCloseSystemDialogs="true"
115            android:process=":wallpaper_chooser">
116            <intent-filter>
117                <action android:name="android.service.wallpaper.CROP_AND_SET_WALLPAPER" />
118                <category android:name="android.intent.category.DEFAULT" />
119                <data android:mimeType="image/*" />
120            </intent-filter>
121        </activity>
122
123        <activity
124            android:name="com.android.launcher3.SettingsActivity"
125            android:label="@string/settings_button_text"
126            android:autoRemoveFromRecents="true"
127            android:process=":settings_process">
128        </activity>
129
130        <!-- Intent received used to install shortcuts from other applications -->
131        <receiver
132            android:name="com.android.launcher3.InstallShortcutReceiver"
133            android:permission="com.android.launcher.permission.INSTALL_SHORTCUT">
134            <intent-filter>
135                <action android:name="com.android.launcher.action.INSTALL_SHORTCUT" />
136            </intent-filter>
137        </receiver>
138
139        <!-- Intent received used to initialize a restored widget -->
140        <receiver android:name="com.android.launcher3.AppWidgetsRestoredReceiver" >
141            <intent-filter>
142                <action android:name="android.appwidget.action.APPWIDGET_HOST_RESTORED"/>
143            </intent-filter>
144        </receiver>
145
146        <receiver android:name="com.android.launcher3.StartupReceiver" >
147            <intent-filter>
148                <action android:name="android.intent.action.BOOT_COMPLETED" />
149            </intent-filter>
150        </receiver>
151
152        <!-- The settings provider contains Home's data, like the workspace favorites -->
153        <provider
154            android:name="com.android.launcher3.LauncherProvider"
155            android:authorities="com.android.launcher3.settings"
156            android:exported="true"
157            android:writePermission="com.android.launcher3.permission.WRITE_SETTINGS"
158            android:readPermission="com.android.launcher3.permission.READ_SETTINGS" />
159
160        <meta-data android:name="android.nfc.disable_beam_default"
161                       android:value="true" />
162
163        <!-- ENABLE_FOR_TESTING
164
165        <activity
166            android:name="com.android.launcher3.testing.LauncherExtension"
167            android:launchMode="singleTask"
168            android:clearTaskOnLaunch="true"
169            android:stateNotNeeded="true"
170            android:theme="@style/Theme"
171            android:windowSoftInputMode="adjustPan"
172            android:screenOrientation="nosensor"
173            >
174            <intent-filter>
175                <action android:name="android.intent.action.MAIN" />
176                <category android:name="android.intent.category.HOME" />
177                <category android:name="android.intent.category.DEFAULT" />
178                <category android:name="android.intent.category.MONKEY"/>
179            </intent-filter>
180        </activity>
181
182        <activity
183            android:name="com.android.launcher3.testing.MemoryDumpActivity"
184            android:theme="@android:style/Theme.NoDisplay"
185            android:label="* HPROF"
186            android:excludeFromRecents="true"
187            android:icon="@mipmap/ic_launcher_home"
188            >
189            <intent-filter>
190                <action android:name="android.intent.action.MAIN" />
191                <category android:name="android.intent.category.DEFAULT" />
192                <category android:name="android.intent.category.LAUNCHER" />
193            </intent-filter>
194        </activity>
195
196        <activity
197            android:name="com.android.launcher3.testing.ToggleWeightWatcher"
198            android:label="Show Mem"
199            android:icon="@mipmap/ic_launcher_home">
200            <intent-filter>
201                <action android:name="android.intent.action.MAIN" />
202                <category android:name="android.intent.category.DEFAULT" />
203                <category android:name="android.intent.category.LAUNCHER" />
204            </intent-filter>
205        </activity>
206
207        <service android:name="com.android.launcher3.testing.MemoryTracker" />
208
209        -->
210
211    </application>
212</manifest>
213