blob: 8eaa175c3a739a300ab8076d4e7e093002c2a7e2 [file] [log] [blame]
The Android Open Source Project96c5af42009-03-03 19:32:22 -08001<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (C) 2008 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.email">
19 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
20 <uses-permission android:name="android.permission.READ_CONTACTS"/>
21 <uses-permission android:name="android.permission.READ_OWNER_DATA"/>
22 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
23 <uses-permission android:name="android.permission.INTERNET"/>
24 <uses-permission android:name="android.permission.VIBRATE"/>
Andrew Stadlera392e072009-06-04 15:16:43 -070025 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Marc Blank03ecce72009-08-20 14:38:12 -070026 <uses-permission android:name="android.permission.GET_ACCOUNTS" />
Andrew Stadler627d1ae2009-07-24 16:25:18 -070027 <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
Marc Blank948c36f2009-07-27 10:24:58 -070028 <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
Fred Quintana4c195432009-08-17 13:05:44 -070029 <uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
30 <uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
31
Marc Blankb6493a02009-07-05 12:54:49 -070032 <!-- For EAS purposes; could be removed when EAS has a permanent home -->
33 <uses-permission android:name="android.permission.WRITE_CONTACTS"/>
Marc Blankf3fcb892009-10-28 18:12:51 -070034 <uses-permission android:name="android.permission.WRITE_CALENDAR"/>
35 <uses-permission android:name="android.permission.READ_CALENDAR"/>
Marc Blankb6493a02009-07-05 12:54:49 -070036
Andy Stadlerdab90a72009-05-06 17:50:29 -070037 <!-- Only required if a store implements push mail and needs to keep network open -->
38 <uses-permission android:name="android.permission.WAKE_LOCK"/>
39 <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
Andrew Stadler22722202009-09-20 17:23:59 -070040
41 <!-- Grant permission to other apps to view attachments -->
The Android Open Source Project96c5af42009-03-03 19:32:22 -080042 <permission android:name="com.android.email.permission.READ_ATTACHMENT"
43 android:permissionGroup="android.permission-group.MESSAGES"
44 android:protectionLevel="dangerous"
45 android:label="@string/read_attachment_label"
46 android:description="@string/read_attachment_desc"/>
47 <uses-permission android:name="com.android.email.permission.READ_ATTACHMENT"/>
Andrew Stadler22722202009-09-20 17:23:59 -070048
49 <!-- Grant permission to system apps to access provider (see provider below) -->
50 <permission android:name="com.android.email.permission.ACCESS_PROVIDER"
51 android:protectionLevel="signatureOrSystem"
52 android:label="@string/permission_access_provider_label"
53 android:description="@string/permission_access_provider_desc"/>
54 <uses-permission android:name="com.android.email.permission.ACCESS_PROVIDER"/>
55
The Android Open Source Project96c5af42009-03-03 19:32:22 -080056 <application android:icon="@drawable/icon" android:label="@string/app_name"
57 android:name="Email">
58 <activity android:name=".activity.Welcome">
59 <intent-filter>
60 <action android:name="android.intent.action.MAIN" />
61 <category android:name="android.intent.category.DEFAULT" />
62 <category android:name="android.intent.category.LAUNCHER" />
63 </intent-filter>
64 </activity>
65
Marc Blank06275c42009-08-05 21:48:15 -070066 <!-- Must be exported in order for the AccountManager to launch it -->
The Android Open Source Project96c5af42009-03-03 19:32:22 -080067 <activity
68 android:name=".activity.setup.AccountSetupBasics"
69 android:label="@string/account_setup_basics_title"
Marc Blank06275c42009-08-05 21:48:15 -070070 android:exported="true"
The Android Open Source Project96c5af42009-03-03 19:32:22 -080071 >
72 </activity>
73 <activity
74 android:name=".activity.setup.AccountSetupAccountType"
75 android:label="@string/account_setup_account_type_title"
76 >
77 </activity>
78 <activity
79 android:name=".activity.setup.AccountSetupIncoming"
80 android:label="@string/account_setup_incoming_title"
81 >
82 </activity>
83 <activity
84 android:name=".activity.setup.AccountSetupOutgoing"
85 android:label="@string/account_setup_outgoing_title"
86 >
87 </activity>
Makoto Onuki91237e92010-02-02 15:06:52 -080088 <!--EXCHANGE-REMOVE-SECTION-START-->
The Android Open Source Project96c5af42009-03-03 19:32:22 -080089 <activity
Andy Stadler87c43ca2009-04-03 16:02:55 -070090 android:name=".activity.setup.AccountSetupExchange"
91 android:label="@string/account_setup_exchange_title"
92 >
93 </activity>
Makoto Onuki91237e92010-02-02 15:06:52 -080094 <!--EXCHANGE-REMOVE-SECTION-END-->
Andy Stadler87c43ca2009-04-03 16:02:55 -070095 <activity
The Android Open Source Project96c5af42009-03-03 19:32:22 -080096 android:name=".activity.setup.AccountSetupOptions"
97 android:label="@string/account_setup_options_title"
98 >
99 </activity>
100 <activity
101 android:name=".activity.setup.AccountSetupNames"
102 android:label="@string/account_setup_names_title"
103 >
104 </activity>
105 <!-- XXX Note: this activity is hacked to ignore config changes,
106 since it doesn't currently handle them correctly in code. -->
107 <activity
108 android:name=".activity.setup.AccountSetupCheckSettings"
109 android:label="@string/account_setup_check_settings_title"
110 android:configChanges="keyboardHidden|orientation"
111 >
112 </activity>
113 <activity
114 android:name=".activity.setup.AccountSettings"
115 android:label="@string/account_settings_action"
The Android Open Source Project96c5af42009-03-03 19:32:22 -0800116 >
117 </activity>
Andrew Stadler3d2b3b32010-02-05 11:10:39 -0800118 <activity
119 android:name=".activity.setup.AccountSecurity"
120 android.label="@string/account_security_title"
121 >
122 </activity>
The Android Open Source Project96c5af42009-03-03 19:32:22 -0800123
124 <activity
125 android:name=".activity.Debug"
126 android:label="@string/debug_title">
127 </activity>
128 <activity
Andrew Stadler72dce732009-07-09 12:33:09 -0700129 android:name=".activity.AccountFolderList"
The Android Open Source Project96c5af42009-03-03 19:32:22 -0800130 android:launchMode="singleTop" >
131 </activity>
132
133 <activity
134 android:name=".activity.AccountShortcutPicker"
135 android:label="@string/app_name"
136 android:enabled="false"
137 >
138 <intent-filter>
139 <action android:name="android.intent.action.CREATE_SHORTCUT" />
140 <category android:name="android.intent.category.DEFAULT" />
141 </intent-filter>
142 </activity>
143
144 <activity
Andrew Stadler9e5ee452009-07-29 19:21:37 -0700145 android:name=".activity.MailboxList">
The Android Open Source Project96c5af42009-03-03 19:32:22 -0800146 </activity>
Andrew Stadler47654722009-06-30 15:12:23 -0700147
148 <activity
149 android:name=".activity.MessageList">
Andrew Stadler4e4abc62009-07-21 11:06:14 -0700150 <intent-filter>
151 <!-- This action is only to allow an entry point for launcher shortcuts -->
152 <action android:name="android.intent.action.MAIN" />
153 </intent-filter>
Andrew Stadler47654722009-06-30 15:12:23 -0700154 </activity>
155
The Android Open Source Project96c5af42009-03-03 19:32:22 -0800156 <activity
157 android:name=".activity.MessageView"
158 android:theme="@android:style/Theme.NoTitleBar" >
159 </activity>
160 <activity
161 android:name=".activity.MessageCompose"
162 android:label="@string/app_name"
163 android:enabled="false"
164 >
165 <intent-filter>
166 <action android:name="android.intent.action.VIEW" />
167 <action android:name="android.intent.action.SENDTO" />
168 <data android:scheme="mailto" />
169 <category android:name="android.intent.category.DEFAULT" />
170 <category android:name="android.intent.category.BROWSABLE" />
171 </intent-filter>
172 <intent-filter android:label="@string/app_name">
173 <action android:name="android.intent.action.SEND" />
Andrew Stadler92a1ff92009-09-27 23:49:10 -0700174 <data android:mimeType="*/*" />
The Android Open Source Project96c5af42009-03-03 19:32:22 -0800175 <category android:name="android.intent.category.DEFAULT" />
176 </intent-filter>
Mihai Predafa2238c2009-09-01 16:25:30 +0200177 <intent-filter android:label="@string/app_name">
178 <action android:name="android.intent.action.SEND_MULTIPLE" />
179 <data android:mimeType="*/*" />
180 <category android:name="android.intent.category.DEFAULT" />
181 </intent-filter>
The Android Open Source Project96c5af42009-03-03 19:32:22 -0800182 </activity>
Makoto Onuki91237e92010-02-02 15:06:52 -0800183 <!--EXCHANGE-REMOVE-SECTION-START-->
Marc Blank5f251622009-08-04 22:33:32 -0700184 <receiver android:name="com.android.exchange.EmailSyncAlarmReceiver"/>
Marc Blankb6493a02009-07-05 12:54:49 -0700185 <receiver android:name="com.android.exchange.MailboxAlarmReceiver"/>
Marc Blank53cb37c2009-08-28 10:33:18 -0700186 <receiver android:name="com.android.exchange.BootReceiver" android:enabled="true">
187 <intent-filter>
188 <action android:name="android.intent.action.BOOT_COMPLETED" />
189 </intent-filter>
190 </receiver>
Makoto Onuki91237e92010-02-02 15:06:52 -0800191 <!--EXCHANGE-REMOVE-SECTION-END-->
Marc Blank53cb37c2009-08-28 10:33:18 -0700192
Marc Blank5fed9342009-09-23 15:06:19 -0700193 <receiver android:name=".service.BootReceiver" android:enabled="true">
The Android Open Source Project96c5af42009-03-03 19:32:22 -0800194 <intent-filter>
195 <action android:name="android.intent.action.BOOT_COMPLETED" />
196 </intent-filter>
197 <intent-filter>
198 <action android:name="android.intent.action.DEVICE_STORAGE_LOW" />
199 </intent-filter>
200 <intent-filter>
201 <action android:name="android.intent.action.DEVICE_STORAGE_OK" />
202 </intent-filter>
203 </receiver>
Marc Blank53cb37c2009-08-28 10:33:18 -0700204
Andrew Stadlerd6286082010-02-01 16:48:16 -0800205 <!-- Support for DeviceAdmin / DevicePolicyManager. See SecurityPolicy class for impl. -->
206 <receiver
207 android:name=".SecurityPolicy$PolicyAdmin"
208 android:label="@string/device_admin_label"
209 android:description="@string/device_admin_description"
210 android:permission="android.permission.BIND_DEVICE_ADMIN" >
211 <meta-data
212 android:name="android.app.device_admin"
213 android:resource="@xml/device_admin" />
214 <intent-filter>
215 <action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
216 </intent-filter>
217 </receiver>
218
Makoto Onukib854d052010-01-28 10:07:51 -0800219 <receiver
220 android:name=".OneTimeInitializer"
221 android:enabled="true"
222 >
223 <intent-filter>
224 <action android:name="android.intent.action.BOOT_COMPLETED" />
225 </intent-filter>
226 </receiver>
227
The Android Open Source Project96c5af42009-03-03 19:32:22 -0800228 <service
229 android:name=".service.MailService"
230 android:enabled="false"
231 >
232 </service>
Marc Blank28fc7792009-07-20 17:15:45 -0700233
Makoto Onuki91237e92010-02-02 15:06:52 -0800234 <!--EXCHANGE-REMOVE-SECTION-START-->
Marc Blank948c36f2009-07-27 10:24:58 -0700235 <!--Required stanza to register the ContactsSyncAdapterService with SyncManager -->
236 <service
237 android:name="com.android.exchange.ContactsSyncAdapterService"
238 android:exported="true">
239 <intent-filter>
240 <action android:name="android.content.SyncAdapter" />
241 </intent-filter>
242 <meta-data android:name="android.content.SyncAdapter"
243 android:resource="@xml/syncadapter_contacts" />
244 </service>
245
Marc Blankf3fcb892009-10-28 18:12:51 -0700246 <!--Required stanza to register the CalendarSyncAdapterService with SyncManager -->
247 <service
248 android:name="com.android.exchange.CalendarSyncAdapterService"
249 android:exported="true">
250 <intent-filter>
251 <action android:name="android.content.SyncAdapter" />
252 </intent-filter>
253 <meta-data android:name="android.content.SyncAdapter"
254 android:resource="@xml/syncadapter_calendar" />
255 </service>
256
Marc Blank28fc7792009-07-20 17:15:45 -0700257 <!-- Add android:process=":remote" below to enable SyncManager as a separate process -->
Marc Blank2c67f1f2009-06-16 12:03:45 -0700258 <service
259 android:name="com.android.exchange.SyncManager"
260 android:enabled="true"
261 >
262 </service>
Andrew Stadler17250422009-07-07 09:39:11 -0700263
264 <!--Required stanza to register the EasAuthenticatorService with AccountManager -->
Makoto Onukib854d052010-01-28 10:07:51 -0800265 <service
266 android:name=".service.EasAuthenticatorService"
267 android:exported="true"
268 android:enabled="true"
269 >
Andrew Stadler17250422009-07-07 09:39:11 -0700270 <intent-filter>
271 <action android:name="android.accounts.AccountAuthenticator" />
272 </intent-filter>
Makoto Onukib854d052010-01-28 10:07:51 -0800273 <meta-data
274 android:name="android.accounts.AccountAuthenticator"
275 android:resource="@xml/authenticator"
276 />
277 </service>
278 <!--
279 EasAuthenticatorService with the altenative label. Disabled by default,
280 and OneTimeInitializer enables it if the vendor policy tells so.
281 -->
282 <service
283 android:name=".service.EasAuthenticatorServiceAlternate"
284 android:exported="true"
285 android:enabled="false"
286 >
287 <intent-filter>
288 <action android:name="android.accounts.AccountAuthenticator" />
289 </intent-filter>
290 <meta-data
291 android:name="android.accounts.AccountAuthenticator"
292 android:resource="@xml/authenticator_alternate"
293 />
Andrew Stadler17250422009-07-07 09:39:11 -0700294 </service>
Makoto Onuki91237e92010-02-02 15:06:52 -0800295 <!--EXCHANGE-REMOVE-SECTION-END-->
Andrew Stadler17250422009-07-07 09:39:11 -0700296
The Android Open Source Project96c5af42009-03-03 19:32:22 -0800297 <provider
298 android:name=".provider.AttachmentProvider"
299 android:authorities="com.android.email.attachmentprovider"
300 android:multiprocess="true"
301 android:grantUriPermissions="true"
302 android:readPermission="com.android.email.permission.READ_ATTACHMENT"
303 />
Andrew Stadler22722202009-09-20 17:23:59 -0700304
305 <!-- This provider MUST be protected by strict permissions, as granting access to
306 it exposes user passwords and other confidential information. -->
Marc Blankc5f2a7a2009-05-27 15:43:27 -0700307 <provider
308 android:name=".provider.EmailProvider"
309 android:authorities="com.android.email.provider"
310 android:multiprocess="true"
Andrew Stadler22722202009-09-20 17:23:59 -0700311 android:permission="com.android.email.permission.ACCESS_PROVIDER"
Marc Blankc5f2a7a2009-05-27 15:43:27 -0700312 />
The Android Open Source Project96c5af42009-03-03 19:32:22 -0800313 </application>
314</manifest>