```
因此即便编辑了发件人地址,发送该消息时它也会被已验证的地址自动取代。
请注意,这与消息的接收无关。
**(34) 身份如何匹配?**
Identities are as expected matched by account. For incoming messages the *to*, *cc*, *bcc*, *from* and *(X-)delivered/envelope/original-to* addresses will be checked (in this order) and for outgoing messages (drafts, outbox and sent) only the *from* addresses will be checked. Equal addresses have precedence over partially matching addresses, except for *delivered-to* addresses.
The matched address will be shown as *via* in the addresses section of received messages (between the message header and message text).
Note that identities needs to be enabled to be able to be matched and that identities of other accounts will not be considered.
Matching will be done only once on receiving a message, so changing the configuration will not change existing messages. You could clear local messages by long pressing a folder in the folder list and synchronize the messages again though.
It is possible to configure a [regex](https://en.wikipedia.org/wiki/Regular_expression) in the identity settings to match **the username** of an email address (the part before the @ sign).
Note that the domain name (the parts after the @ sign) always needs to be equal to the domain name of the identity.
If you like to match a catch-all email address, this regex is mostly okay:
```
.*
```
If you like to match the special purpose email addresses abc@example.com and xyx@example.com and like to have a fallback email address main@example.com as well, you could do something like this:
* Identity: abc@example.com; regex: **(?i)abc**
* Identity: xyz@example.com; regex: **(?i)xyz**
* Identity: main@example.com; regex: **^(?i)((?!abc|xyz).)\*$**
Matched identities can be used to color code messages. The identity color takes precedence over the folder and account color. Setting identity colors is a pro feature.
**(35) Why should I be careful with viewing images, attachments, the original message, and opening links?**
Viewing remotely stored images (see also [this FAQ](#user-content-faq27)) and opening links might not only tell the sender that you have seen the message, but will also leak your IP address. See also this question: [Why email's link is more dangerous than web search's link?](https://security.stackexchange.com/questions/241139/why-emails-link-is-more-dangerous-than-web-searchs-link).
Opening attachments or viewing an original message might load remote content and execute scripts, that might not only cause privacy sensitive information to leak, but can also be a security risk.
Note that your contacts could unknowingly send malicious messages if they got infected with malware.
FairEmail formats messages again causing messages to look different from the original, but also uncovering phishing links.
Note that reformatted messages are often better readable than original messages because the margins are removed, and font colors and sizes are standardized.
The Gmail app shows images by default by downloading the images through a Google proxy server. Since the images are downloaded from the source server [in real-time](https://blog.filippo.io/how-the-new-gmail-image-proxy-works-and-what-this-means-for-you/), this is even less secure because Google is involved too without providing much benefit.
You can show images and original messages by default for trusted senders on a case-by-case basis by checking *Do not ask this again for ...*.
If you want to reset the default *Open with* apps, please [see here](https://www.androidauthority.com/how-to-set-default-apps-android-clear-621269/).
**(36) How are settings files encrypted?**
简而言之:AES 256 位
详细来说:
* The 256 bit key is generated with *PBKDF2WithHmacSHA1* using a 128 bit secure random salt and 65536 iterations
* The cipher is *AES/CBC/PKCS5Padding*
**(37) 如何保存我的密码?**
所有受支持的 Android 版本都[加密所有的用户数据](https://source.android.com/security/encryption),因此所有数据,包括用户名、密码、邮件等都被加密存储。
如果设备受到 PIN 码、手势图案或者密码的保护,账户和身份的密码得以保障。 如果因与他人共享设备而影响安全,请使用[用户资料配置](https://www.howtogeek.com/333484/how-to-set-up-multiple-user-profiles-on-android/)。
**(39) How can I reduce the battery usage of FairEmail?**
Recent Android versions by default report *app usage* as a percentage in the Android battery settings screen. **Confusingly, *app usage* is not the same as *battery usage* and is not even directly related to battery usage!** The app usage (while in use) will be very high because FairEmail is using a foreground service which is considered as constant app usage by Android. However, this doesn't mean that FairEmail is constantly using battery power. The real battery usage can be seen by navigating to this screen:
*Android settings*, *Battery*, three-dots menu *Battery usage*, three-dots menu *Show full device usage*
As a rule of thumb the battery usage should be below or in any case not be much higher than *Mobile network standby*. If this isn't the case, please turn on *Auto optimize* in the receive settings. If this doesn't help, please [ask for support](https://contact.faircode.eu/?product=fairemailsupport).
It is inevitable that synchronizing messages will use battery power because it requires network access and accessing the messages database.
If you are comparing the battery usage of FairEmail with another email client, please make sure the other email client is setup similarly. For example comparing always sync (push messages) and (infrequent) periodic checking for new messages is not a fair comparison.
Reconnecting to an email server will use extra battery power, so an unstable internet connection will result in extra battery usage. Also, some email servers prematurely terminate idle connections, while [the standard](https://tools.ietf.org/html/rfc2177) says that an idle connection should be kept open for 29 minutes. In these cases you might want to synchronize periodically, for example each hour, instead of continuously. Note that polling frequently (more than every 30-60 minutes) will likely use more battery power than synchronizing always because connecting to the server and comparing the local and remote messages are expensive operations.
[On some devices](https://dontkillmyapp.com/) it is necessary to *disable* battery optimizations (setup step 3) to keep connections to email servers open. In fact, leaving battery optimizations enabled can result in extra battery usage for all devices, even though this sounds contradictory!
Most of the battery usage, not considering viewing messages, is due to synchronization (receiving and sending) of messages. So, to reduce the battery usage, set the number of days to synchronize message for to a lower value, especially if there are a lot of recent messages in a folder. Long press a folder name in the folders list and select *Edit properties* to access this setting.
If you have at least once a day internet connectivity, it is sufficient to synchronize messages just for one day.
Note that you can set the number of days to *keep* messages for to a higher number than to *synchronize* messages for. You could for example initially synchronize messages for a large number of days and after this has been completed reduce the number of days to synchronize messages, but leave the number of days to keep messages. After decreasing the number of days to keep messages, you might want to run the cleanup in the miscellaneous settings to remove old files.
In the receive settings you can enable to always synchronize starred messages, which will allow you to keep older messages around while synchronizing messages for a limited number of days.
Disabling the folder option *Automatically download message texts and attachments* will result in less network traffic and thus less battery usage. You could disable this option for example for the sent folder and the archive.
Synchronizing messages at night is mostly not useful, so you can save on battery usage by not synchronizing at night. In the settings you can select a schedule for message synchronization (this is a pro feature).
FairEmail will by default synchronize the folder list on each connection. Since folders are mostly not created, renamed and deleted very often, you can save some network and battery usage by disabling this in the receive settings.
FairEmail will by default check if old messages were deleted from the server on each connection. If you don't mind that old messages that were delete from the server are still visible in FairEmail, you can save some network and battery usage by disabling this in the receive settings.
Some providers don't follow the IMAP standard and don't keep connections open long enough, forcing FairEmail to reconnect often, causing extra battery usage. You can inspect the *Log* via the main navigation menu to check if there are frequent reconnects (connection closed/reset, read/write error/timeout, etc). You can workaround this by lowering the keep-alive interval in the advanced account settings to for example 9 or 15 minutes. Note that battery optimizations need to be disabled in setup step 3 to reliably keep connections alive.
部分提供商每两分钟发送一次类似 '*我还在*' 消息,这也会导致网络流量和您的设备被唤醒,并增加不必要的电池消耗。 您可以通过主导航菜单检查 *日志* 来判断您的提供商是否有这种行为。 如果您的提供商使用 [Dovecot](https://www.dovecot.org/) 作为 IMAP 服务器, 您可以请求提供商将 [imap_idle_notify_interval](https://wiki.dovecot.org/Timeouts) 设置改至更高或更好的值来避免此行为。 如果您的提供商不能或不愿对此做出改变,您应该考虑切换为定期而不是连续的同步。 您可以在接收设置中更改此设置。
如果您在配置账户时看到 *此提供商不支持推送消息*,可考虑改用支持推送消息(IMAP IDLE)的提供商以减少电池消耗。
如果您的设备采用 [AMOLED](https://en.wikipedia.org/wiki/AMOLED) 屏幕,您可以通过切换为黑色主题来减少电量消耗。
如果在接收设置中启用了自动优化,遇到下列情况时账户会自动切换为定期检查新邮件:
* 3分钟内再次告知'*我还在*'
* 电子邮件服务器不支持推送邮件
* 保活间隔小于12分钟
此外,连续遭遇三次 [并发连接过多](#user-content-faq23) 错误后,“回收站”和“垃圾邮件”文件夹将自动设为检查新邮件。
**(40) How can I reduce the data usage of FairEmail?**
You can reduce the data usage basically in the same way as reducing battery usage, see the previous question for suggestions.
It is inevitable that data will be used to synchronize messages.
If the connection to the email server is lost, FairEmail will always synchronize the messages again to make sure no messages were missed. If the connection is unstable, this can result in extra data usage. In this case, it is a good idea to decrease the number of days to synchronize messages to a minimum (see the previous question) or to switch to periodically synchronizing of messages (receive settings).
To reduce data usage, you could change these advanced receive settings:
* Check if old messages were removed from the server: disable
* Synchronize (shared) folder list: disable
By default FairEmail does not download message texts and attachments larger than 256 KiB when there is a metered (mobile or paid Wi-Fi) internet connection. You can change this in the connection settings.
**(41) How can I fix the error 'Handshake failed' ?**
There are several possible causes, so please read to the end of this answer.
The error '*Handshake failed ... WRONG_VERSION_NUMBER ...*' might mean that you are trying to connect to an IMAP or SMTP server without an encrypted connection, typically using port 143 (IMAP) and port 25 (SMTP), or that a wrong protocol (SSL/TLS or STARTTLS) is being used.
Most providers provide encrypted connections using different ports, typically port 993 (IMAP) and port 465/587 (SMTP).
If your provider doesn't support encrypted connections, you should ask to make this possible. If this isn't an option, you could enable *Allow insecure connections* both in the advanced settings AND the account/identity settings.
See also [this FAQ](#user-content-faq4).
The error '*Handshake failed ... SSLV3_ALERT_ILLEGAL_PARAMETER ...*' is either caused by a bug in the SSL protocol implementation or by a too short DH key on the email server and can unfortunately not be fixed by FairEmail.
The error '*Handshake failed ... HANDSHAKE_FAILURE_ON_CLIENT_HELLO ...*' might be caused by the provider still using RC4, which isn't supported since [Android 7](https://developer.android.com/about/versions/nougat/android-7.0-changes.html#tls-ssl) anymore.
The error '*Handshake failed ... UNSUPPORTED_PROTOCOL or TLSV1_ALERT_PROTOCOL_VERSION ...*' might be caused by enabling hardening connections in the connection settings or by Android not supporting older protocols anymore, like SSLv3.
Android 8 Oreo and later [do not support](https://developer.android.com/about/versions/oreo/android-8.0-changes#security-all) SSLv3 anymore. There is no way to workaround lacking RC4 and SSLv3 support because it has completely been removed from Android (which should say something).
You can use [this website](https://ssl-tools.net/mailservers) or [this website](https://www.immuniweb.com/ssl/) to check for SSL/TLS problems of email servers.
**(42) Can you add a new provider to the list of providers?**
如果提供商已被一定数量的用户使用,我很高兴添加。
需要下列信息:
```
// this is not needed
```
The EFF [writes](https://www.eff.org/nl/deeplinks/2018/06/announcing-starttls-everywhere-securing-hop-hop-email-delivery): "*Additionally, even if you configure STARTTLS perfectly and use a valid certificate, there’s still no guarantee your communication will be encrypted.*"
因此,纯 SSL 连接比 [STARTTLS](https://en.wikipedia.org/wiki/Opportunistic_TLS) 更安全,更推荐使用。
请先确保其发送和接收邮件正常,然后联系我请求添加提供商。
联系方式见下文。
**(43) Can you show the original ... ?**
Show original, shows the original message as the sender has sent it, including original fonts, colors, margins, etc. FairEmail does and will not alter this in any way, except for requesting [TEXT_AUTOSIZING](https://developer.android.com/reference/android/webkit/WebSettings.LayoutAlgorithm), which will *attempt* to make small text more readable.
**~~(44) Can you show contact photos / identicons in the sent folder?~~**
~~Contact photos and identicons are always shown for the sender because this is necessary for conversation threads.~~ ~~Getting contact photos for both the sender and receiver is not really an option because getting contact photo is an expensive operation.~~
**(45) How can I fix 'This key is not available. To use it, you must import it as one of your own!' ?**
You'll get the message *This key is not available. To use it, you must import it as one of your own!* when trying to decrypt a message with a public key. To fix this you'll need to import the private key.
**(46) Why does the message list keep refreshing?**
If you see a 'spinner' at the top of the message list, the folder is still being synchronized with the remote server. You can see the progress of the synchronization in the folder list. See the legend about what the icons and numbers mean.
The speed of your device and internet connection and the number of days to synchronize messages determine how long synchronization will take. Note that you shouldn't set the number of days to synchronize messages to more than one day in most cases, see also [this FAQ](#user-content-faq39).
**(47) How do I solve the error 'No primary account or no drafts folder' ?**
You'll get the error message *No primary account or no drafts folder* when trying to compose a message while there is no account set to be the primary account or when there is no drafts folder selected for the primary account. This can happen for example when you start FairEmail to compose a message from another app. FairEmail needs to know where to store the draft, so you'll need to select one account to be the primary account and/or you'll need to select a drafts folder for the primary account.
This can also happen when you try to reply to a message or to forward a message from an account with no drafts folder while there is no primary account or when the primary account does not have a drafts folder.
Please see [this FAQ](#user-content-faq141) for some more information.
**~~(48) How do I solve the error 'No primary account or no archive folder' ?~~**
~~You'll get the error message *No primary account or no archive folder* when searching for messages from another app. FairEmail needs to know where to search, so you'll need to select one account to be the primary account and/or you'll need to select a archive folder for the primary account.~~
**(49) How do I fix 'An outdated app sent a file path instead of a file stream' ?**
You likely selected or sent an attachment or image with an outdated file manager or an outdated app which assumes all apps still have storage permissions. For security and privacy reasons modern apps like FairEmail have no full access to all files anymore. This can result into the error message *An outdated app sent a file path instead of a file stream* if a file name instead of a file stream is being shared with FairEmail because FairEmail cannot randomly open files.
You can fix this by switching to an up-to-date file manager or an app designed for recent Android versions. Alternatively, you can grant FairEmail read access to the storage space on your device in the Android app settings. Note that this workaround [won't work on Android Q](https://developer.android.com/preview/privacy/scoped-storage) anymore.
See also [question 25](#user-content-faq25) and [what Google writes about it](https://developer.android.com/training/secure-file-sharing/share-file#RespondToRequest).
**(50) Can you add an option to synchronize all messages?**
You can synchronize more or even all messages by long pressing a folder (inbox) in the folder list of an account (tap on the account name in the navigation menu) and selecting *Synchronize more* in the popup menu.
**(51) How are folders sorted?**
Folders are first sorted on account order (by default on account name) and within an account with special, system folders on top, followed by folders set to synchronize. Within each category the folders are sorted on (display) name. You can set the display name by long pressing a folder in the folder list and selecting *Edit properties*.
The navigation (hamburger) menu item *Order folders* in the settings can be used to manually order the folders.
**(52) Why does it take some time to reconnect to an account?**
没有可靠的方法了解账户连接是被意外还是强迫中止。 如果账户连接被强迫中止,频繁尝试重连账户可能导致[太多并发连接](#user-content-faq23)等错误,乃至账户被封禁。 为避免此类问题,FairEmail 会在尝试重连前等待 90 秒。
您可以长按导航菜单中的*设置*来立即重连。
**(53) Can you stick the message action bar to the top/bottom?**
The message action bar works on a single message and the bottom action bar works on all the messages in the conversation. Since there is often more than one message in a conversation, this is not possible. Moreover, there are quite some message specific actions, like forwarding.
Moving the message action bar to the bottom of the message is visually not appealing because there is already a conversation action bar at the bottom of the screen.
Note that there are not many, if any, email apps that display a conversation as a list of expandable messages. This has a lot of advantages, but the also causes the need for message specific actions.
**~~(54) How do I use a namespace prefix?~~**
~~A namespace prefix is used to automatically remove the prefix providers sometimes add to folder names.~~
~~For example the Gmail spam folder is called:~~
```
[Gmail]/Spam
```
~~By setting the namespace prefix to *[Gmail]* FairEmail will automatically remove *[Gmail]/* from all folder names.~~
**(55) How can I mark all messages as read / move or delete all messages?**
You can use multiple select for this. Long press the first message, don't lift your finger and slide down to the last message. Then use the three dot action button to execute the desired action.
**(56) Can you add support for JMAP?**
几乎没有提供商支持 [JMAP](https://jmap.io/) 协议,因此不值得大动干戈使 FairEmail 支持该协议。
**(57) Can I use HTML in signatures?**
Yes, you can use [HTML](https://en.wikipedia.org/wiki/HTML). In the signature editor you can switch to HTML mode via the three-dots menu.
Note that if you switch back to the text editor that not all HTML might be rendered as-is because the Android text editor is not able to render all HTML. Similarly, if you use the text editor, the HTML might be altered in unexpected ways.
If you want to use preformatted text, like [ASCII art](https://en.wikipedia.org/wiki/ASCII_art), you should wrap the text in a *pre* element, like this:
```
|\_/|
/ @ @ \
( > º < )
`>>x<<´
/ O \
```
**(58) What does an open/closed email icon mean?**
The email icon in the folder list can be open (outlined) or closed (solid):
![External image](https://github.com/M66B/FairEmail/blob/master/images/baseline_mail_outline_black_48dp.png)
Message bodies and attachments are not downloaded by default.
![External image](https://github.com/M66B/FairEmail/blob/master/images/baseline_email_black_48dp.png)
Message bodies and attachments are downloaded by default.
**(59) Can original messages be opened in the browser?**
出于安全原因,其他应用不能访问包含原始消息文本的文件,因此不能。 理论上,[存储访问框架](https://developer.android.com/guide/topics/providers/document-provider) 可能用于共享这些文件, 但即使是 Google Chrome 也无法处理该问题。
**(60) Did you know ... ?**
* Did you know that starred messages can be synchronized/kept always? (this can be enabled in the receive settings)
* Did you know that you can long press the 'write message' icon to go to the drafts folder?
* Did you know there is an advanced option to mark messages read when they are moved? (archiving and trashing is also moving)
* Did you know that you can select text (or an email address) in any app on recent Android versions and let FairEmail search for it?
* Did you know that FairEmail has a tablet mode? Rotate your device in landscape mode and conversation threads will be opened in a second column if there is enough screen space.
* Did you know that you can long press a reply template to create a draft message from the template?
* Did you know that you can long press, hold and swipe to select a range of messages?
* Did you know that you can retry sending messages by using pull-down-to-refresh in the outbox?
* Did you know that you can swipe a conversation left or right to go to the next or previous conversation?
* Did you know that you can tap on an image to see where it will be downloaded from?
* Did you know that you can long press the folder icon in the action bar to select an account?
* Did you know that you can long press the star icon in a conversation thread to set a colored star?
* Did you know that you can open the navigation drawer by swiping from the left, even when viewing a conversation?
* Did you know that you can long press the people's icon to show/hide the CC/BCC fields and remember the visibility state for the next time?
* Did you know that you can insert the email addresses of an Android contact group via the three dots overflow menu?
* Did you know that if you select text and hit reply, only the selected text will be quoted?
* Did you know that you can long press the trash icons (both in the message and the bottom action bar) to permanently delete a message or conversation? (version 1.1368+)
* Did you know that you can long press the send action to show the send dialog, even if it was disabled?
* Did you know that you can long press the full screen icon to show the original message text only?
* Did you know that you can long press the answer button to reply to the sender? (since version 1.1562)
**(61) Why are some messages shown dimmed?**
变暗(灰色)的消息是本地已移动的消息,服务器尚未确认完成此移动。 尚未连接到服务器或账户时可能发生此情况。 这些消息将在连接到服务器和账户后同步,如果这一直未完成以致太旧,则移动操作会被删除。
您可能需要手动同步文件夹,例如通过下拉手势。
您可以查看这些消息,但在上次的移动被确认前,您不能再次移动这些消息。
在主导航菜单的操作视图中显示有待定的[操作](#user-content-faq3)。
**(62) Which authentication methods are supported?**
支持下列身份验证方法并按如下顺序使用:
* CRAM-MD5
* LOGIN
* PLAIN
* NTLM(缺乏测试)
* XOAUTH2 ([Gmail](https://developers.google.com/gmail/imap/xoauth2-protocol), [Yandex](https://tech.yandex.com/oauth/))
SASL authentication methods, besides CRAM-MD5, are not supported because [JavaMail for Android](https://javaee.github.io/javamail/Android) does not support SASL authentication.
如果您的提供商需要特定的不支持的身份验证方法,您大概会收到错误消息 *身份验证失败*。
可以在账户和身份设置中选择[客户端证书](https://en.wikipedia.org/wiki/Client_certificate)。
[Server Name Indication](https://en.wikipedia.org/wiki/Server_Name_Indication) is supported by [all supported Android versions](https://developer.android.com/training/articles/security-ssl).
**(63) How are images resized for displaying on screens?**
Large inline or attached [PNG](https://en.wikipedia.org/wiki/Portable_Network_Graphics) and [JPEG](https://en.wikipedia.org/wiki/JPEG) images will automatically be resized for displaying on screens. This is because email messages are limited in size, depending on the provider mostly between 10 and 50 MB. Images will by default be resized to a maximum width and height of about 1440 pixels and saved with a compression ratio of 90 %. Images are scaled down using whole number factors to reduce memory usage and to retain image quality. Automatically resizing of inline and/or attached images and the maximum target image size can be configured in the send settings.
If you want to resize images on a case-by-case basis, you can use [Send Reduced](https://f-droid.org/en/packages/mobi.omegacentauri.SendReduced/) or a similar app.
**~~(64) Can you add custom actions for swipe left/right?~~**
~~The most natural thing to do when swiping a list entry left or right is to remove the entry from the list.~~ ~~The most natural action in the context of an email app is moving the message out of the folder to another folder.~~ ~~You can select the folder to move to in the account settings.~~
~~Other actions, like marking messages read and snoozing messages are available via multiple selection.~~ ~~You can long press a message to start multiple selection. See also [this question](#user-content-faq55).~~
~~Swiping left or right to mark a message read or unread is unnatural because the message first goes away and later comes back in a different shape.~~ ~~Note that there is an advanced option to mark messages automatically read on moving,~~ ~~which is in most cases a perfect replacement for the sequence mark read and move to some folder.~~ ~~You can also mark messages read from new message notifications.~~
~~If you want to read a message later, you can hide it until a specific time by using the *snooze* menu.~~
**(65) Why are some attachments shown dimmed?**
Inline (image) attachments are shown dimmed. [Inline attachments](https://tools.ietf.org/html/rfc2183) are supposed to be downloaded and shown automatically, but since FairEmail doesn't always download attachments automatically, see also [this FAQ](#user-content-faq40), FairEmail shows all attachment types. To distinguish inline and regular attachments, inline attachments are shown dimmed.
**(66) Is FairEmail available in the Google Play Family Library?**
"*You can't share in-app purchases and free apps with your family members.*"
See [here](https://support.google.com/googleone/answer/7007852) under "*See if content is eligible to be added to Family Library*", "*Apps & games*".
**(67) How can I snooze conversations?**
Multiple select one of more conversations (long press to start multiple selecting), tap the three dot button and select *Snooze ...*. Alternatively, in the expanded message view use *Snooze ...* in the message three-dots 'more' menu or the time-lapse action in the bottom action bar. Select the time the conversation(s) should snooze and confirm by tapping OK. The conversations will be hidden for the selected time and shown again afterwards. You will receive a new message notification as reminder.
It is also possible to snooze messages with [a rule](#user-content-faq71), which will also allow you to move messages to a folder to let them be auto snoozed.
You can show snoozed messages by unchecking *Filter out* > *Hidden* in the three dot overflow menu.
You can tap on the small snooze icon to see until when a conversation is snoozed.
By selecting a zero snooze duration you can cancel snoozing.
Third party apps do not have access to the Gmail snoozed messages folder.
**~~(68) Why can Adobe Acrobat reader not open PDF attachments / Microsoft apps not open attached documents?~~**
~~Adobe Acrobat reader and Microsoft apps still expects full access to all stored files,~~ ~~while apps should use the [Storage Access Framework](https://developer.android.com/guide/topics/providers/document-provider) since Android KitKat (2013)~~ ~~to have access to actively shared files only. This is for privacy and security reasons.~~
~~You can workaround this by saving the attachment and opening it from the Adobe Acrobat reader / Microsoft app,~~ ~~but you are advised to install an up-to-date and preferably open source PDF reader / document viewer,~~ ~~for example one listed [here](https://github.com/offa/android-foss#-document--pdf-viewer).~~
**(69) Can you add auto scroll up on new message?**
The message list is automatically scrolled up when navigating from a new message notification or after a manual refresh. Always automatically scrolling up on arrival of new messages would interfere with your own scrolling, but if you like you can enable this in the settings.
**(70) When will messages be auto expanded?**
When navigation to a conversation one message will be expanded if:
* There is just one message in the conversation
* There is exactly one unread message in the conversation
* There is exactly one starred (favorite) message in the conversation (from version 1.1508)
There is one exception: the message was not downloaded yet and the message is too large to download automatically on a metered (mobile) connection. You can set or disable the maximum message size on the 'connection' settings tab.
Duplicate (archived) messages, trashed messages and draft messages are not counted.
Messages will automatically be marked read on expanding, unless this was disabled in the individual account settings.
**(71) How do I use filter rules?**
You can edit filter rules by long pressing a folder in the folder list of an account (tap the account name in the navigation/side menu).
New rules will be applied to new messages received in the folder, not to existing messages. You can check the rule and apply the rule to existing messages or, alternatively, long press the rule in the rule list and select *Execute now*.
You'll need to give a rule a name and you'll need to define the order in which a rule should be executed relative to other rules.
You can disable a rule and you can stop processing other rules after a rule has been executed.
The following rule conditions are available:
* Sender contains or sender is contact
* Recipient contains
* Subject contains
* Has attachments (optional of specific type)
* Header contains
* Absolute time (received) between (since version 1.1540)
* Relative time (received) between
All the conditions of a rule need to be true for the rule action to be executed. All conditions are optional, but there needs to be at least one condition, to prevent matching all messages. If you want to match all senders or all recipients, you can just use the @ character as condition because all email addresses will contain this character. If you want to match a domain name, you can use as a condition something like *@example.org*
Note that email addresses are formatted like this:
`
"Somebody" `
You can use multiple rules, possibly with a *stop processing*, for an *or* or a *not* condition.
Matching is not case sensitive, unless you use [regular expressions](https://en.wikipedia.org/wiki/Regular_expression). Please see [here](https://developer.android.com/reference/java/util/regex/Pattern) for the documentation of Java regular expressions. You can test a regex [here](https://regexr.com/).
Note that a regular expression supports an *or* operator, so if you want to match multiple senders, you can do this:
`
.*alice@example\.org.*|.*bob@example\.org.*|.*carol@example\.org.*`
Note that [dot all mode](https://developer.android.com/reference/java/util/regex/Pattern#DOTALL) is enabled to be able to match [unfolded headers](https://tools.ietf.org/html/rfc2822#section-3.2.3).
You can select one of these actions to apply to matching messages:
* No action (useful for *not*)
* Mark as read
* Mark as unread
* Hide
* Suppress notification
* Snooze
* Add star
* Set importance (local priority)
* Add keyword
* Move
* Copy (Gmail: label)
* Answer/forward (with template)
* Text-to-speech (sender and subject)
* Automation (Tasker, etc)
An error in a rule condition can lead to a disaster, therefore irreversible actions are not supported.
Rules are applied directly after the message header has been fetched, but before the message text has been downloaded, so it is not possible to apply conditions to the message text. Note that large message texts are downloaded on demand on a metered connection to save on data usage.
If you want to forward a message, consider to use the move action instead. This will be more reliable than forwarding as well because forwarded messages might be considered as spam.
Since message headers are not downloaded and stored by default to save on battery and data usage and to save storage space it is not possible to preview which messages would match a header rule condition.
Some common header conditions (regex):
* *.*Auto-Submitted:.** [RFC3834](https://tools.ietf.org/html/rfc3834)
* *.*Content-Type: multipart/report.** [RFC3462](https://tools.ietf.org/html/rfc3462)
In the three-dots *more* message menu there is an item to create a rule for a received message with the most common conditions filled in.
The POP3 protocol does not support setting keywords and moving or copying messages.
Using rules is a pro feature.
**(72) What are primary accounts/identities?**
The primary account is used when the account is ambiguous, for example when starting a new draft from the unified inbox.
Similarly, the primary identity of an account is used when the identity is ambiguous.
There can be just one primary account and there can be just one primary identity per account.
**(73) Is moving messages across accounts safe/efficient?**
在账户间移动消息是安全的,原始消息将被下载并移动,目标消息被添加后才会删除原始消息。
当源文件夹和目标文件夹都设定了同步,批量移动账户中的消息最有效率, 否则 FairEmail 需要为每条消息连接文件夹。
**(74) Why do I see duplicate messages?**
Some providers, notably Gmail, list all messages in all folders, except trashed messages, in the archive (all messages) folder too. FairEmail shows all these messages in a non obtrusive way to indicate that these messages are in fact the same message.
Gmail allows one message to have multiple labels, which are presented to FairEmail as folders. This means that messages with multiple labels will be shown multiple times as well.
**(75) Can you make an iOS, Windows, Linux, etc version?**
成功开发特定平台的应用需要大量的知识和经验。 因此,我只为 Android 开发应用。
**(76) What does 'Clear local messages' do?**
文件夹菜单中的*清除本地消息*用来删除设备和服务器上都存在的消息。 它不会删除服务器上的消息。 更改文件夹设置以不下载消息内容(文本和附件)来节省空间后,这可能有用。
**(77) Why are messages sometimes shown with a small delay?**
Depending on the speed of your device (processor speed and maybe even more memory speed) messages might be displayed with a small delay. FairEmail is designed to dynamically handle a large number of messages without running out of memory. This means that messages needs to be read from a database and that this database needs to be watched for changes, both of which might cause small delays.
Some convenience features, like grouping messages to display conversation threads and determining the previous/next message, take a little extra time. Note that there is no *the* next message because in the meantime a new message might have been arrived.
When comparing the speed of FairEmail with similar apps this should be part of the comparison. It is easy to write a similar, faster app which just displays a lineair list of messages while possible using too much memory, but it is not so easy to properly manage resource usage and to offer more advanced features like conversation threading.
FairEmail is based on the state-of-the-art [Android architecture components](https://developer.android.com/topic/libraries/architecture/), so there is little room for performance improvements.
**(78) How do I use schedules?**
In the receive settings you can enable scheduling and set a time period and the days of the week *when* messages should be *received*. Note that an end time equal to or earlier than the start time is considered to be 24 hours later.
Automation, see below, can be used for more advanced schedules, like for example multiple synchronization periods per day or different synchronization periods for different days.
It is possible to install FairEmail in multiple user profiles, for example a personal and a work profile, and to configure FairEmail differently in each profile, which is another possibility to have different synchronization schedules and to synchronize a different set of accounts.
It is also possible to create [filter rules](#user-content-faq71) with a time condition and to snooze messages until the end time of the time condition. This way it is possible to *snooze* business related messages until the start of the business hours. This also means that the messages will be on your device for when there is (temporarily) no internet connection.
Note that recent Android versions allow overriding DND (Do Not Disturb) per notification channel and per app, which could be used to (not) silence specific (business) notifications. Please [see here](https://support.google.com/android/answer/9069335) for more information.
For more complex schemes you could set one or more accounts to manual synchronization and send this command to FairEmail to check for new messages:
```
(adb shell) am start-foreground-service -a eu.faircode.email.POLL
```
For a specific account:
```
(adb shell) am start-foreground-service -a eu.faircode.email.POLL --es account Gmail
```
You can also automate turning receiving messages on and off by sending these commands to FairEmail:
```
(adb shell) am start-foreground-service -a eu.faircode.email.ENABLE
(adb shell) am start-foreground-service -a eu.faircode.email.DISABLE
```
To enable/disable a specific account:
```
(adb shell) am start-foreground-service -a eu.faircode.email.ENABLE --es account Gmail
(adb shell) am start-foreground-service -a eu.faircode.email.DISABLE --es account Gmail
```
Note that disabling an account will hide the account and all associated folders and messages.
To set the poll interval:
```
(adb shell) adb shell am start-foreground-service -a eu.faircode.email.INTERVAL --ei minutes nnn
```
Where *nnn* is one of 0, 15, 30, 60, 120, 240, 480, 1440. A value of 0 means push messages.
You can automatically send commands with for example [Tasker](https://tasker.joaoapps.com/userguide/en/intents.html):
```
New task: Something recognizable
Action Category: Misc/Send Intent
Action: eu.faircode.email.ENABLE
Target: Service
```
To enable/disable an account with the name *Gmail*:
```
Extras: account:Gmail
```
Account names are case sensitive.
Scheduling is a pro feature.
**(79) How do I use synchronize on demand (manual)?**
Normally, FairEmail maintains a connection to the configured email servers whenever possible to receive messages in real-time. If you don't want this, for example to be not disturbed or to save on battery usage, just disable receiving in the receive settings. This will stop the background service which takes care of automatic synchronization and will remove the associated status bar notification.
You can also enable *Synchronize manually* in the advanced account settings if you want to manually synchronize specific accounts only.
You can use pull-down-to-refresh in a message list or use the folder menu *Synchronize now* to manually synchronize messages.
If you want to synchronize some or all folders of an account manually, just disable synchronization for the folders (but not of the account).
You'll likely want to disabled [browse on server](#user-content-faq24) too.
**~~(80) How do I fix the error 'Unable to load BODYSTRUCTURE' ?~~**
~~The error message *Unable to load BODYSTRUCTURE* is caused by bugs in the email server,~~ ~~see [here](https://javaee.github.io/javamail/FAQ#imapserverbug) for more details.~~
~~FairEmail already tries to workaround these bugs, but if this fail you'll need to ask for support from your provider.~~
**~~(81) Can you make the background of the original message dark in the dark theme?~~**
~~The original message is shown as the sender has sent it, including all colors.~~ ~~Changing the background color would not only make the original view not original anymore, it can also result in unreadable messages.~~
**(82) What is a tracking image?**
Please see [here](https://en.wikipedia.org/wiki/Web_beacon) about what a tracking image exactly is. In short tracking images keep track if you opened a message.
FairEmail will in most cases automatically recognize tracking images and replace them by this icon:
![External image](https://github.com/M66B/FairEmail/blob/master/images/baseline_my_location_black_48dp.png)
Automatic recognition of tracking images can be disabled in the privacy settings.
**(84) What are local contacts for?**
Local contact information is based on names and addresses found in incoming and outgoing messages.
The main use of the local contacts storage is to offer auto completion when no contacts permission has been granted to FairEmail.
Another use is to generate [shortcuts](#user-content-faq31) on recent Android versions to quickly send a message to frequently contacted people. This is also why the number of times contacted and the last time contacted is being recorded and why you can make a contact a favorite or exclude it from favorites by long pressing it.
The list of contacts is sorted on number of times contacted and the last time contacted.
By default only names and addresses to whom you send messages to will be recorded. You can change this in the send settings.
**(85) Why is an identity not available?**
An identity is available for sending a new message or replying or forwarding an existing message only if:
* the identity is set to synchronize (send messages)
* the associated account is set to synchronize (receive messages)
* the associated account has a drafts folder
FairEmail will try to select the best identity based on the *to* address of the message replied to / being forwarded.
**~~(86) What are 'extra privacy features'?~~**
~~The advanced option *extra privacy features* enables:~~
* ~~Looking up the owner of the IP address of a link~~
* ~~Detection and removal of [tracking images](#user-content-faq82)~~
**(87) What does 'invalid credentials' mean?**
The error message *invalid credentials* means either that the user name and/or password is incorrect, for example because the password was changed or expired, or that the account authorization has expired.
If the password is incorrect/expired, you will have to update the password in the account and/or identity settings.
If the account authorization has expired, you will have to select the account again. You will likely need to save the associated identity again as well.
**(88) How can I use a Yahoo, AOL or Sky account?**
The preferred way to set up a Yahoo account is by using the quick setup wizard, which will use OAuth instead of a password and is therefore safer (and easier as well).
To authorize a Yahoo, AOL, or Sky account you will need to create an app password. For instructions, please see here:
* [for Yahoo](https://help.yahoo.com/kb/generate-third-party-passwords-sln15241.html)
* [for AOL](https://help.aol.com/articles/Create-and-manage-app-password)
* [for Sky](https://www.sky.com/help/articles/getting-started-with-sky-yahoo-mail) (under *Other email apps*)
Please see [this FAQ](#user-content-faq111) about OAuth support.
Note that Yahoo, AOL, and Sky do not support standard push messages. The Yahoo email app uses a proprietary, undocumented protocol for push messages.
Push messages require [IMAP IDLE](https://en.wikipedia.org/wiki/IMAP_IDLE) and the Yahoo email server does not report IDLE as capability:
```
Y1 CAPABILITY
* CAPABILITY IMAP4rev1 ID MOVE NAMESPACE XYMHIGHESTMODSEQ UIDPLUS LITERAL+ CHILDREN X-MSG-EXT UNSELECT OBJECTID
Y1 OK CAPABILITY completed
```
**(89) How can I send plain text only messages?**
By default FairEmail sends each message both as plain text and as HTML formatted text because almost every receiver expects formatted messages these days. If you want/need to send plain text messages only, you can enable this in the advanced identity options. You might want to create a new identity for this if you want/need to select sending plain text messages on a case-by-case basis.
**(90) Why are some texts linked while not being a link?**
FairEmail will automatically link not linked web links (http and https) and not linked email addresses (mailto) for your convenience. However, texts and links are not easily distinguished, especially not with lots of [top level domains](https://en.wikipedia.org/wiki/List_of_Internet_top-level_domains) being words. This is why texts with dots are sometimes incorrectly recognized as links, which is better than not recognizing some links.
Links for the tel, geo, rtsp and xmpp protocols will be recognized too, but links for less usual or less safe protocols like telnet and ftp will not be recognized. The regex to recognize links is already *very* complex and adding more protocols will make it only slower and possibly cause errors.
Note that original messages are shown exactly as they are, which means also that links are not automatically added.
**~~(91) Can you add periodical synchronization to save battery power?~~**
~~Synchronizing messages is an expensive proces because the local and remote messages need to be compared,~~ ~~so periodically synchronizing messages will not result in saving battery power, more likely the contrary.~~
~~See [this FAQ](#user-content-faq39) about optimizing battery usage.~~
**(92) Can you add spam filtering, verification of the DKIM signature and SPF authorization?**
Spam filtering, verification of the [DKIM](https://en.wikipedia.org/wiki/DomainKeys_Identified_Mail) signature and [SPF](https://en.wikipedia.org/wiki/Sender_Policy_Framework) authorization is a task of email servers, not of an email client. Servers generally have more memory and computing power, so they are much better suited to this task than battery-powered devices. Also, you'll want spam filtered for all your email clients, possibly including web email, not just one email client. Moreover, email servers have access to information, like the IP address, etc of the connecting server, which an email client has no access to.
Spam filtering based on message headers might have been feasible, but unfortunately this technique is [patented by Microsoft](https://patents.google.com/patent/US7543076).
Recent versions of FairEmail can filter spam to a certain extend using a message classifier. Please see [this FAQ](#user-content-faq163) for more information about this.
Of course you can report messages as spam with FairEmail, which will move the reported messages to the spam folder and train the spam filter of the provider, which is how it is supposed to work. This can be done automatically with [filter rules](#user-content-faq71) too. Blocking the sender will create a filter rule to automatically move future messages of the same sender into the spam folder.
Note that the POP3 protocol gives access to the inbox only. So, it is won't be possible to report spam for POP3 accounts.
Note that you should not delete spam messages, also not from the spam folder, because the email server uses the messages in the spam folder to "learn" what spam messages are.
If you receive a lot of spam messages in your inbox, the best you can do is to contact the email provider to ask if spam filtering can be improved.
Also, FairEmail can show a small red warning flag when DKIM, SPF or [DMARC](https://en.wikipedia.org/wiki/DMARC) authentication failed on the receiving server. You can enable/disable [authentication verification](https://en.wikipedia.org/wiki/Email_authentication) in the display settings.
FairEmail can show a warning flag too if the domain name of the (reply) email address of the sender does not define an MX record pointing to an email server. This can be enabled in the receive settings. Be aware that this will slow down synchronization of messages significantly.
If the domain name of the sender and the domain name of the reply address differ, the warning flag will be shown too because this is most often the case with phishing messages. If desired, this can be disabled in the receive settings (from version 1.1506).
If legitimate messages are failing authentication, you should notify the sender because this will result in a high risk of messages ending up in the spam folder. Moreover, without proper authentication there is a risk the sender will be impersonated. The sender might use [this tool](https://www.mail-tester.com/) to check authentication and other things.
**(93) Can you allow installation/data storage on external storage media (sdcard)?**
FairEmail uses services and alarms, provides widgets and listens for the boot completed event to be started on device start, so it is not possible to store the app on external storage media, like an sdcard. See also [here](https://developer.android.com/guide/topics/data/install-location).
Messages, attachments, etc stored on external storage media, like an sdcard, can be accessed by other apps and is therefore not safe. See [here](https://developer.android.com/training/data-storage) for the details.
When needed you can save (raw) messages via the three-dots menu just above the message text and save attachments by tapping on the floppy icon.
If you need to save on storage space, you can limit the number of days messages are being synchronized and kept for. You can change these settings by long pressing a folder in the folder list and selecting *Edit properties*.
**(94) What does the red/orange stripe at the end of the header mean?**
The red/orange stripe at the left side of the header means that the DKIM, SPF or DMARC authentication failed. See also [this FAQ](#user-content-faq92).
**(95) Why are not all apps shown when selecting an attachment or image?**
For privacy and security reasons FairEmail does not have permissions to directly access files, instead the Storage Access Framework, available and recommended since Android 4.4 KitKat (released in 2013), is used to select files.
If an app is listed depends on if the app implements a [document provider](https://developer.android.com/guide/topics/providers/document-provider). If the app is not listed, you might need to ask the developer of the app to add support for the Storage Access Framework.
Android Q will make it harder and maybe even impossible to directly access files, see [here](https://developer.android.com/preview/privacy/scoped-storage) and [here](https://www.xda-developers.com/android-q-storage-access-framework-scoped-storage/) for more details.
**(96) Where can I find the IMAP and SMTP settings?**
The IMAP settings are part of the (custom) account settings and the SMTP settings are part of the identity settings.
**(97) What is 'cleanup' ?**
About each four hours FairEmail runs a cleanup job that:
* Removes old message texts
* Removes old attachment files
* Removes old image files
* Removes old local contacts
* Removes old log entries
Note that the cleanup job will only run when the synchronize service is active.
**(98) Why can I still pick contacts after revoking contacts permissions?**
After revoking contacts permissions Android does not allow FairEmail access to your contacts anymore. However, picking contacts is delegated to and done by Android and not by FairEmail, so this will still be possible without contacts permissions.
**(99) Can you add a rich text or markdown editor?**
FairEmail provides common text formatting (bold, italic, underline, text size and color) via a toolbar that appears after selecting some text.
A [Rich text](https://en.wikipedia.org/wiki/Formatted_text) or [Markdown](https://en.wikipedia.org/wiki/Markdown) editor would not be used by many people on a small mobile device and, more important, Android doesn't support a rich text editor and most rich text editor open source projects are abandoned. See [here](https://forum.xda-developers.com/showpost.php?p=79061829&postcount=4919) for some more details about this.
**(100) How can I synchronize Gmail categories?**
You can synchronize Gmail categories by creating filters to label categorized messages:
* Create a new filter via Gmail > Settings (wheel) > Filters and Blocked Addresses > Create a new filter
* Enter a category search (see below) in the *Has the words* field and click *Create filter*
* Check *Apply the label* and select a label and click *Create filter*
Possible categories:
```
category:social
category:updates
category:forums
category:promotions
```
Unfortunately, this is not possible for snoozed messages folder.
You can use *Force sync* in the three-dots menu of the unified inbox to let FairEmail synchronize the folder list again and you can long press the folders to enable synchronization.
**(101) What does the blue/orange dot at the bottom of the conversations mean?**
The dot shows the relative position of the conversation in the message list. The dot will be show orange when the conversation is the first or last in the message list, else it will be blue. The dot is meant as an aid when swiping left/right to go to the previous/next conversation.
The dot is disabled by default and can be enabled with the display settings *Show relative conversation position with a dot*.
**(102) How can I enable auto rotation of images?**
Images will automatically be rotated when automatic resizing of images is enabled in the settings (enabled by default). However, automatic rotating depends on the [Exif](https://en.wikipedia.org/wiki/Exif) information to be present and to be correct, which is not always the case. Particularly not when taking a photo with a camara app from FairEmail.
Note that only [JPEG](https://en.wikipedia.org/wiki/JPEG) and [PNG](https://en.wikipedia.org/wiki/Portable_Network_Graphics) images can contain Exif information.
**(104) What do I need to know about error reporting?**
* 错误报告将有助于改进 FairEmail
* 错误报告是可选且可退出的
* 错误报告可以在设置-杂项设置中启用/禁用
* 错误报告将自动的匿名发送到 [Bugsnag](https://www.bugsnag.com/)
* Android 的 Bugsnag 是[开源](https://github.com/bugsnag/bugsnag-android)的
* 查看[这里](https://docs.bugsnag.com/platforms/android/automatically-captured-data/)了解错误报告中包含的数据
* 查看[这里](https://docs.bugsnag.com/legal/privacy-policy/)了解 Bugsnag 的隐私政策
* 错误报告将发送到 *sessions.bugsnag.com:443* 和 *notify.bugsnag.com:443*
**(105) How does the roam-like-at-home option work?**
FairEmail will check if the country code of the SIM card and the country code of the network are in the [EU roam-like-at-home countries](https://en.wikipedia.org/wiki/European_Union_roaming_regulations#Territorial_extent) and assumes no roaming if the country codes are equal and the advanced roam-like-at-home option is enabled.
So, you don't have to disable this option if you don't have an EU SIM or are not connected to an EU network.
**(106) Which launchers can show a badge count with the number of unread messages?**
详见[这里](https://github.com/leolin310148/ShortcutBadger#supported-launchers)了解可以显示未读邮件数的启动器名单。
注意,Nova Launcher 需要 Tesla Unread,这已[不再支持](https://forum.xda-developers.com/android/general/bad-news-tesla-unread-devoloper-t3920415)。
Note that the notification setting *Show launcher icon with number of new messages* needs to be enabled (default enabled).
Only *new* unread messages in folders set to show new message notifications will be counted, so messages marked unread again and messages in folders set to not show new message notification will not be counted.
Depending on what you want, the notification settings *Let the number of new messages match the number of notifications* needs to be enabled (default disabled). When enabled the badge count will be the same as the number of new message notifications. When disabled the badge count will be the number of unread messages, independent if they are shown in a notification or are new.
This feature depends on support of your launcher. FairEmail merely 'broadcasts' the number of unread messages using the ShortcutBadger library. If it doesn't work, this cannot be fixed by changes in FairEmail.
Some launchers display a dot or a '1' for [the monitoring notification](#user-content-faq2), despite FairEmail explicitly requesting not to show a *badge* for this notification. This could be caused by a bug in the launcher app or in your Android version. Please double check if the notification dot (badge) is disabled for the receive (service) notification channel. You can go to the right notification channel settings via the notification settings of FairEmail. This might not be obvious, but you can tap on the channel name for more settings.
FairEmail does send a new message count intent as well:
```
eu.faircode.email.NEW_MESSAGE_COUNT
```
The number of new, unread messages will be in an integer "*count*" parameter.
**(107) How do I use colored stars?**
You can set a colored star via the *more* message menu, via multiple selection (started by long pressing a message), by long pressing a star in a conversation or automatically by using [rules](#user-content-faq71).
You need to know that colored stars are not supported by the IMAP protocol and can therefore not be synchronized to an email server. This means that colored stars will not be visible in other email clients and will be lost on downloading messages again. However, the stars (without color) will be synchronized and will be visible in other email clients, when supported.
Some email clients use IMAP keywords for colors. However, not all servers support IMAP keywords and besides that there are no standard keywords for colors.
**~~(108) Can you add permanently delete messages from any folder?~~**
~~When you delete messages from a folder the messages will be moved to the trash folder, so you have a chance to restore the messages.~~ ~~You can permanently delete messages from the trash folder.~~ ~~Permanently delete messages from other folders would defeat the purpose of the trash folder, so this will not be added.~~
**~~(109) Why is 'select account' available in official versions only?~~**
~~Using *select account* to select and authorize Google accounts require special permission from Google for security and privacy reasons.~~ ~~This special permission can only be acquired for apps a developer manages and is responsible for.~~ ~~Third party builds, like the F-Droid builds, are managed by third parties and are the responsibility of these third parties.~~ ~~So, only these third parties can acquire the required permission from Google.~~ ~~Since these third parties do not actually support FairEmail, they are most likely not going to request the required permission.~~
~~You can solve this in two ways:~~
* ~~Switch to the official version of FairEmail, see [here](https://github.com/M66B/FairEmail/blob/master/README.md#downloads) for the options~~
* ~~Use app specific passwords, see [this FAQ](#user-content-faq6)~~
~~Using *select account* in third party builds is not possible in recent versions anymore.~~ ~~In older versions this was possible, but it will now result in the error *UNREGISTERED_ON_API_CONSOLE*.~~
**(110) Why are (some) messages empty and/or attachments corrupt?**
Empty messages and/or corrupt attachments are probably being caused by a bug in the server software. Older Microsoft Exchange software is known to cause this problem. Mostly you can workaround this by disabling *Partial fetch* in the advanced account settings:
Settings > Manual setup > Accounts > tap account > tap advanced > Partial fetch > uncheck
After disabling this setting, you can use the message 'more' (three dots) menu to 'resync' empty messages. Alternatively, you can *Delete local messages* by long pressing the folder(s) in the folder list and synchronize all messages again.
Disabling *Partial fetch* will result in more memory usage.
**(111) Is OAuth supported?**
OAuth for Gmail is supported via the quick setup wizard. The Android account manager will be used to fetch and refresh OAuth tokens for selected on-device accounts. OAuth for non on-device accounts is not supported because Google requires a [yearly security audit](https://support.google.com/cloud/answer/9110914) ($15,000 to $75,000) for this. You can read more about this [here](https://www.theregister.com/2019/02/11/google_gmail_developer/).
OAuth for Outlook/Office 365, Yahoo, Mail.ru and Yandex is supported via the quick setup wizard.
**(112) Which email provider do you recommend?**
FairEmail 只是一个电子邮件客户端,所以您要先拥有自己的电子邮件地址。 应用描述中已经明确提到这一点。
目前有大量的电子邮件提供商可供选择。 哪个电子邮件提供商最适合您,取决于您的愿望/要求。 请查看[找回隐私](https://restoreprivacy.com/secure-email/)与[隐私工具](https://www.privacytools.io/providers/email/)的网站,了解以隐私为导向的电子邮件提供商列表,及其优缺点。
如 ProtonMail、Tutanota 等邮件服务提供商使用专有的电子邮件协议,因此无法使用第三方的电子邮件应用程序。 详见[这条常见问题](#user-content-faq129)
许多电子邮件提供商支持使用您自定义的邮箱域名,这会让您切换到另一个电子邮件提供商变得更容易。
**(113) How does biometric authentication work?**
如果您的设备有生物识别传感器,例如指纹传感器, 您可以在设置画面的导航菜单中启用/禁用生物识别认证。 When enabled FairEmail will require biometric authentication after a period of inactivity or after the screen has been turned off while FairEmail was running. Activity is navigation within FairEmail, for example opening a conversation thread. The inactivity period duration can be configured in the miscellaneous settings. When biometric authentication is enabled new message notifications will not show any content and FairEmail won't be visible on the Android recents screen.
生物识别认证只为防止他人看到您的消息。 FairEmail 依赖设备加密进行数据加密,另见[这条常见问题](#user-content-faq37)。
生物识别认证是一项专业版功能。
**(114) Can you add an import for the settings of other email apps?**
The format of the settings files of most other email apps is not documented, so this is difficult. Sometimes it is possible to reverse engineer the format, but as soon as the settings format changes things will break. Also, settings are often incompatible. For example, FairEmail has unlike most other email apps settings for the number of days to synchronize messages and for the number of days to keep messages, mainly to save on battery usage. Moreover, setting up an account/identity with the quick setup wizard is simple, so it is not really worth the effort.
**(115) Can you add email address chips?**
Email address [chips](https://material.io/design/components/chips.html) look nice, but cannot be edited, which is quite inconvenient when you made a typo in an email address.
Note that FairEmail will select the address only when long pressing an address, which makes it easy to delete an address.
Chips are not suitable for showing in a list and since the message header in a list should look similar to the message header of the message view it is not an option to use chips for viewing messages.
Reverted [commit](https://github.com/M66B/FairEmail/commit/2c80c25b8aa75af2287f471b882ec87d5a5a5015).
**~~(116) How can I show images in messages from trusted senders by default?~~**
~~You can show images in messages from trusted senders by default by enabled the display setting *Automatically show images for known contacts*.~~
~~Contacts in the Android contacts list are considered to be known and trusted,~~ ~~unless the contact is in the group / has the label '*Untrusted*' (case insensitive).~~
**(117) Can you help me restore my purchase?**
First of all, a purchase will be available on all devices logged into the same Google account, *if* the app is installed via the same Google account too. You can select the account in the Play store app.
Google manages all purchases, so as a developer I have little control over purchases. So, basically the only thing I can do, is give some advice:
* Make sure you have an active, working internet connection
* Make sure you are logged in with the right Google account and that there is nothing wrong with your Google account
* Make sure you installed FairEmail via the right Google account if you configured multiple Google accounts on your device
* Make sure the Play store app is up to date, please [see here](https://support.google.com/googleplay/answer/1050566?hl=en)
* Open the Play store app and wait at least a minute to give it time to synchronize with the Google servers
* Open FairEmail and navigate to the pro features screen to let FairEmail check the purchases; sometimes it help to tap the *buy* button
You can also try to clear the cache of the Play store app via the Android apps settings. Restarting the device might be necessary to let the Play store recognize the purchase correctly.
Note that:
* If you get *ITEM_ALREADY_OWNED*, the Play store app probably needs to be updated, please [see here](https://support.google.com/googleplay/answer/1050566?hl=en)
* Purchases are stored in the Google cloud and cannot get lost
* There is no time limit on purchases, so they cannot expire
* Google does not expose details (name, e-mail, etc) about buyers to developers
* An app like FairEmail cannot select which Google account to use
* It may take a while until the Play store app has synchronized a purchase to another device
* Play Store purchases cannot be used without the Play Store, which is also not allowed by Play Store rules
If you cannot solve the problem with the purchase, you will have to contact Google about it.
**(118) What does 'Remove tracking parameters' exactly?**
Checking *Remove tracking parameters* will remove all [UTM parameters](https://en.wikipedia.org/wiki/UTM_parameters) from a link.
**~~(119) Can you add colors to the unified inbox widget?~~**
~~The widget is designed to look good on most home/launcher screens by making it monochrome and by using a half transparent background.~~ ~~This way the widget will nicely blend in, while still being properly readable.~~
~~Adding colors will cause problems with some backgrounds and will cause readability problems, which is why this won't be added.~~
Due to Android limitations it is not possible to dynamically set the opacity of the background and to have rounded corners at the same time.
**(120) Why are new message notifications not removed on opening the app?**
New message notifications will be removed on swiping notifications away or on marking the associated messages read. Opening the app will not remove new message notifications. This gives you a choice to leave new message notifications as a reminder that there are still unread messages.
On Android 7 Nougat and later new message notifications will be [grouped](https://developer.android.com/training/notify-user/group). Tapping on the summary notification will open the unified inbox. The summary notification can be expanded to view individual new message notifications. Tapping on an individual new message notification will open the conversation the message it is part of. See [this FAQ](#user-content-faq70) about when messages in a conversation will be auto expanded and marked read.
**(121) How are messages grouped into a conversation?**
By default FairEmail groups messages in conversations. This can be turned of in the display settings.
FairEmail groups messages based on the standard *Message-ID*, *In-Reply-To* and *References* headers. FairEmail does not group on other criteria, like the subject, because this could result in grouping unrelated messages and would be at the expense of increased battery usage.
**~~(122) Why is the recipient name/email address show with a warning color?~~**
~~The recipient name and/or email address in the addresses section will be shown in a warning color~~ ~~when the sender domain name and the domain name of the *to* address do not match.~~ ~~Mostly this indicates that the message was received *via* an account with another email address.~~
**(123) What will happen when FairEmail cannot connect to an email server?**
If FairEmail cannot connect to an email server to synchronize messages, for example if the internet connection is bad or a firewall or a VPN is blocking the connection, FairEmail will retry one time after waiting 8 seconds while keeping the device awake (=use battery power). If this fails, FairEmail will schedule an alarm to retry after 15, 30 and eventually every 60 minutes and let the device sleep (=no battery usage).
Note that [Android doze mode](https://developer.android.com/training/monitoring-device-state/doze-standby) does not allow to wake the device earlier than after 15 minutes.
*Force sync* in the three-dots menu of the unified inbox can be used to let FairEmail attempt to reconnect without waiting.
Sending messages will be retried on connectivity changes only (reconnecting to the same network or connecting to another network) to prevent the email server from blocking the connection permanently. You can pull down the outbox to retry manually.
Note that sending will not be retried in case of authentication problems and when the server rejected the message. In this case you can pull down the outbox to try again.
**(124) Why do I get 'Message too large or too complex to display'?**
The message *Message too large or too complex to display* will be shown if there are more than 100,000 characters or more than 500 links in a message. Reformatting and displaying such messages will take too long. You can try to use the original message view, powered by the browser, instead.
**(125) What are the current experimental features?**
*Message classification (version 1.1438+)*
Please see [this FAQ](#user-content-faq163) for details.
Since this is an experimental feature, my advice is to start with just one folder.
*Send hard bounce (version 1.1477+)*
Send a [Delivery Status Notification](https://tools.ietf.org/html/rfc3464) (=hard bounce) via the reply/answer menu.
Hard bounces will mostly be processed automatically because they affect the reputation of the email provider. The bounce address (=*Return-Path* header) is mostly very specific, so the email server can determine the sending account.
For some background, see for [this Wikipedia article](https://en.wikipedia.org/wiki/Bounce_message).
**(126) Can message previews be sent to my wearable?**
FairEmail fetches a message in two steps:
1. Fetch message headers
1. Fetch message text and attachments
Directly after the first step new messages will be notified. However, only until after the second step the message text will be available. FairEmail updates exiting notifications with a preview of the message text, but unfortunately wearable notifications cannot be updated.
Since there is no guarantee that a message text will always be fetched directly after a message header, it is not possible to guarantee that a new message notification with a preview text will always be sent to a wearable.
If you think this is good enough, you can enable the notification option *Only send notifications with a message preview to wearables* and if this does not work, you can try to enable the notification option *Show notifications with a preview text only*. Note that this applies to wearables not showing a preview text too, even when the Android Wear app says the notification has been sent (bridged).
If you want to have the full message text sent to your wearable, you can enable the notification option *Preview all text*. Note that some wearables are known to crash with this option enabled.
If you use a Samsung wearable with the Galaxy Wearable (Samsung Gear) app, you might need to enable notifications for FairEmail when the setting *Notifications*, *Apps installed in the future* is turned off in this app.
**(127) How can I fix 'Syntactically invalid HELO argument(s)'?**
The error *... Syntactically invalid HELO argument(s) ...* means that the SMTP server rejected the local IP address or host name. You can likely fix this error by enabling or disabling the advanced indentity option *Use local IP address instead of host name*.
**(128) How can I reset asked questions, for example to show images?**
You can reset asked questions via the three dots overflow menu in the miscellaneous settings.
**(129) 是否支持 ProtonMail、Tutanota?**
ProtonMail 使用专有的电子邮件协议 且[不直接支持 IMAP](https://protonmail.com/support/knowledge-base/imap-smtp-and-pop3-setup/), 因此您不能使用 FairEmail 访问 ProtonMail。
Tutanota 使用专有的电子邮件协议 且[不直接支持 IMAP](https://tutanota.com/faq/#imap), 因此您不能使用 FairEmail 访问 Tutanota。
**(130) What does message error ... mean?**
A series of lines with orangish or red texts with technical information means that debug mode was enabled in the miscellaneous settings.
The warning *No server found at ...* means that there was no email server registered at the indicated domain name. Replying to the message might not be possible and might result in an error. This could indicate a falsified email address and/or spam.
The error *... ParseException ...* means that there is a problem with a received message, likely caused by a bug in the sending software. FairEmail will workaround this is in most cases, so this message can mostly be considered as a warning instead of an error.
The error *...SendFailedException...* means that there was a problem while sending a message. The error will almost always include a reason. Common reasons are that the message was too big or that one or more recipient addresses were invalid.
The warning *Message too large to fit into the available memory* means that the message was larger than 10 MiB. Even if your device has plenty of storage space Android provides limited working memory to apps, which limits the size of messages that can be handled.
Please see [here](#user-content-faq22) for other error messages in the outbox.
**(131) Can you change the direction for swiping to previous/next message?**
If you read from left to right, swiping to the left will show the next message. Similarly, if you read from right to left, swiping to the right will show the next message.
This behavior seems quite natural to me, also because it is similar to turning pages.
Anyway, there is a behavior setting to reverse the swipe direction.
**(132) Why are new message notifications silent?**
Notifications are silent by default on some MIUI versions. Please see [here](http://en.miui.com/thread-3930694-1-1.html) how you can fix this.
There is a bug in some Android versions causing [setOnlyAlertOnce](https://developer.android.com/reference/android/app/Notification.Builder#setOnlyAlertOnce(boolean)) to mute notifications. Since FairEmail shows new message notifications right after fetching the message headers and FairEmail needs to update new message notifications after fetching the message text later, this cannot be fixed or worked around by FairEmail.
Android might rate limit the notification sound, which can cause some new message notifications to be silent.
**(133) Why is ActiveSync not supported?**
Microsoft Exchange ActiveSync 协议[是有专利的](https://en.wikipedia.org/wiki/Exchange_ActiveSync#Licensing) ,因此不能支持。 出于此原因,您也找不到其他支持 ActiveSync 的电子邮件客户端。
Note that the desciption of FairEmail starts with the remark that non-standard protocols, like Microsoft Exchange Web Services and Microsoft ActiveSync are not supported.
**(134) Can you add deleting local messages?**
*POP3*
In the account settings (Settings, tap Manual setup, tap Accounts, tap account) you can enable *Leave deleted messages on server*.
*IMAP*
Since the IMAP protocol is meant to synchronize two ways, deleting a message from the device would result in fetching the message again when synchronizing again.
However, FairEmail supports hiding messages, either via the three-dots menu in the action bar just above the message text or by multiple selecting messages in the message list. Basically this is the same as "leave on server" of the POP3 protocol with the advantage that you can show the messages again when needed.
Note that it is possible to set the swipe left or right action to hide a message.
**(135) Why are trashed messages and drafts shown in conversations?**
Individual messages will rarely be trashed and mostly this happens by accident. Showing trashed messages in conversations makes it easier to find them back.
You can permanently delete a message using the message three-dots *delete* menu, which will remove the message from the conversation. Note that this irreversible.
Similarly, drafts are shown in conversations to find them back in the context where they belong. It is easy to read through the received messages before continuing to write the draft later.
**(136) How can I delete an account/identity/folder?**
Deleting an account/identity/folder is a little bit hidden to prevent accidents.
* Account: Settings > Manual setup > Accounts > tap account
* Identity: Settings > Manual setup > Identities > tap identity
* Folder: Long press the folder in the folder list > Edit properties
In the three-dots overflow menu at the top right there is an item to delete the account/identity/folder.
**(137) How can I reset 'Don't ask again'?**
您可以在杂项设置中重置所有提示框的“不再询问”。
**(138) Can you add calendar/contact/tasks/notes management?**
Calendar, contact, task and note management can better be done by a separate, specialized app. Note that FairEmail is a specialized email app, not an office suite.
Also, I prefer to do a few things very well, instead of many things only half. Moreover, from a security perspective, it is not a good idea to grant many permissions to a single app.
You are advised to use the excellent, open source [DAVx⁵](https://f-droid.org/packages/at.bitfire.davdroid/) app to synchronize/manage your calendars/contacts.
Most providers support exporting your contacts. Please [see here](https://support.google.com/contacts/answer/1069522) about how you can import contacts if synchronizing is not possible.
Note that FairEmail does support replying to calendar invites (a pro feature) and adding calendar invites to your personal calendar.
**(139) How do I fix 'User is authenticated but not connected'?**
In fact this Microsoft Exchange specific error is an incorrect error message caused by a bug in older Exchange server software.
The error *User is authenticated but not connected* might occur if:
* Push messages are enabled for too many folders: see [this FAQ](#user-content-faq23) for more information and a workaround
* The account password was changed: changing it in FairEmail too should fix the problem
* An alias email address is being used as username instead of the primary email address
* An incorrect login scheme is being used for a shared mailbox: the right scheme is *username@domain\SharedMailboxAlias*
The shared mailbox alias will mostly be the email address of the shared account, like this:
```
you@example.com\shared@example.com
```
Note that it should be a backslash and not a forward slash.
When using a shared mailbox, you'll likely want to enable the option *Synchronize shared folder lists* in the receive settings.
**(140) Why does the message text contain strange characters?**
Displaying strange characters is almost always caused by specifying no or an invalid character encoding by the sending software. FairEmail will assume [ISO 8859-1](https://en.wikipedia.org/wiki/ISO/IEC_8859-1) when no character set or when [US-ASCII](https://en.wikipedia.org/wiki/ASCII) was specified. Other than that there is no way to reliably determine the correct character encoding automatically, so this cannot be fixed by FairEmail. The right action is to complain to the sender.
**(141) How can I fix 'A drafts folder is required to send messages'?**
To store draft messages a drafts folder is required. In most cases FairEmail will automatically select the drafts folders on adding an account based on [the attributes](https://www.iana.org/assignments/imap-mailbox-name-attributes/imap-mailbox-name-attributes.xhtml) the email server sends. However, some email servers are not configured properly and do not send these attributes. In this case FairEmail tries to identify the drafts folder by name, but this might fail if the drafts folder has an unusual name or is not present at all.
You can fix this problem by manually selecting the drafts folder in the account settings (Settings, tap Manual setup, tap Accounts, tap account, at the bottom). If there is no drafts folder at all, you can create a drafts folder by tapping on the '+' button in the folder list of the account (tap on the account name in the navigation menu).
Some providers, like Gmail, allow enabling/disabling IMAP for individual folders. So, if a folder is not visible, you might need to enable IMAP for the folder.
Quick link for Gmail (will work on a desktop computer only): [https://mail.google.com/mail/u/0/#settings/labels](https://mail.google.com/mail/u/0/#settings/labels)
**(142) How can I store sent messages in the inbox?**
Generally, it is not a good idea to store sent messages in the inbox because this is hard to undo and could be incompatible with other email clients.
That said, FairEmail is able to properly handle sent messages in the inbox. FairEmail will mark outgoing messages with a sent messages icon for example.
The best solution would be to enable showing the sent folder in the unified inbox by long pressing the sent folder in the folder list and enabling *Show in unified inbox*. This way all messages can stay where they belong, while allowing to see both incoming and outgoing messages at one place.
If this is not an option, you can [create a rule](#user-content-faq71) to automatically move sent messages to the inbox or set a default CC/BCC address in the advanced identity settings to send yourself a copy.
**~~(143) Can you add a trash folder for POP3 accounts?~~**
[POP3](https://en.wikipedia.org/wiki/Post_Office_Protocol) is a very limited protocol. Basically only messages can be downloaded and deleted from the inbox. It is not even possible to mark a message read.
Since POP3 does not allow access to the trash folder at all, there is no way to restore trashed messages.
Note that you can hide messages and search for hidden messages, which is similar to a local trash folder, without suggesting that trashed messages can be restored, while this is actually not possible.
Version 1.1082 added a local trash folder. Note that trashing a message will permanently remove it from the server and that trashed messages cannot be restored to the server anymore.
**(144) How can I record voice notes?**
要录制语音笔记,您可以按消息撰写器底部操作栏的此图标:
![External image](https://github.com/M66B/FairEmail/blob/master/images/baseline_record_voice_over_black_48dp.png)
这需要安装兼容的录音应用。 尤其需要支持[这个通用的 intent](https://developer.android.com/reference/android/provider/MediaStore.Audio.Media.html#RECORD_SOUND_ACTION)。
例如,[这款录音机应用](https://f-droid.org/app/com.github.axet.audiorecorder)与此功能兼容。
语音笔记将自动附加到邮件。
**(145) How can I set a notification sound for an account, folder or sender?**
Account:
* Enable *Separate notifications* in the advanced account settings (Settings, tap Manual setup, tap Accounts, tap account, tap Advanced)
* Long press the account in the account list (Settings, tap Manual setup, tap Accounts) and select *Edit notification channel* to change the notification sound
Folder:
* Long press the folder in the folder list and select *Create notification channel*
* Long press the folder in the folder list and select *Edit notification channel* to change the notification sound
Sender:
* Open a message from the sender and expand it
* Expand the addresses section by tapping on the down arrow
* Tap on the bell icon to create or edit a notification channel and to change the notification sound
The order of precendence is: sender sound, folder sound, account sound and default sound.
Setting a notification sound for an account, folder or sender requires Android 8 Oreo or later and is a pro feature.
**(146) How can I fix incorrect message times?**
Since the sent date/time is optional and can be manipulated by the sender, FairEmail uses the server received date/time by default.
Sometimes the server received date/time is incorrect, mostly because messages were incorrectly imported from another server and sometimes due to a bug in the email server.
In these rare cases, it is possible to let FairEmail use either the date/time from the *Date* header (sent time) or from the *Received* header as a workaround. This can be changed in the advanced account settings: Settings, tap Manual setup, tap Accounts, tap account, tap Advanced.
This will not change the time of already synchronized messages. To solve this, long press the folder(s) in the folder list and select *Delete local messages* and *Synchronize now*.
**(147) What should I know about third party versions?**
查阅这里可能是因为您在使用第三方构建的 FairEmail。
仅为最新的 Play 商店版本、最新的 GitHub release 版本及特定的 F-Droid 构建**提供支持**。F-Droid 构建**仅限**其构建版本号与最新的 GitHub release 版本版本号相同时。
F-Droid 会不定期地构建,如果有重要的更新,这可能会产生问题。 因此建议您切换到 GitHub 版本。
F-Droid 版本是从相同的源代码生成,但数字签名不同。 因此 F-Droid 版本中提供了相同的所有功能,但 Gmail 快速设置向导除外,因为 Google 仅允许和批准一个应用签名。 对列出的其他邮件服务提供商来说,OAuth 访问仅在 Play 商店版本和 Github 版本中可用,因为电子邮箱提供者仅允许官方版本使用 OAuth 。
请注意,您需要先卸载 F-Droid 构建的版本才能安装 GitHub 版本, 因为 Android 基于安全原因拒绝安装不同签名的同一应用程序。
GitHub 版本将自动检查更新。 可以在设置中关闭此功能。
完整的下载选项[详见这里](https://github.com/M66B/FairEmail/blob/master/README.md#user-content-downloads)。
如果您的 F-Droid 构建版本遇到问题,请先检查是否有更新的 GitHub 版本。
**(148) How can I use an Apple iCloud account?**
有内置一个苹果 iCloud 的配置文件,所以您应该能使用快速设置向导(其它提供者)。 If needed you can find the right settings [here](https://support.apple.com/en-us/HT202304) to manually set up an account.
当使用双重认证时,您可能需要使用一个[应用专用密码](https://support.apple.com/en-us/HT204397)。
**(149) How does the unread message count widget work?**
The unread message count widget shows the number of unread messages either for all accounts or for a selected account, but only for the folders for which new message notifications are enabled.
Tapping on the notification will synchronize all folders for which synchronization is enabled and will open:
* the start screen when all accounts were selected
* a folder list when a specific account was selected and when new message notifications are enabled for multiple folders
* a list of messages when a specific account was selected and when new message notifications are enabled for one folder
**(150) Can you add cancelling calendar invites?**
Cancelling calendar invites (removing calendar events) requires write calendar permission, which will result in effectively granting permission to read and write *all* calendar events of *all* calendars.
Given the goal of FairEmail, privacy and security, and given that it is easy to remove a calendar event manually, it is not a good idea to request this permission for just this reason.
Inserting new calendar events can be done without permissions with special [intents](https://developer.android.com/guide/topics/providers/calendar-provider.html#intents). Unfortunately, there exists no intent to delete existing calendar events.
**(151) Can you add backup/restore of messages?**
电子邮件客户端意在阅读和撰写邮件,而不是备份和还原邮件。 Note that breaking or losing your device, means losing your messages!
因此,电子邮件提供商/服务器负责备份。
如果您自行备份,可以尝试类似 [imapsync](https://imapsync.lamiral.info/) 的工具。
Since version 1.1556 it is possible to export all messages of a POP3 folder in mbox format according to [RFC4155](https://www.ietf.org/rfc/rfc4155.txt), which might be useful to save sent messages if the email server doesn't.
如果您想导入一个 mbox 文件到一个现有的电子邮件账户, 可以在桌面电脑上使用 Thunderbird 和 [ImportExportTools](https://addons.thunderbird.net/nl/thunderbird/addon/importexporttools/) 附加组件。
**(152) How can I insert a contact group?**
You can insert the email addresses of all contacts in a contact group via the three dots menu of the message composer.
You can define contact groups with the Android contacts app, please see [here](https://support.google.com/contacts/answer/30970) for instructions.
**(153) Why does permanently deleting Gmail message not work?**
您可能需要在桌面浏览器上更改 [Gmail IMAP 设置](https://mail.google.com/mail/u/0/#settings/fwdandpop) ,这样就能正常运转:
* When I mark a message in IMAP as deleted: Auto-Expunge off - Wait for the client to update the server.
* When a message is marked as deleted and expunged from the last visible IMAP folder: Immediately delete the message forever
请注意,已存档的消息先移动到回收站文件夹,之后才能删除。
背景故事: Gmail 似乎有一个额外的 IMAP 消息视图,这可能不同于主要的消息视图。
另一个奇妙之处,无法通过 IMAP 命令移除通过网页界面设置的星标
```
STORE -FLAGS (\Flagged)
```
另一方面,通过 IMAP 设置的星标在网页界面中正常显示且可以通过 IMAP 移除。
**~~(154) Can you add favicons as contact photos?~~**
~~Besides that a [favicon](https://en.wikipedia.org/wiki/Favicon) might be shared by many email addresses with the same domain name~~ ~~and therefore is not directly related to an email address, favicons can be used to track you.~~
**(155) What is a winmail.dat file?**
*winmail.dat* 文件是由配置不正确的 Outlook 客户端所发送。 它是一个 微软定制的文件格式([TNEF](https://en.wikipedia.org/wiki/Transport_Neutral_Encapsulation_Format)),包含一条消息,并可能有附件。
You can find some more information about this file [here](https://support.mozilla.org/en-US/kb/what-winmaildat-attachment).
您可以使用 Android 应用程序 [Letter Opener](https://play.google.com/store/apps/details?id=app.letteropener) 查看它。
**(156) How can I set up an Office 365 account?**
An Office 365 account can be set up via the quick setup wizard and selecting *Office 365 (OAuth)*.
If the wizard ends with *AUTHENTICATE failed*, IMAP and/or SMTP might be disabled for the account. In this case you should ask the administrator to enable IMAP and SMTP. The procedure is documented [here](https://docs.microsoft.com/en-in/exchange/troubleshoot/configure-mailboxes/pop3-imap-owa-activesync-office-365).
If you've enabled *security defaults* in your organization, you might need to enable the SMTP AUTH protocol. Please [see here](https://docs.microsoft.com/en-us/exchange/clients-and-mobile-in-exchange-online/authenticated-client-smtp-submission) about how to.
**(157) How can I set up an Free.fr account?**
Veuillez [voir ici](https://free.fr/assistance/597.html) pour les instructions.
**SMTP est désactivé par défaut**, veuillez [voir ici](https://free.fr/assistance/2406.html) comment il peut être activé.
Veuillez [voir ici](http://jc.etiemble.free.fr/abc/index.php/trucs-astuces/configurer-smtp-free-fr) pour un guide détaillé.
**(158) Which camera / audio recorder do you recommend?**
To take photos and to record audio a camera and an audio recorder app are needed. The following apps are open source cameras and audio recorders:
* [Open Camera](https://play.google.com/store/apps/details?id=net.sourceforge.opencamera) ([F-Droid](https://f-droid.org/en/packages/net.sourceforge.opencamera/))
* [Audio Recorder version 3.3.24+](https://play.google.com/store/apps/details?id=com.github.axet.audiorecorder) ([F-Droid](https://f-droid.org/packages/com.github.axet.audiorecorder/))
To record voice notes, etc, the audio recorder needs to support [MediaStore.Audio.Media.RECORD_SOUND_ACTION](https://developer.android.com/reference/android/provider/MediaStore.Audio.Media#RECORD_SOUND_ACTION). Oddly, most audio recorders seem not to support this standard Android action.
**(159) What are Disconnect's tracker protection lists?**
Please see [here](https://disconnect.me/trackerprotection) for more information about Disconnect's tracker protection lists.
After downloading the lists in the privacy settings, the lists can optionally be used:
* to warn about tracking links on opening links
* to recognize tracking images in messages
Tracking images will be disabled only if the corresponding main 'disable' option is enabled.
Tracking images will not be recognized when the domain is classified as '*Content*', see [here](https://disconnect.me/trackerprotection#trackers-we-dont-block) for more information.
This command can be sent to FairEmail from an automation app to update the protection lists:
```
(adb shell) am start-foreground-service -a eu.faircode.email.DISCONNECT.ME
```
Updating once a week will probably be sufficient, please see [here](https://github.com/disconnectme/disconnect-tracking-protection/commits/master) for recent lists changes.
**(160) Can you add permanent deletion of messages without confirmation?**
永久删除意味着消息将*不可逆转*地丢失。为防止意外发生,始终需要确认。 即使有确认,也有一些因自己的失误而丢失某些邮件的非常愤怒的人联系了我。 这是一个相当不爽的体验 :-(
Advanced: the IMAP delete flag in combination with the EXPUNGE command is not supportable because both email servers and not all people can handle this, risking unexpected loss of messages. A complicating factor is that not all email servers support [UID EXPUNGE](https://tools.ietf.org/html/rfc4315).
From version 1.1485 it is possible to temporarily enable debug mode in the miscellaneous settings to disable expunging messages. Note that messages with a *\Deleted* flag will not be shown in FairEmail.
**(161) Can you add a setting to change the primary and accent color?***
If I could, I would add a setting to select the primary and accent color right away, but unfortunately Android themes are fixed, see for example [here](https://stackoverflow.com/a/26511725/1794097), so this is not possible.
**(162) 支持 IMAP NOTIFY 吗?***
是的,自版本 1.1413 以来支持 [IMAP NOTIFY](https://tools.ietf.org/html/rfc5465)。
支持 IMAP NOTIFY 意味着将会为所有 *已订阅* 文件夹的新增、变更和删除邮件请求通知,并在收到已订阅文件夹的变更通知时同步该文件夹。 因此可以禁用已订阅文件夹的同步,减少向电子邮件服务器的同步文件夹的连接。
**Important**: push messages (=always sync) for the inbox and subscription management (receive settings) need to be enabled.
**重要**:大多数电子邮件服务器都不支持它! 您可以通过导航菜单检查日志来判断电子邮件服务器是否支持 NOTIFY 功能。
**(163) What is message classification?**
*这是一个实验性功能!*
Message classification will attempt to automatically group emails into classes, based on their contents, using [Bayesian statistics](https://en.wikipedia.org/wiki/Bayesian_statistics). In the context of FairEmail, a folder is a class. So, for example, the inbox, the spam folder, a 'marketing' folder, etc, etc.
You can enable message classification in the miscellaneous settings. This will enable 'learning' mode only. The classifier will 'learn' from new messages in the inbox and spam folder by default. The folder property *Classify new messages in this folder* will enable or disable 'learning' mode for a folder. You can clear local messages (long press a folder in the folder list of an account) and synchronize the messages again to classify existing messages.
Each folder has an option *Automatically move classified messages to this folder* ('auto classification' for short). When this is turned on, new messages in other folders which the classifier thinks belong to that folder will be automatically moved.
The option *Use local spam filter* in the report spam dialog will turn on message classification in the miscellaneous settings and auto classification for the spam folder. Please understand that this is not a replacement for the spam filter of the email server and can result in [false positives and false negatives](https://en.wikipedia.org/wiki/False_positives_and_false_negatives). See also [this FAQ](#user-content-faq92).
A practical example: suppose there is a folder 'marketing' and auto message classification is enabled for this folder. Each time you move a message into this folder you'll train FairEmail that similar messages belong in this folder. Each time you move a message out of this folder you'll train FairEmail that similar messages do not belong in this folder. After moving some messages into the 'marketing' folder, FairEmail will start moving similar messages automatically into this folder. Or, the other way around, after moving some messages out of the 'marketing' folder, FairEmail will stop moving similar messages automatically into this folder. This will work best with messages with similar content (email addresses, subject and message text).
Classification should be considered as a best guess - it might be a wrong guess, or the classifier might not be confident enough to make any guess. If the classifier is unsure, it will simply leave an email where it is.
To prevent the email server from moving a message into the spam folder again and again, auto classification out of the spam folder will not be done.
The message classifier calculates the probability a message belongs in a folder (class). There are two options in the miscellaneous settings which control if a message will be automatically moved into a folder, provided that auto classification is enabled for the folder:
* *Minimum class probability*: a message will only be moved when the confidence it belongs in a folder is greater than this value (default 15 %)
* *Minimum class difference*: a message will only be moved when the difference in confidence between one class and the next most likely class is greater than this value (default 50 %)
Both conditions must be satisfied before a message will be moved.
Considering the default option values:
* Apples 40 % and bananas 30 % would be disregarded because the difference of 25 % is below the minimum of 50 %
* Apples 10 % and bananas 5 % would be disregarded because the probability for apples is below the minimum of 15 %
* Apples 50 % and bananas 20 % would result in selecting apples
Classification is optimized to use as little resources as possible, but will inevitably use some extra battery power.
You can delete all classification data by turning classification in the miscellaneous settings three times off.
[Filter rules](#user-content-faq71) will be executed before classification.
Message classification is a pro feature, except for the spam folder.
**(164) Can you add customizable themes?**
Unfortunately, Android [does not support](https://stackoverflow.com/a/26511725/1794097) dynamic themes, which means all themes need [to be predefined](https://github.com/M66B/FairEmail/blob/master/app/src/main/res/values/styles.xml).
Since for each theme there needs to be a light, dark and black variant, it is not feasible to add for each color combination (literally millions) a predefined theme.
Moreover, a theme is more than just a few colors. For example themes with a yellow accent color use a darker link color for enough contrast.
The theme colors are based on the color circle of [Johannes Itten](https://en.wikipedia.org/wiki/Johannes_Itten).
**(165) Is Android Auto supported?**
Yes, Android Auto is supported, but only with the GitHub version, please [see here](https://forum.xda-developers.com/t/app-5-0-fairemail-fully-featured-open-source-privacy-oriented-email-app.3824168/post-83801249) about why.
For notification (messaging) support you'll need to enable the following notification options:
* *Use Android 'messaging style' notification format*
* Notification actions: *Direct reply* and (mark as) *Read*
You can enable other notification actions too, if you like, but they are not supported by Android Auto.
The developers guide is [here](https://developer.android.com/training/cars/messaging).
**(166) Can I snooze a message across multiple devices?**
First of all, there is no standard for snoozing messages, so all snooze implementations are custom solutions.
Some email providers, like Gmail, move snoozed messages to a special folder. Unfortunately, third party apps have no access to this special folder.
Moving a message to another folder and back might fail and might not be possible if there is no internet connection. This is problematic because a message can be snoozed only after moving the message.
To prevent these issues, snoozing is done locally on the device by hiding the message while it is snoozing. Unfortunately, it is not possible to hide messages on the email server too.
获取帮助(客户支持)
FairMail 仅支持 Android 智能手机、平板电脑和 ChromeOS。
仅支持最新的 Play 商店版本和最新的 GitHub 版本。 只有版本号与最新的 GitHub 版本号相同时,F-Droid 版本才受支持。 这也意味着不支持降级。
对于与 FairEmail 没有直接关联的事情,没有任何支持。
您自行构建和开发的东西不提供支持。
功能请求应该:
* 对大多数人有用
* 不使 FairEmail 的使用复杂化
* 符合 FairEmail 的哲学(着眼隐私、安全导向)
* 遵守通用标准(IMAP、SMTP 等)
不符合上述要求的功能请求很可能会被拒绝。 这是为了长期维护和提供支持而着想。
如果您有疑问,想要请求某个功能或报告错误,**请使用 [此表单](https://contact.faircode.eu/?product=fairemailsupport)**。
由于频繁误用,GitHub issue 功能已禁用。
版权所有 © 2018-2021 Marcel Bokhorst.