1 <?xml version="1.0" encoding="utf-8"?> 2 <!-- 3 Copyright (C) 2012 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 <!-- The format of the version code is vvMMDDc 18 vv is major version number 19 MM is the ordinal month number. This starts at 0 for each major release and 20 counts up for each month 21 DD is the day of the month 22 c is a code which increments per version, in case we have multiple releases 23 on the same date. This should start at zero. --> 24 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 25 package="com.android.email" 26 android:versionCode="7008110" > 27 28 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/> 29 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 30 <uses-permission android:name="android.permission.INTERNET"/> 31 <uses-permission android:name="android.permission.VIBRATE"/> 32 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 33 <uses-permission android:name="android.permission.GET_ACCOUNTS" /> 34 <uses-permission android:name="android.permission.MANAGE_ACCOUNTS"/> 35 <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" /> 36 <uses-permission android:name="android.permission.READ_SYNC_SETTINGS" /> 37 <uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS"/> 38 <uses-permission android:name="android.permission.WRITE_CONTACTS"/> 39 <uses-permission android:name="android.permission.READ_CONTACTS"/> 40 <uses-permission android:name="android.permission.WRITE_CONTACTS"/> 41 <uses-permission android:name="android.permission.READ_CALENDAR"/> 42 <uses-permission android:name="android.permission.WRITE_CALENDAR"/> 43 <uses-permission android:name="android.permission.READ_PROFILE"/> 44 <uses-permission android:name="android.permission.NFC"/> 45 <uses-permission android:name="android.permission.WAKE_LOCK"/> 46 <uses-permission android:name="android.permission.READ_PHONE_STATE"/> 47 <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" /> 48 49 <!-- This needs to be present when we are doing unbundled releases. --> 50 <uses-sdk android:targetSdkVersion="19" android:minSdkVersion="14" /> 51 52 <!-- additional uses --> 53 54 <original-package android:name="com.android.email" /> 55 56 <!-- Grant permission to other apps to view attachments --> 57 <!-- STOPSHIP: protectionLevel should not be dangerous --> 58 <permission 59 android:name="com.android.email.permission.READ_ATTACHMENT" 60 android:permissionGroup="android.permission-group.MESSAGES" 61 android:protectionLevel="dangerous" 62 android:label="@string/permission_read_attachment_label" 63 android:description="@string/permission_read_attachment_desc"/> 64 <uses-permission 65 android:name="com.android.email.permission.READ_ATTACHMENT"/> 66 67 <uses-permission 68 android:name="android.permission.USE_CREDENTIALS"/> 69 70 <!-- Grant permission to system apps to access provider (see provider below) --> 71 <permission 72 android:name="com.android.email.permission.ACCESS_PROVIDER" 73 android:protectionLevel="signature" 74 android:label="@string/permission_access_provider_label" 75 android:description="@string/permission_access_provider_desc"/> 76 <uses-permission 77 android:name="com.android.email.permission.ACCESS_PROVIDER"/> 78 79 <application 80 android:name=".EmailApplication" 81 android:icon="@mipmap/ic_launcher_mail" 82 android:label="@string/app_name" 83 android:requiredAccountType="com.android.exchange,com.android.email" 84 android:theme="@style/UnifiedEmailTheme" 85 android:hardwareAccelerated="true" 86 android:allowBackup="false" 87 android:supportsRtl="true" > 88 <!-- Enable search in all activities --> 89 <meta-data android:name="android.app.default_searchable" 90 android:value="com.android.email2.ui.MailActivityEmail" /> 91 <activity 92 android:name="com.android.email.activity.ComposeActivityEmail" 93 android:label="@string/app_name" 94 android:documentLaunchMode="intoExisting" 95 android:autoRemoveFromRecents="true" 96 android:theme="@style/ComposeTheme"> 97 <intent-filter> 98 <action 99 android:name="android.intent.action.VIEW" /> 100 <action 101 android:name="android.intent.action.SENDTO" /> 102 <data 103 android:scheme="mailto" /> 104 <category 105 android:name="android.intent.category.DEFAULT" /> 106 <category 107 android:name="android.intent.category.BROWSABLE" /> 108 </intent-filter> 109 <intent-filter 110 android:label="@string/app_name"> 111 <action 112 android:name="android.intent.action.SEND" /> 113 <data 114 android:mimeType="*/*" /> 115 <category 116 android:name="android.intent.category.DEFAULT" /> 117 </intent-filter> 118 <intent-filter 119 android:label="@string/app_name"> 120 <action 121 android:name="android.intent.action.SEND_MULTIPLE" /> 122 <data 123 android:mimeType="*/*" /> 124 <category 125 android:name="android.intent.category.DEFAULT" /> 126 </intent-filter> 127 <intent-filter> 128 <action 129 android:name="com.android.email.intent.action.REPLY" /> 130 </intent-filter> 131 <intent-filter> 132 <action android:name="android.intent.action.SEND" /> 133 <category 134 android:name="android.intent.category.DEFAULT" /> 135 <data 136 android:scheme="content" 137 android:host="ui.email2.android.com" 138 android:pathPrefix="/compose" 139 /> 140 </intent-filter> 141 <intent-filter> 142 <action android:name="android.nfc.action.NDEF_DISCOVERED" /> 143 <category android:name="android.intent.category.DEFAULT" /> 144 <data android:scheme="mailto" /> 145 </intent-filter> 146 147 <intent-filter> 148 <action android:name="com.android.mail.intent.action.LAUNCH_COMPOSE" /> 149 <category android:name="android.intent.category.DEFAULT" /> 150 </intent-filter> 151 152 <intent-filter> 153 <action android:name="com.android.mail.intent.action.LAUNCH_COMPOSE" /> 154 <category android:name="android.intent.category.DEFAULT" /> 155 <data android:scheme="content" /> 156 </intent-filter> 157 </activity> 158 159 <activity-alias android:name="com.android.mail.compose.ComposeActivity" 160 android:targetActivity="com.android.email.activity.ComposeActivityEmail"/> 161 162 <activity 163 android:name=".activity.setup.OAuthAuthenticationActivity" 164 android:label="@string/oauth_authentication_title"> 165 </activity> 166 167 <activity 168 android:name=".activity.setup.AccountCredentials" 169 android:label="@string/sign_in_title" 170 android:exported="false" 171 android:excludeFromRecents="true" 172 android:theme="@style/AccountSetupDialogActivityTheme"> 173 </activity> 174 175 <activity 176 android:name=".activity.EventViewer" 177 android:label="@string/app_name" 178 > 179 <intent-filter> 180 <action android:name="android.intent.action.VIEW" /> 181 <category 182 android:name="android.intent.category.DEFAULT" /> 183 <data 184 android:scheme="content" 185 android:host="ui.email2.android.com" 186 android:pathPrefix="/event" 187 /> 188 </intent-filter> 189 </activity> 190 191 <activity android:name="com.android.mail.ui.FolderSelectionActivity" 192 android:label="@string/activity_folder_selection" 193 android:theme="@style/ShortcutWidgetTheme" /> 194 195 <activity android:name="com.android.email2.ui.MailboxSelectionActivityEmail" 196 android:theme="@style/ShortcutWidgetTheme" 197 android:label="@string/app_name" > 198 <intent-filter> 199 <action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" /> 200 </intent-filter> 201 </activity> 202 203 <activity android:name="com.android.mail.ui.ShortcutNameActivity" 204 android:label="@string/shortcut_name_title" 205 android:theme="@style/ShortcutWidgetTheme"> 206 </activity> 207 208 <activity android:name="com.android.mail.ui.MailboxSelectionActivity" 209 android:theme="@style/ShortcutWidgetTheme" 210 android:label="@string/app_name" > 211 <intent-filter> 212 <action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" /> 213 </intent-filter> 214 </activity> 215 216 <activity android:name="com.android.email2.ui.CreateShortcutActivityEmail" 217 android:theme="@style/ShortcutWidgetTheme" 218 android:label="@string/folder_shortcut_widget_label"> 219 220 <intent-filter> 221 <action android:name="android.intent.action.CREATE_SHORTCUT" /> 222 <category android:name="android.intent.category.DEFAULT" /> 223 </intent-filter> 224 225 </activity> 226 227 <activity 228 android:label="@string/app_name" 229 android:name="com.android.email2.ui.MailActivityEmail" 230 android:theme="@style/MailActivityTheme" 231 android:windowSoftInputMode="adjustPan|stateUnspecified" > 232 <intent-filter> 233 <action android:name="android.intent.action.VIEW" /> 234 <category android:name="android.intent.category.DEFAULT" /> 235 <data android:scheme="content"/> 236 <data android:mimeType="@string/application_mime_type" /> 237 </intent-filter> 238 <intent-filter> 239 <action android:name="android.intent.action.SEARCH" /> 240 <category android:name="android.intent.category.DEFAULT" /> 241 </intent-filter> 242 <meta-data android:name="android.app.searchable" android:resource="@xml/searchable" /> 243 </activity> 244 245 <activity-alias android:name="com.android.email.activity.Welcome" 246 android:targetActivity="com.android.email2.ui.MailActivityEmail" 247 android:label="@string/app_name" > 248 <intent-filter > 249 <action android:name="android.intent.action.MAIN" /> 250 <category android:name="android.intent.category.DEFAULT" /> 251 <category android:name="android.intent.category.LAUNCHER" /> 252 <category android:name="android.intent.category.APP_EMAIL" /> 253 </intent-filter> 254 <intent-filter> 255 <action android:name="android.intent.action.VIEW" /> 256 <action android:name="android.intent.action.MAIN" /> 257 <category android:name="android.intent.category.DEFAULT" /> 258 <category android:name="android.intent.category.LAUNCHER" /> 259 <data 260 android:scheme="content" 261 android:host="ui.email.android.com" 262 android:path="/view/mailbox" 263 /> 264 </intent-filter> 265 </activity-alias> 266 267 <!-- Must be exported in order for the AccountManager to launch it --> 268 <!-- Also available for continuous test systems to force account creation --> 269 <!-- TODO: fix this label --> 270 <activity 271 android:name=".activity.setup.AccountSetupFinal" 272 android:label="@string/account_setup_basics_title" 273 android:exported="true" 274 > 275 <intent-filter> 276 <action android:name="com.android.email.FORCE_CREATE_ACCOUNT" /> 277 <action android:name="com.android.email.CREATE_NEW_ACCOUNT" /> 278 <category android:name="android.intent.category.DEFAULT" /> 279 </intent-filter> 280 </activity> 281 <activity 282 android:name=".activity.setup.EmailPreferenceActivity" 283 android:label="@string/settings_activity_title" 284 android:exported="false" > 285 <intent-filter> 286 <action android:name="android.intent.action.EDIT" /> 287 <action android:name="android.intent.action.VIEW" /> 288 <category android:name="android.intent.category.DEFAULT" /> 289 <data 290 android:scheme="content" 291 android:host="ui.email.android.com" 292 android:pathPrefix="/settings" 293 /> 294 </intent-filter> 295 </activity> 296 <activity 297 android:name="com.android.mail.ui.settings.PublicPreferenceActivity" 298 android:label="@string/settings_activity_title" 299 android:exported="true" 300 android:theme="@android:style/Theme.NoDisplay" > 301 <!-- Must be exported in order for the AccountManager to launch it --> 302 <intent-filter> 303 <action android:name="com.android.email.activity.setup.ACCOUNT_MANAGER_ENTRY" /> 304 <category android:name="android.intent.category.DEFAULT" /> 305 </intent-filter> 306 <intent-filter> 307 <action android:name="android.intent.action.MANAGE_NETWORK_USAGE" /> 308 <category android:name="android.intent.category.DEFAULT" /> 309 </intent-filter> 310 </activity> 311 <activity 312 android:name=".activity.setup.AccountServerSettingsActivity" 313 android:label="@string/mailbox_settings_activity_title" 314 android:exported="false" 315 android:excludeFromRecents="true" 316 android:theme="@style/AccountSetupDialogActivityTheme" /> 317 <!-- a Headless Activity to load the account from the account id before navigating to the 318 Incoming Account Settings fragment --> 319 <activity 320 android:name=".activity.setup.HeadlessAccountSettingsLoader" 321 android:theme="@android:style/Theme.NoDisplay" 322 > 323 <intent-filter> 324 <action android:name="android.intent.action.VIEW" /> 325 <category android:name="android.intent.category.DEFAULT" /> 326 <data android:host="com.android.email.ACCOUNT_SETTINGS" /> 327 <data android:scheme="auth"/> 328 </intent-filter> 329 </activity> 330 <activity 331 android:name=".provider.FolderPickerActivity" 332 android:label="@string/folder_picker_title" 333 > 334 <intent-filter> 335 <action android:name="android.intent.action.EDIT" /> 336 <category android:name="android.intent.category.DEFAULT" /> 337 <data 338 android:scheme="content" 339 android:host="ui.email.android.com" 340 android:pathPrefix="/setup" 341 /> 342 </intent-filter> 343 </activity> 344 <activity 345 android:name=".activity.setup.AccountSecurity" 346 android:label="@string/account_security_title" 347 > 348 </activity> 349 350 <activity 351 android:name=".activity.setup.MailboxSettings" 352 android:label="@string/mailbox_settings_activity_title" 353 android:exported="false" /> 354 355 <activity 356 android:name="com.android.mail.photo.MailPhotoViewActivity" 357 android:label="@string/app_name" 358 android:theme="@style/PhotoViewTheme" > 359 </activity> 360 361 <activity 362 android:name="com.android.mail.browse.EmlViewerActivity" 363 android:label="@string/app_name" 364 android:theme="@style/UnifiedEmailTheme" > 365 <intent-filter> 366 <action android:name="android.intent.action.VIEW" /> 367 <category android:name="android.intent.category.DEFAULT" /> 368 <data android:mimeType="message/rfc822" /> 369 <data android:mimeType="application/eml" /> 370 </intent-filter> 371 </activity> 372 373 <activity 374 android:name="com.android.mail.ui.HelpActivity" 375 android:label="@string/help_and_info"> 376 </activity> 377 378 <activity 379 android:name="com.android.mail.ui.LicensesActivity" 380 android:label="@string/open_source_licenses"> 381 </activity> 382 383 <!-- additional activities --> 384 385 <provider 386 android:authorities="com.android.email.conversation.provider" 387 android:label="@string/conversation_content_provider" 388 android:exported="true" 389 android:name="com.android.mail.browse.EmailConversationProvider" > 390 <grant-uri-permission android:pathPattern=".*" /> 391 </provider> 392 393 <provider 394 android:authorities="com.android.email.accountcache" 395 android:label="@string/account_cache_provider" 396 android:exported="true" 397 android:name="com.android.mail.providers.EmailAccountCacheProvider" > 398 <grant-uri-permission android:pathPattern=".*" /> 399 </provider> 400 401 <provider 402 android:authorities="@string/eml_attachment_provider" 403 android:exported="false" 404 android:name="com.android.mail.providers.EmlAttachmentProvider" > 405 <grant-uri-permission android:pathPattern=".*" /> 406 </provider> 407 408 <!-- The android:name is the name of the Provider class which is stored in 409 UnifiedEmail, and has package name com.android.mail.providers and the class is 410 called SuggestionsProvider. The authority name is specified in the MailAppProvider 411 which is specific to the two apps separately. --> 412 <provider android:name="com.android.mail.providers.SuggestionsProvider" 413 android:authorities="com.android.email.suggestionsprovider" 414 android:exported="true" /> 415 416 <service android:name="com.android.mail.compose.EmptyService"/> 417 <!-- Widget --> 418 <receiver android:name=".provider.WidgetProvider" android:label="@string/app_name"> 419 <intent-filter> 420 <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> 421 </intent-filter> 422 <intent-filter> 423 <action android:name="com.android.mail.ACTION_NOTIFY_DATASET_CHANGED" /> 424 <data android:mimeType="@string/application_mime_type" /> 425 </intent-filter> 426 <intent-filter> 427 <action android:name="com.android.mail.ACTION_UPDATE_WIDGET" /> 428 <data android:mimeType="@string/application_mime_type" /> 429 </intent-filter> 430 <intent-filter> 431 <action android:name="com.android.mail.ACTION_VALIDATE_ALL_WIDGETS" /> 432 <data android:mimeType="@string/application_mime_type" /> 433 </intent-filter> 434 <meta-data android:name="android.appwidget.provider" 435 android:resource="@xml/widget_info" /> 436 </receiver> 437 <service android:name="com.android.mail.widget.WidgetService" 438 android:permission="android.permission.BIND_REMOTEVIEWS" 439 android:exported="false" /> 440 441 <!-- From Email application --> 442 443 <receiver 444 android:name=".service.AttachmentService$AttachmentWatchdog" 445 android:enabled="true"/> 446 447 <!-- Handles app upgrade. This disables itself after running once. --> 448 <receiver 449 android:name=".service.EmailUpgradeBroadcastReceiver" 450 android:enabled="true"> 451 <intent-filter> 452 <action android:name="android.intent.action.BOOT_COMPLETED" /> 453 <action android:name="android.intent.action.MY_PACKAGE_REPLACED" /> 454 </intent-filter> 455 </receiver> 456 457 <receiver 458 android:name=".service.EmailBroadcastReceiver" 459 android:enabled="true"> 460 <intent-filter> 461 <action android:name="android.intent.action.BOOT_COMPLETED" /> 462 <action android:name="android.intent.action.DEVICE_STORAGE_LOW" /> 463 <action android:name="android.intent.action.DEVICE_STORAGE_OK" /> 464 <action android:name="android.intent.action.LOCALE_CHANGED"/> 465 <action android:name="android.accounts.LOGIN_ACCOUNTS_CHANGED" /> 466 </intent-filter> 467 <!-- To handle new message notifications --> 468 <intent-filter> 469 <action android:name="com.android.mail.action.update_notification" 470 android:priority="-10" /> 471 <data android:mimeType="@string/application_mime_type" /> 472 </intent-filter> 473 <!-- To handle secret code to activate the debug screen. --> 474 <intent-filter> 475 <action 476 android:name="android.provider.Telephony.SECRET_CODE" /> 477 <!-- "36245" = "email" --> 478 <data 479 android:scheme="android_secret_code" 480 android:host="36245" /> 481 </intent-filter> 482 </receiver> 483 <service 484 android:name=".service.EmailBroadcastProcessorService" /> 485 486 <!-- Support for DeviceAdmin / DevicePolicyManager. See SecurityPolicy class for impl. --> 487 <receiver 488 android:name=".SecurityPolicy$PolicyAdmin" 489 android:label="@string/device_admin_label" 490 android:description="@string/device_admin_description" 491 android:permission="android.permission.BIND_DEVICE_ADMIN" > 492 <meta-data 493 android:name="android.app.device_admin" 494 android:resource="@xml/device_admin" /> 495 <intent-filter> 496 <action 497 android:name="android.app.action.DEVICE_ADMIN_ENABLED" /> 498 </intent-filter> 499 </receiver> 500 501 <service 502 android:name=".service.AttachmentService" 503 android:enabled="false" 504 > 505 </service> 506 507 <!--Required stanza to register the PopImapAuthenticatorService with AccountManager --> 508 <service 509 android:name=".service.Pop3AuthenticatorService" 510 android:exported="true" 511 android:enabled="true" 512 > 513 <intent-filter> 514 <action 515 android:name="android.accounts.AccountAuthenticator" /> 516 </intent-filter> 517 <meta-data 518 android:name="android.accounts.AccountAuthenticator" 519 android:resource="@xml/authenticator_pop3" 520 /> 521 </service> 522 <!--Required stanza to register the PopImapAuthenticatorService with AccountManager --> 523 <service 524 android:name=".service.ImapAuthenticatorService" 525 android:exported="true" 526 android:enabled="false" 527 > 528 <intent-filter> 529 <action 530 android:name="android.accounts.AccountAuthenticator" /> 531 </intent-filter> 532 <meta-data 533 android:name="android.accounts.AccountAuthenticator" 534 android:resource="@xml/authenticator_imap" 535 /> 536 </service> 537 538 <!--Required stanza to register the PopImapSyncAdapterService with SyncManager --> 539 <service 540 android:name="com.android.email.service.Pop3SyncAdapterService" 541 android:exported="true"> 542 <intent-filter> 543 <action 544 android:name="android.content.SyncAdapter" /> 545 </intent-filter> 546 <meta-data android:name="android.content.SyncAdapter" 547 android:resource="@xml/syncadapter_pop3" /> 548 </service> 549 550 <service 551 android:name="com.android.email.service.LegacyImapSyncAdapterService" 552 android:exported="true"> 553 <intent-filter> 554 <action 555 android:name="android.content.SyncAdapter" /> 556 </intent-filter> 557 <meta-data android:name="android.content.SyncAdapter" 558 android:resource="@xml/syncadapter_legacy_imap" /> 559 </service> 560 561 <!-- Require provider permission to use our Policy and Account services --> 562 <service 563 android:name=".service.PolicyService" 564 android:enabled="true" 565 android:permission="com.android.email.permission.ACCESS_PROVIDER" 566 > 567 <intent-filter> 568 <action 569 android:name="com.android.email.POLICY_INTENT" /> 570 </intent-filter> 571 </service> 572 573 <service 574 android:name=".service.AccountService" 575 android:enabled="true" 576 android:permission="com.android.email.permission.ACCESS_PROVIDER" 577 > 578 <intent-filter> 579 <action 580 android:name="com.android.email.ACCOUNT_INTENT" /> 581 </intent-filter> 582 </service> 583 584 <service 585 android:name=".service.ImapService" 586 android:enabled="true" 587 android:permission="com.android.email.permission.ACCESS_PROVIDER" 588 > 589 <intent-filter> 590 <action 591 android:name="com.android.email.IMAP_INTENT" /> 592 </intent-filter> 593 </service> 594 595 <service 596 android:name=".service.Pop3Service" 597 android:enabled="true" 598 android:permission="com.android.email.permission.ACCESS_PROVIDER" 599 > 600 <intent-filter> 601 <action 602 android:name="com.android.email.POP3_INTENT" /> 603 </intent-filter> 604 </service> 605 606 <!--Required stanza to register the EasAuthenticatorService with AccountManager --> 607 <service 608 android:name=".service.EasAuthenticatorService" 609 android:exported="true" 610 android:enabled="true" 611 > 612 <intent-filter> 613 <action 614 android:name="android.accounts.AccountAuthenticator" /> 615 </intent-filter> 616 <meta-data 617 android:name="android.accounts.AccountAuthenticator" 618 android:resource="@xml/authenticator_eas" 619 /> 620 </service> 621 <!--Required stanza to register the EasTestAuthenticatorService with AccountManager --> 622 <service 623 android:name=".service.EasTestAuthenticatorService" 624 android:exported="true" 625 android:enabled="false" 626 > 627 <intent-filter> 628 <action 629 android:name="android.accounts.AccountAuthenticator" /> 630 </intent-filter> 631 <meta-data 632 android:name="android.accounts.AccountAuthenticator" 633 android:resource="@xml/eastest_authenticator" 634 /> 635 </service> 636 <!-- 637 EasAuthenticatorService with the alternative label. Disabled by default, 638 and OneTimeInitializer enables it if the vendor policy tells so. 639 --> 640 <service 641 android:name=".service.EasAuthenticatorServiceAlternate" 642 android:exported="true" 643 android:enabled="false" 644 > 645 <intent-filter> 646 <action 647 android:name="android.accounts.AccountAuthenticator" /> 648 </intent-filter> 649 <meta-data 650 android:name="android.accounts.AccountAuthenticator" 651 android:resource="@xml/authenticator_alternate" 652 /> 653 </service> 654 655 <service 656 android:name=".service.LegacyImapAuthenticatorService" 657 android:exported="false" 658 android:enabled="true" 659 > 660 <intent-filter> 661 <action 662 android:name="android.accounts.AccountAuthenticator" /> 663 </intent-filter> 664 <meta-data 665 android:name="android.accounts.AccountAuthenticator" 666 android:resource="@xml/authenticator_legacy_imap" 667 /> 668 </service> 669 670 <provider 671 android:name=".provider.AttachmentProvider" 672 android:authorities="com.android.email.attachmentprovider" 673 android:grantUriPermissions="true" 674 android:exported="true" 675 android:readPermission="com.android.email.permission.READ_ATTACHMENT" 676 /> 677 678 <!-- This provider MUST be protected by strict permissions, as granting access to 679 it exposes user passwords and other confidential information. --> 680 <provider 681 android:name=".provider.EmailProvider" 682 android:authorities="com.android.email.provider;com.android.email.notifier" 683 android:exported="true" 684 android:permission="com.android.email.permission.ACCESS_PROVIDER" 685 android:label="@string/app_name" 686 /> 687 688 <!-- Legacy authenticators, etc. can be added below. OEMs may remove these --> 689 690 <service 691 android:name=".service.LegacyEmailAuthenticatorService" 692 android:exported="false" 693 android:enabled="true" 694 > 695 <intent-filter> 696 <action 697 android:name="android.accounts.AccountAuthenticator" /> 698 </intent-filter> 699 <meta-data 700 android:name="android.accounts.AccountAuthenticator" 701 android:resource="@xml/authenticator_legacy_email" 702 /> 703 </service> 704 705 <service 706 android:name=".service.LegacyEasAuthenticatorService" 707 android:exported="false" 708 android:enabled="true" 709 > 710 <intent-filter> 711 <action 712 android:name="android.accounts.AccountAuthenticator" /> 713 </intent-filter> 714 <meta-data 715 android:name="android.accounts.AccountAuthenticator" 716 android:resource="@xml/authenticator_legacy_eas" 717 /> 718 </service> 719 720 <service android:name="com.android.email.EmailIntentService" 721 android:exported="false"> 722 <intent-filter> 723 <action android:name="com.android.mail.action.RESEND_NOTIFICATIONS" /> 724 <action android:name="com.android.mail.action.RESEND_NOTIFICATIONS_WEAR" /> 725 <action android:name="com.android.mail.action.SEND_SET_NEW_EMAIL_INDICATOR" /> 726 </intent-filter> 727 <intent-filter> 728 <action android:name="com.android.mail.action.CLEAR_NEW_MAIL_NOTIFICATIONS" /> 729 <data android:scheme="content" /> 730 </intent-filter> 731 <intent-filter> 732 <action android:name="com.android.mail.action.update_notification" 733 android:priority="-10"/> 734 <data android:mimeType="@string/application_mime_type" /> 735 </intent-filter> 736 </service> 737 738 <service android:name="com.android.mail.NotificationActionIntentService" 739 android:exported="false"> 740 <intent-filter> 741 <action android:name="com.android.mail.action.notification.MARK_READ" /> 742 <action android:name="com.android.mail.action.notification.ARCHIVE" /> 743 <action android:name="com.android.mail.action.notification.DELETE" /> 744 <action android:name="com.android.mail.action.notification.UNDO" /> 745 <action android:name="com.android.mail.action.notification.DESTRUCT" /> 746 <action android:name="com.android.mail.action.notification.UNDO_TIMEOUT" /> 747 <action android:name="com.android.mail.action.notification.REPLY" /> 748 <action android:name="com.android.mail.action.notification.REPLY_ALL" /> 749 <action android:name="com.android.mail.action.notification.FORWARD" /> 750 <data android:scheme="content" /> 751 </intent-filter> 752 </service> 753 <service android:name="com.android.mail.MailLogService"> 754 </service> 755 <service android:name="com.android.mail.browse.EmlTempFileDeletionService" /> 756 </application> 757 758 <!-- Legacy permissions, etc. can go here --> 759 760 </manifest> 761