1 <?xml version="1.0" encoding="utf-8"?> 2 <!-- Copyright (C) 2012 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 <!-- 18 Email services (protocols) are defined here. For the present, these are baked into the Email 19 apk; the goal is for remote services to register themselves into this file. 20 21 The required attributes are as follows (except that EITHER serviceClass or intent is required): 22 protocol: the unique name used to identify the protocol 23 name: the name of the account type option presented to users during account setup 24 accountType: the AccountManager type of accounts created using this service 25 serviceClass: a class implementing IEmailService (or null, if the service is remote) 26 intent: the intent used to connect to a remote IEmailService 27 port: the (default) port used when creating accounts using this service 28 portSsl: as above, when SSL is selected 29 syncIntervalStrings: a reference to an array of sync interval options 30 syncIntervals: a reference to an array of values corresponding to syncIntervalStrings 31 defaultSyncInterval: the default sync interval, selected from enums defined in attrs.xml 32 33 The following optional attributes default to "false": 34 offerTls: whether a TLS option (e.g. STARTTLS) is offered for this service 35 offerCerts: whether or not certificate authentication is an option for this service 36 usesSmtp: whether SMTP is used as the outgoing protocol for this service 37 offerPrefix: whether a "prefix" is offered to the user (for IMAP) 38 offerLocalDeletes: whether an option to delete locally is offered 39 syncChanges: whether non-deletion changes to messages sync back to the server 40 offerAttachmentPreload: whether to offer attachment preloading (pre-caching) 41 usesAutodiscover: whether to attempt using the "autodiscover" API when creating 42 an account 43 offerLookback: whether a sync "lookback" is offered (rather than the POP/IMAP 44 legacy "25 most recent messages synced") 45 defaultLookback: if "lookback" is offered, an enum of possible lookbacks 46 syncCalendar: whether this service is capable of syncing a calendar (offering a checkbox) 47 syncContacts: whether this service is capable of syncing contacts (offering a checkbox) 48 --> 49 50 <emailservices xmlns:email="http://schemas.android.com/apk/res/com.android.email"> 51 <emailservice 52 email:protocol="pop3" 53 email:name="@string/pop3_name" 54 email:accountType="@string/account_manager_type_pop3" 55 email:serviceClass="com.android.email.service.Pop3Service" 56 email:port="110" 57 email:portSsl="995" 58 email:syncIntervalStrings="@array/account_settings_check_frequency_entries" 59 email:syncIntervals="@array/account_settings_check_frequency_values" 60 email:defaultSyncInterval="mins15" 61 62 email:offerTls="true" 63 email:usesSmtp="true" 64 email:offerLocalDeletes="true" 65 email:inferPrefix="pop" 66 email:offerLoadMore="true" 67 /> 68 <emailservice 69 email:protocol="imap" 70 email:name="@string/imap_name" 71 email:accountType="@string/account_manager_type_imap" 72 email:serviceClass="com.android.email.service.ImapService" 73 email:port="143" 74 email:portSsl="993" 75 email:syncIntervalStrings="@array/account_settings_check_frequency_entries" 76 email:syncIntervals="@array/account_settings_check_frequency_values" 77 email:defaultSyncInterval="mins15" 78 79 email:offerTls="true" 80 email:usesSmtp="true" 81 email:offerAttachmentPreload="true" 82 email:offerPrefix="true" 83 email:syncChanges="true" 84 email:inferPrefix="imap" 85 email:offerLoadMore="true" 86 /> 87 <emailservice 88 email:protocol="@string/protocol_eas" 89 email:name="Exchange" 90 email:accountType="@string/account_manager_type_exchange" 91 email:intent="@string/intent_exchange_action" 92 email:intentPackage="@string/intent_exchange_package" 93 email:port="80" 94 email:portSsl="443" 95 email:syncIntervalStrings="@array/account_settings_check_frequency_entries_push" 96 email:syncIntervals="@array/account_settings_check_frequency_values_push" 97 email:defaultSyncInterval="push" 98 99 email:defaultSsl="true" 100 email:offerCerts="true" 101 email:syncChanges="true" 102 email:usesAutodiscover="true" 103 email:offerAttachmentPreload="true" 104 email:offerLookback="true" 105 email:defaultLookback="auto" 106 email:syncContacts="true" 107 email:syncCalendar="true" 108 /> 109 </emailservices> 110