You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
FairEmail/index.html

6765 lines
350 KiB

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<p><a name="top"></a></p>
<h1 id="fairemail-support">FairEmail support</h1>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F">Google
Translate</a></p>
<p>🇬🇧 If you have a question, please check the following frequently
asked questions first. <a href="#quick-support">At the bottom</a>, you
can find out how to ask other questions, request features, and report
bugs. You will receive an answer in your own language.</p>
<p>🇩🇪 Wenn Sie eine Frage haben, überprüfen Sie bitte zuerst die
folgenden häufig gestellten Fragen. <a href="#quick-support">Unten</a>
erfahren Sie, wie Sie andere Fragen stellen, Funktionen anfordern und
Fehler melden können. Sie erhalten eine Antwort in Ihrer eigenen
Sprache.</p>
<p>🇫🇷 Si vous avez une question, veuillez dabord vérifier les questions
fréquemment posées suivantes. <a href="#quick-support">En bas</a>, vous
pouvez découvrir comment poser dautres questions, demander des
fonctionnalités et signaler des bogues. Vous recevrez une réponse dans
votre propre langue.</p>
<p><br></p>
<p><strong>Important</strong></p>
<p>There is a lot of technical information in this FAQ, mostly for
specific problems or specific use cases. For other more common
questions, please see the tutorials below or contact me via <em>Get
support</em> below.</p>
<p><br></p>
<h2 id="tutorials">Tutorials</h2>
<p>Please <a
href="https://github.com/M66B/FairEmail/tree/master/tutorials">see
here</a> for tutorials 📖.</p>
<h2 id="index">Index</h2>
<ul>
<li><a href="#authorizing-accounts">Authorizing accounts</a></li>
<li><a href="#howto">How to …?</a></li>
<li><a href="#known-problems">Known problems</a></li>
<li><a href="#planned-features">Planned features</a></li>
<li><a href="#frequently-asked-questions">Frequently Asked Questions</a>
(FAQ)</li>
<li><a href="#get-support">Get support</a></li>
</ul>
<h2>
<a name="authorizing-accounts"></a>Authorizing accounts
</h2>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23authorizing-accounts">Google
Translate</a></p>
<p>In most cases, the quick setup wizard will be able to automatically
identify the correct configuration.</p>
<p>If the quick setup wizard fails, youll need to manually set up an
account (to receive email) and an identity (to send email). For this
youll need the IMAP and SMTP server addresses and port numbers, whether
SSL/TLS or STARTTLS should be used and your username (mostly, but not
always, your email address) and your password.</p>
<p>Searching for <em>IMAP</em> and the name of the provider is mostly
sufficient to find the right documentation.</p>
<p>In some cases, youll need to enable external access to your account
and/or to use a special (app) password, for instance when two-factor
authentication is enabled.</p>
<p>For authorizing:</p>
<ul>
<li>Gmail / G suite, see <a href="#faq6">question 6</a></li>
<li>Outlook / Live / Hotmail, see <a href="#faq14">question 14</a></li>
<li>Office 365, see <a href="#faq156">question 156</a></li>
<li>Microsoft Exchange, see <a href="#faq8">question 8</a></li>
<li>Yahoo, AOL and Sky, see <a href="#faq88">question 88</a></li>
<li>Apple iCloud, see <a href="#faq148">question 148</a> (<a
href="https://support.apple.com/de-de/HT204397">German</a>)</li>
<li>Free.fr, see <a href="#faq157">question 157</a></li>
<li>Posteo: please check if <a
href="https://posteo.de/en/help/activating-additional-email-account-protection">additional
email account protection</a> (<a
href="https://posteo.de/hilfe/zusaetzlichen-postfachschutz-deaktivieren">German</a>)
isnt enabled</li>
<li>Posteo: not that there is <a
href="https://posteo.de/en/help/how-does-the-posteo-spam-filter-work">no
spam folder</a> (<a
href="https://posteo.de/hilfe/wie-funktioniert-der-posteo-spamfilter">German</a>)</li>
<li>Web.de: please check if <a
href="https://hilfe.web.de/pop-imap/imap/imap-serverdaten.html">IMAP is
enabled</a></li>
<li>Web.de: with two factor authentication youll need to use <a
href="https://web.de/email/sicherheit/zwei-faktor-authentifizierung/">an
app password</a></li>
<li>Web.de: if you are missing the spam messages folder, you should
enable spam filtering via the website of web.de again</li>
<li>GMX: please check if <a
href="https://support.gmx.com/pop-imap/toggle.html">IMAP is enabled</a>
(<a href="https://hilfe.gmx.net/pop-imap/einschalten.html">German</a>).
Reportedly, you need to do this on a desktop computer.</li>
<li>GMX: with two factor authentication youll need to use <a
href="https://support.gmx.com/security/2fa/application-specific-passwords.html">an
app password</a> (<a
href="https://hilfe.gmx.net/sicherheit/2fa/anwendungsspezifisches-passwort.html">German</a>).
Not that enabling two-factor authentication does not automatically
enable IMAP.</li>
<li>T-online.de: please make sure you use <a
href="https://www.telekom.de/hilfe/festnetz-internet-tv/e-mail/e-mail-adresse-passwoerter-und-sicherheit/passwort-fuer-e-mail-programme-einrichten">an
email password</a> (German) and not your account password</li>
<li>Ionos (1und1): please make sure you use <a
href="https://www.ionos.de/hilfe/e-mail/problemloesungen-mail-basicmail-business/passwort-fuer-e-mail-konto-bei-11-ionos-aendern/">an
email password</a> (German) and not your account password</li>
<li>Yandex: please check if <a
href="https://yandex.com/support/mail/mail-clients/others.html">IMAP is
enabled</a></li>
<li>Comcast/Xfinity: please check if <a
href="https://www.xfinity.com/support/articles/third-party-email-access">third
part email access</a> is enabled</li>
</ul>
<p>Please see <a href="#faq22">here</a> for common error messages and
solutions.</p>
<p>Related questions:</p>
<ul>
<li><a href="#faq111">Is OAuth supported?</a></li>
<li><a href="#faq133">Why is ActiveSync ™ not supported?</a></li>
</ul>
<p><a name="howto"></p>
<h2 id="how-to">How to …?</h2>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23howto">Google
Translate</a></p>
<ul>
<li>Change the account name: (Main) Settings, tap Manual setup, tap
Accounts, tap account</li>
<li>Change the swipe left/right target: (Main) Settings, tab page
Behavior, Set swipe actions (*)</li>
<li>Change password: (Main) Settings, tap Manual setup, tap Accounts,
tap account, change password</li>
<li>Set a signature: (Main) Settings, tap Manual setup, tap Identities,
tap identity, Edit signature.</li>
<li>Set a default CC or BCC address: (Main) Settings, tap Manual setup,
tap Identities, tap identity, tap Advanced.</li>
<li>Add CC and BCC addresses: tap the peoples icon at the end of the
subject</li>
<li>Go to the next/previous message on archive/delete: in the behavior
settings disable <em>Automatically close conversations</em> and select
<em>Go to next/previous conversation</em> for <em>On closing a
conversation</em></li>
<li>Add a folder to the unified inbox: long press the folder in the
folder list and tick <em>Show in unified inbox</em></li>
<li>Add a folder to the navigation menu: long press the folder in the
folder list and tick <em>Show in navigation menu</em></li>
<li>Load more messages: long press a folder in the folder list, select
<em>Fetch more messages</em></li>
<li>Delete a message, skipping trash: long press the trash icon</li>
<li>Delete an account/identity: (Main) Settings, tap Manual setup, tap
Accounts/Identities, tap the account/identity, trash icon top right</li>
<li>Delete a folder: long press the folder in the folder list, Edit
properties, trash icon top right</li>
<li>Undo send: Outbox, swipe the message in the list left or right</li>
<li>Delete a contact: please <a href="#faq171">see this FAQ</a></li>
<li>Store sent messages in the inbox: please <a href="#faq142">see this
FAQ</a></li>
<li>Change system folders: (Main) Settings, tap Manual setup, tap
Accounts, tap account, at the bottom</li>
<li>Export/import settings: (Main) Settings, navigation (left side)
menu</li>
</ul>
<p>(*) Swipe actions for individual and POP3 accounts can be configured
in the account setting: (Main) Settings, tap Manual setup, tap Accounts,
tap account</p>
<h2>
<a name="known-problems"></a>Known problem
</h2>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23known-problems">Google
Translate</a></p>
<ul>
<li><del>A <a href="https://issuetracker.google.com/issues/37054851">bug
in Android 5.1 and 6</a> causes apps to sometimes show a wrong time
format. Toggling the Android setting <em>Use 24-hour format</em> might
temporarily solve the issue. A workaround was added.</del></li>
<li><del>A <a
href="https://issuetracker.google.com/issues/126362828">bug in Google
Drive</a> causes files exported to Google Drive to be empty. Google has
fixed this.</del></li>
<li><del>A <a href="https://issuetracker.google.com/issues/78495471">bug
in AndroidX</a> causes FairEmail to occasionally crash on long pressing
or swiping. Google has fixed this.</del></li>
<li><del>A <a
href="https://issuetracker.google.com/issues/138441698">bug in AndroidX
ROOM</a> causes sometimes a crash with “<em>… Exception while computing
database live data … Couldnt read row …</em>”. A workaround was
added.</del></li>
<li>A <a href="https://issuetracker.google.com/issues/119872129">bug in
Android</a> causes FairEmail to crash with “<em>… Bad notification
posted …</em>” on some devices once after updating FairEmail and tapping
on a notification.</li>
<li>A <a href="https://issuetracker.google.com/issues/62427912">bug in
Android</a> sometimes causes a crash with “<em>… ActivityRecord not
found for …</em>” after updating FairEmail. Reinstalling (<a
href="https://stackoverflow.com/questions/46309428/android-activitythread-reportsizeconfigurations-causes-app-to-freeze-with-black">source</a>)
might fix the problem.</li>
<li>A <a href="https://issuetracker.google.com/issues/37018931">bug in
Android</a> sometimes causes a crash with <em>… InputChannel is not
initialized …</em> on some devices.</li>
<li><del>A <a
href="https://review.lineageos.org/c/LineageOS/android_frameworks_base/+/265273">bug
in LineageOS</a> sometimes causes a crash with <em>
java.lang.ArrayIndexOutOfBoundsException: length=…; index=…
</em>.</del></li>
<li>A bug in Nova Launcher on Android 5.x causes FairEmail to crash with
a <em>java.lang.StackOverflowError</em> when Nova Launcher has access to
the accessibility service.</li>
<li><del>The folder selector sometimes shows no folders for yet unknown
reasons. This seems to be fixed.</del></li>
<li><del>A <a href="https://issuetracker.google.com/issues/64729576">bug
in AndroidX</a> makes it hard to grap the fast scroller. A workaround
was added.</del></li>
<li><del>Encryption with YubiKey results into an infinite loop. This
seems to be caused by a <a
href="https://github.com/open-keychain/open-keychain/issues/2507">bug in
OpenKeychain</a>.</del></li>
<li>A preview of a message text doesnt (always) appear on Samsung
watches because <a
href="https://developer.android.com/reference/androidx/core/app/NotificationCompat.Builder.html#setLocalOnly(boolean)">setLocalOnly</a>
seem to be ignored. Message preview texts are known to be displayed
correctly on Pebble 2, Fitbit Charge 3, Mi band 3, and Xiaomi Amazfit
BIP smartwatches. See also <a href="#faq126">this FAQ</a>.</li>
<li>A <a href="https://issuetracker.google.com/issues/37068143">bug in
Android 6.0</a> causes a crash with <em>… Invalid offset: … Valid range
is …</em> when text is selected and tapping outside of the selected
text. This bug has been fixed in Android 6.0.1.</li>
<li>Internal (anchor) links will not work because original messages are
shown in an embedded WebView in a scrolling view (the conversation
list). This is an Android limitation which cannot be fixed or worked
around.</li>
<li>Language detection <a
href="https://issuetracker.google.com/issues/173337263">is not working
anymore</a> on Pixel devices with (upgraded to?) Android 11</li>
<li>A <a
href="https://github.com/open-keychain/open-keychain/issues/2688">bug in
OpenKeychain</a> causes invalid PGP signatures when using a hardware
token.</li>
<li>Search suggestions causes the keyboard losing focus on Android
12L.</li>
<li><a
href="https://techcommunity.microsoft.com/t5/outlook/outlook-office-365-imap-idle-is-broken/m-p/3616242">A
bug</a> in the Outlook IMAP server causes delayed new message
notifications.</li>
</ul>
<p><a name="redmi"></a> <a name="oneplus"></a> <a name="oppo"></a></p>
<p><br /></p>
<p><strong>Xiaomi Redmi / OnePlus / Oppo</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23redmi">Google
Translate</a></p>
<p>On some Xiaomi Redmi (Note) devices, some OnePlus devices with
Android 12 and some Oppo devices with Android 12 the database
occasionally gets corrupted, resulting in total data loss (on the device
only, unless you are using a POP3 account with the option <em>Leave
messages on server</em> disabled).</p>
<p>The cause of this problem are disk I/O errors due to an Android bug
(more likely) or maybe a hardware issue (less likely), please <a
href="https://www.sqlite.org/rescode.html#ioerr_write">see here</a>.</p>
<p><em>This error might result from a hardware malfunction or because a
filesystem came unmounted while the file was open.</em></p>
<p>This cant be fixed by the app and should be fixed by manufacturer of
the device.</p>
<p><strong>Please do not blame the app for this!</strong></p>
<p>For the record the stack trace:</p>
<pre><code>android.database.sqlite.SQLiteDiskIOException: disk I/O error (code 778)
at io.requery.android.database.sqlite.SQLiteConnection.nativeExecute(SourceFile:-2)
at io.requery.android.database.sqlite.SQLiteConnection.execute(SQLiteConnection:595)
at io.requery.android.database.sqlite.SQLiteSession.endTransactionUnchecked(SQLiteSession:447)
at io.requery.android.database.sqlite.SQLiteSession.endTransaction(SQLiteSession:411)
at io.requery.android.database.sqlite.SQLiteDatabase.endTransaction(SQLiteDatabase:551)
at androidx.room.RoomDatabase.internalEndTransaction(RoomDatabase:594)
at androidx.room.RoomDatabase.endTransaction(RoomDatabase:584)</code></pre>
<p>The cause might be <a
href="https://ericsink.com/entries/sqlite_android_n.html">changes in
Android 7 Nougat</a>, which is why sqlite isnt bundled anymore since
version 1.1970.</p>
<h2>
<a name="planned-features"></a>Planned features
</h2>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23planned-features">Google
Translate</a></p>
<ul>
<li><del>Synchronize on demand (manual)</del></li>
<li><del>Semi-automatic encryption</del></li>
<li><del>Copy message</del></li>
<li><del>Colored stars</del></li>
<li><del>Notification settings per folder</del></li>
<li><del>Select local images for signatures</del></li>
<li><del>Show messages matched by a rule</del></li>
<li><del><a
href="https://tools.ietf.org/html/rfc5804">ManageSieve</a></del> (there
are no maintained Java libraries with a suitable license and without
dependencies and besides that, FairEmail has its own rules)</li>
<li><del>Search for messages with/without attachments</del> (on-device
only because IMAP doesnt support searching for attachments)</li>
<li><del>Search for a folder</del></li>
<li><del>Search suggestions</del></li>
<li><del><a
href="https://autocrypt.org/autocrypt-spec-1.0.0.pdf">Autocrypt Setup
Message</a> (section 4.4)</del> (IMO it is not a good idea to let an
email client handle sensitive encryption keys for an exceptional use
case while OpenKeychain can export keys too)</li>
<li><del>Generic unified folders</del></li>
<li><del>New per account message notification schedules</del>
(implemented by adding a time condition to rules so messages can be
snoozed during selected periods)</li>
<li><del>Copy accounts and identities</del></li>
<li><del>Pinch zoom</del></li>
<li><del>More compact folder view</del></li>
<li><del>Compose lists</del></li>
<li><del>Compose tables</del> (the Android editor doesnt support
tables)</li>
<li><del>Pinch zoom text size</del></li>
<li><del>Display GIFs</del></li>
<li><del>Themes</del></li>
<li><del>Any day time condition</del> (any day doesnt really fit
into the from/to date/time condition)</li>
<li><del>Send as attachment</del></li>
<li><del>Widget for selected account</del></li>
<li><del>Remind to attach files</del></li>
<li><del>Select domains to show images for</del></li>
<li><del>Unified starred messages view</del> (implemented as saved
search)</li>
<li><del>Move notification action</del></li>
<li><del>S/MIME support</del></li>
<li><del>Search for settings</del></li>
<li>POP3 folders</li>
<li>Bottom action bar</li>
</ul>
<p>Anything on this list is in random order and <em>might</em> be added
in the near future.</p>
<h2>
<a name="frequently-asked-questions"></a>Frequently Asked Questions
</h2>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23frequently-asked-questions">Google
Translate</a></p>
<ul>
<li><a href="#faq1">(1) Which permissions are needed and why?</a></li>
<li><a href="#faq2">(2) Why is there a permanent notification
shown?</a></li>
<li><a href="#faq3">(3) What are operations and why are they
pending?</a></li>
<li><a href="#faq4">(4) How can I use an invalid security certificate /
empty password / plain text connection?</a></li>
<li><a href="#faq5">(5) How can I customize the message view?</a></li>
<li><a href="#faq6">(6) How can I login to Gmail / G suite?</a></li>
<li><a href="#faq7">(7) Why are sent messages not appearing (directly)
in the sent folder?</a></li>
<li><a href="#faq8">(8) Can I use a Microsoft Exchange account?</a></li>
<li><a href="#faq9">(9) What are identities / how do I add an alias /
configure a default CC or BCC address?</a></li>
<li><a href="#faq11"><del>(11) Why is POP not supported?</del></a></li>
<li><a href="#faq10"><del>(10) What does UIDPLUS not supported
mean?</del></a></li>
<li><a href="#faq12">(12) How does encryption/decryption work?</a></li>
<li><a href="#faq13">(13) How does search on device/server
work?</a></li>
<li><a href="#faq14">(14) How can I set up an Outlook / Live / Hotmail
account?</a></li>
<li><a href="#faq15">(15) Why does the message text keep
loading?</a></li>
<li><a href="#faq16">(16) Why are messages not being
synchronized?</a></li>
<li><a href="#faq17"><del>(17) Why does manual synchronize not
work?</del></a></li>
<li><a href="#faq18">(18) Why is the message preview not always
shown?</a></li>
<li><a href="#faq19">(19) Why are the pro features so
expensive?</a></li>
<li><a href="#faq20">(20) Can I get a refund?</a></li>
<li><a href="#faq21">(21) How do I enable the notification
light?</a></li>
<li><a href="#faq22">(22) What does account/folder error …
mean?</a></li>
<li><a href="#faq23">(23) Why do I get alert …?</a></li>
<li><a href="#faq24">(24) What is browse messages on the
server?</a></li>
<li><a href="#faq25">(25) Why cant I select/open/save an image,
attachment or a file?</a></li>
<li><a href="#faq26">(26) Can I help to translate FairEmail in my own
language?</a></li>
<li><a href="#faq27">(27) How can I distinguish between embedded and
external images?</a></li>
<li><a href="#faq28">(28) How can I manage status bar
notifications?</a></li>
<li><a href="#faq29">(29) How can I get new message notifications for
other folders?</a></li>
<li><a href="#faq30">(30) How can I use the provided quick
settings?</a></li>
<li><a href="#faq31">(31) How can I use the provided shortcuts?</a></li>
<li><a href="#faq32">(32) How can I check if reading email is really
safe?</a></li>
<li><a href="#faq33">(33) Why are edited sender addresses not
working?</a></li>
<li><a href="#faq34">(34) How are identities matched?</a></li>
<li><a href="#faq35">(35) Why should I be careful with viewing images,
attachments, the original message, and opening links?</a></li>
<li><a href="#faq36">(36) How are settings files encrypted?</a></li>
<li><a href="#faq37">(37) How are passwords stored?</a></li>
<li><a href="#faq39">(39) How can I reduce the battery usage of
FairEmail?</a></li>
<li><a href="#faq40">(40) How can I reduce the data usage of
FairEmail?</a></li>
<li><a href="#faq41">(41) How can I fix the error Handshake
failed?</a></li>
<li><a href="#faq42">(42) Can you add a new provider to the list of
providers?</a></li>
<li><a href="#faq43">(43) Can you show the original …?</a></li>
<li><a href="#faq44">(44) Can you show contact photos / identicons in
the sent folder?</a></li>
<li><a href="#faq45">(45) How can I fix This key is not available. To
use it, you must import it as one of your own!?</a></li>
<li><a href="#faq46">(46) Why does the message list keep
refreshing?</a></li>
<li><a href="#faq47">(47) How do I solve the error No primary account
or no drafts folder?</a></li>
<li><a href="#faq48"><del>(48) How do I solve the error No primary
account or no archive folder?</del></a></li>
<li><a href="#faq49">(49) How do I fix An outdated app sent a file path
instead of a file stream?</a></li>
<li><a href="#faq50">(50) Can you add an option to synchronize all
messages?</a></li>
<li><a href="#faq51">(51) How are folders sorted?</a></li>
<li><a href="#faq52">(52) Why does it take some time to reconnect to an
account?</a></li>
<li><a href="#faq53">(53) Can you stick the message action bar to the
top/bottom?</a></li>
<li><a href="#faq54"><del>(54) How do I use a namespace
prefix?</del></a></li>
<li><a href="#faq55">(55) How can I mark all messages as read / move or
delete all messages?</a></li>
<li><a href="#faq56">(56) Can you add support for JMAP?</a></li>
<li><a href="#faq57">(57) Can I use HTML in signatures?</a></li>
<li><a href="#faq58">(58) What does an open/closed email icon
mean?</a></li>
<li><a href="#faq59">(59) Can original messages be opened in the
browser?</a></li>
<li><a href="#faq60">(60) Did you know …?</a></li>
<li><a href="#faq61">(61) Why are some messages shown dimmed?</a></li>
<li><a href="#faq62">(62) Which authentication methods are
supported?</a></li>
<li><a href="#faq63">(63) How are images resized for displaying on
screens?</a></li>
<li><a href="#faq64"><del>(64) Can you add custom actions for swipe
left/right?</del></a></li>
<li><a href="#faq65">(65) Why are some attachments shown
dimmed?</a></li>
<li><a href="#faq66">(66) Is FairEmail available in the Google Play
Family Library?</a></li>
<li><a href="#faq67">(67) How can I snooze conversations?</a></li>
<li><a href="#faq68"><del>(68) Why can Adobe Acrobat reader not open PDF
attachments / Microsoft apps not open attached documents?</del></a></li>
<li><a href="#faq69">(69) Can you add auto scroll up on new
message?</a></li>
<li><a href="#faq70">(70) When will messages be auto expanded?</a></li>
<li><a href="#faq71">(71) How do I use rules?</a></li>
<li><a href="#faq72">(72) What are primary accounts/identities?</a></li>
<li><a href="#faq73">(73) Is moving messages across accounts
safe/efficient?</a></li>
<li><a href="#faq74">(74) Why do I see duplicate messages?</a></li>
<li><a href="#faq75">(75) Can you make an iOS, Windows, Linux, etc
version?</a></li>
<li><a href="#faq76">(76) What does Clear local messages do?</a></li>
<li><a href="#faq77">(77) Why are messages sometimes shown with a small
delay?</a></li>
<li><a href="#faq78">(78) How do I use schedules?</a></li>
<li><a href="#faq79">(79) How do I use synchronize on demand
(manual)?</a></li>
<li><a href="#faq80"><del>(80) How do I fix the error Unable to load
BODYSTRUCTURE?</del></a></li>
<li><a href="#faq81">(81) Can you make the background of the original
message view dark in dark themes?</a></li>
<li><a href="#faq82">(82) What is a tracking image?</a></li>
<li><a href="#faq84">(84) What are local contacts for?</a></li>
<li><a href="#faq85">(85) Why is an identity not available?</a></li>
<li><a href="#faq86"><del>(86) What are extra privacy
features?</del></a></li>
<li><a href="#faq87">(87) What does invalid credentials mean?</a></li>
<li><a href="#faq88">(88) How can I use a Yahoo/AT&amp;T, AOL or Sky
account?</a></li>
<li><a href="#faq89">(89) How can I send plain text only
messages?</a></li>
<li><a href="#faq90">(90) Why are some texts linked while not being a
link?</a></li>
<li><a href="#faq91"><del>(91) Can you add periodical synchronization to
save battery power?</del></a></li>
<li><a href="#faq92">(92) Can you add spam filtering, verification of
the DKIM signature and SPF authorization?</a></li>
<li><a href="#faq93">(93) Can you allow installation/data storage on
external storage media (sdcard)?</a></li>
<li><a href="#faq94">(94) What does the red/orange stripe at the end of
the header mean?</a></li>
<li><a href="#faq95">(95) Why are not all apps shown when selecting an
attachment or image?</a></li>
<li><a href="#faq96">(96) Where can I find the IMAP and SMTP
settings?</a></li>
<li><a href="#faq97">(97) What is cleanup?</a></li>
<li><a href="#faq98">(98) Why can I still pick contacts after revoking
contacts permissions?</a></li>
<li><a href="#faq99">(99) Can you add a rich text or markdown
editor?</a></li>
<li><a href="#faq100">(100) How can I synchronize Gmail
categories?</a></li>
<li><a href="#faq101">(101) What does the blue/orange dot at the bottom
of the conversations mean?</a></li>
<li><a href="#faq102">(102) How can I enable auto rotation of
images?</a></li>
<li><a href="#faq158">(103) How can I record audio?</a></li>
<li><a href="#faq104">(104) What do I need to know about error
reporting?</a></li>
<li><a href="#faq105">(105) How does the roam-like-at-home option
work?</a></li>
<li><a href="#faq106">(106) Which launchers can show a badge count with
the number of unread messages?</a></li>
<li><a href="#faq107">(107) How do I use colored stars?</a></li>
<li><a href="#faq108"><del>(108) Can you add permanently delete messages
from any folder?</del></a></li>
<li><a href="#faq109"><del>(109) Why is select account available in
official versions only?</del></a></li>
<li><a href="#faq110">(110) Why are (some) messages empty and/or
attachments corrupted?</a></li>
<li><a href="#faq111">(111) Is OAuth supported?</a></li>
<li><a href="#faq112">(112) Which email provider do you
recommend?</a></li>
<li><a href="#faq113">(113) How does biometric authentication
work?</a></li>
<li><a href="#faq114">(114) Can you add an import for the settings of
other email apps?</a></li>
<li><a href="#faq115"><del>(115) Can you add email address
chips?</del></a></li>
<li><a href="#faq116"><del>(116) How can I show images in messages from
trusted senders by default?</del></a></li>
<li><a href="#faq117">(117) How can I restore a purchase (on another
device) ?</a></li>
<li><a href="#faq118">(118) What does Remove tracking parameters
exactly?</a></li>
<li><a href="#faq119"><del>(119) Can you add colors to the unified inbox
widget?</del></a></li>
<li><a href="#faq120">(120) Why are new message notifications not
removed on opening the app?</a></li>
<li><a href="#faq121">(121) How are messages grouped into a
conversation?</a></li>
<li><a href="#faq122"><del>(122) Why is the recipient name/email address
show with a warning color?</del></a></li>
<li><a href="#faq123">(123) What will happen when FairEmail cannot
connect to an email server?</a></li>
<li><a href="#faq124">(124) Why do I get Message too large or too
complex to display?</a></li>
<li><a href="#faq125">(125) What are the current experimental
features?</a></li>
<li><a href="#faq126">(126) Can message previews be sent to my
smartwatch?</a></li>
<li><a href="#faq127">(127) How can I fix Syntactically invalid HELO
argument(s)?</a></li>
<li><a href="#faq128">(128) How can I reset asked questions, for example
to show images?</a></li>
<li><a href="#faq129">(129) Are ProtonMail, Tutanota, etc
supported?</a></li>
<li><a href="#faq130">(130) What does message error … mean?</a></li>
<li><a href="#faq131">(131) Can you change the direction for swiping to
previous/next message?</a></li>
<li><a href="#faq132">(132) Why are new message notifications
silent?</a></li>
<li><a href="#faq133">(133) Why is ActiveSync ™ not supported?</a></li>
<li><a href="#faq134">(134) Can you add leave messages on the
server?</a></li>
<li><a href="#faq135">(135) Why are trashed messages and drafts shown in
conversations?</a></li>
<li><a href="#faq136">(136) How can I delete an
account/identity/folder?</a></li>
<li><a href="#faq137">(137) How can I reset Dont ask again?</a></li>
<li><a href="#faq138">(138) Can you add calendar/contact/tasks/notes
management?</a></li>
<li><a href="#faq139">(139) How do I fix User is authenticated but not
connected?</a></li>
<li><a href="#faq140">(140) Why does the message text contain strange
characters?</a></li>
<li><a href="#faq141">(141) How can I fix A drafts folder is required
to send messages?</a></li>
<li><a href="#faq142">(142) How can I store sent messages in the
inbox?</a></li>
<li><a href="#faq143"><del>(143) Can you add a trash folder for POP3
accounts?</del></a></li>
<li><a href="#faq144">(144) How can I record voice notes?</a></li>
<li><a href="#faq145">(145) How can I set a notification sound for an
account, folder, sender or condition?</a></li>
<li><a href="#faq146">(146) How can I fix incorrect message
times?</a></li>
<li><a href="#faq147">(147) What should I know about third party
versions?</a></li>
<li><a href="#faq148">(148) How can I use an Apple iCloud
account?</a></li>
<li><a href="#faq149">(149) How does the unread message count widget
work?</a></li>
<li><a href="#faq150">(150) Can you add cancelling calendar
invites?</a></li>
<li><a href="#faq151">(151) Can you add backup/restore of
messages?</a></li>
<li><a href="#faq152">(152) How can I insert a contact group?</a></li>
<li><a href="#faq153">(153) Why does permanently deleting Gmail message
not work?</a></li>
<li><a href="#faq154"><del>(154) Can you add favicons as contact
photos?</del></a></li>
<li><a href="#faq155">(155) What is a winmail.dat file?</a></li>
<li><a href="#faq156">(156) How can I set up an Office 365
account?</a></li>
<li><a href="#faq157">(157) How can I set up an Free.fr
account?</a></li>
<li><a href="#faq158">(158) Which camera / audio recorder do you
recommend?</a></li>
<li><a href="#faq159">(159) What are Disconnects tracker protection
lists?</a></li>
<li><a href="#faq160">(160) Can you add permanent deletion of messages
without confirmation?</a></li>
<li><a href="#faq161">(161) Can you add a setting to change the primary
and accent color?</a></li>
<li><a href="#faq162">(162) Is IMAP NOTIFY supported?</a></li>
<li><a href="#faq163">(163) What is message classification?</a></li>
<li><a href="#faq164">(164) Can you add customizable themes?</a></li>
<li><a href="#faq165">(165) Is Android Auto supported?</a></li>
<li><a href="#faq166">(166) Can I snooze a message across multiple
devices?</a></li>
<li><a href="#faq167">(167) How can I use DeepL?</a></li>
<li><a href="#faq168">(168) What is a spam block list?</a></li>
<li><a href="#faq169">(169) Why does the app not start
automatically?</a></li>
<li><a href="#faq170">(170) Why cant folders be created with
POP3?</a></li>
<li><a href="#faq171">(171) How can I delete a contact?</a></li>
<li><a href="#faq172">(172) How can I import contacts?</a></li>
<li><a href="#faq173">(173) What is the difference between Play store /
GitHub / F-Droid version?</a></li>
<li><a href="#faq174">(174) Is auto discovery supported?</a></li>
<li><a href="#faq175">(175) Why should battery optimizations be
disabled?</a></li>
<li><a href="#faq176">(176) When will a message be considered safely
transported?</a></li>
<li><a href="#faq177">(177) What does Sensitivity mean?</a></li>
<li><a href="#faq178">(178) Why are widgets not updating?</a></li>
<li><a href="#faq179">(179) What are reply templates?</a></li>
<li><a href="#faq180">(180) How do I use LanguageTool?</a></li>
<li><a href="#faq181">(181) How do I use VirusTotal?</a></li>
<li><a href="#faq182">(182) How can I select how a link should be
opened?</a></li>
<li><a href="#faq183">(183) How do I use Send?</a></li>
<li><a href="#faq184">(184) How do I password protect content?</a></li>
<li><a href="#faq185">(185) Can I install FairEmail on Windows?</a></li>
<li><a href="#faq186">(186) How can I let the app auto store iCalendar
invitations?</a></li>
<li><a href="#faq187">(187) Are colored stars synchronized across
devices?</a></li>
<li><a href="#faq188">(188) Why is Google backup disabled?</a></li>
<li><a href="#faq189">(189) What is cloud sync?</a></li>
<li><a href="#faq190">(190) How do I use OpenAI (ChatGPT)?</a></li>
<li><a href="#faq191">(191) How do I download and keep older messages on
my device?</a></li>
<li><a href="#faq192">(192) How can I resolve Couldnt connect to host,
port: …; timeout …; ?</a></li>
<li><a href="#faq193">(193) How can I import Outlook contacts?</a></li>
<li><a href="#faq194">(194) How can I set up automatic deletion of old
messages?</a></li>
<li><a href="#faq195">(195) Why are all messages in the archive folder
of Gmail?</a></li>
<li><a href="#faq196">(196) Can you add empty trash on leaving the
app?</a></li>
<li><a href="#faq197">(197) How can I print a message?</a></li>
<li><a href="#faq198">(198) Can you add spell checking?</a></li>
<li><a href="#faq199">(199) Can you add proxy support?</a></li>
<li><a href="#faq200">(200) How can I use Adguard to remove tracking
parameters?</a></li>
<li><a href="#faq201">(201) What is certificate transparency?</a></li>
<li><a href="#faq202">(202) What is DNSSEC and what is DANE?</a></li>
</ul>
<p><a href="#get-support">I have another question.</a></p>
<p><a name="faq1"></a> <strong>(1) Which permissions are needed and
why?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq1">Google
Translate</a></p>
<p>The following Android permissions are <strong>required</strong>:</p>
<ul>
<li><em>have full network access</em> (INTERNET): to send and receive
via the internet</li>
<li><em>view network connections</em> (ACCESS_NETWORK_STATE): to monitor
connectivity changes (mobile data, WiFi)</li>
<li><em>run at startup</em> (RECEIVE_BOOT_COMPLETED): to start sending
and receiving on device start</li>
<li><em>run foreground service</em> (FOREGROUND_SERVICE/DATA_SYNC): to
run a foreground service on Android 9 Pie and later, see also the next
question</li>
<li><em>schedule exact alarm</em> (SCHEDULE_EXACT_ALARM): to use exact
alarm scheduling (Android 12 and later), for example to snooze
messages</li>
<li><em>prevent device from sleeping</em> (WAKE_LOCK): to keep the
device awake while performing actions, like synchronization of
messages</li>
<li><em>use fingerprint hardware</em> (USE_FINGERPRINT) and <em>use
biometric hardware</em> (USE_BIOMETRIC): to use biometric authentication
(fingerprint, face unlock, etc)</li>
<li><em>ask to ingore battery optimizations</em>
(REQUEST_IGNORE_BATTERY_OPTIMIZATIONS): to disable battery
optimizations, please see <a href="#faq175">this FAQ</a> for more
information</li>
<li><em>allow the app to show notifications</em> (POST_NOTIFICATIONS):
to show new message notifications and (account) warnings and errors
(Android 13 and later only)</li>
<li><em>Google Play (in-app) billing service</em> (BILLING): for in-app
purchases</li>
</ul>
<p><br /></p>
<p>The following Android permissions are <strong>optional</strong>:</p>
<ul>
<li><em>read your contacts</em> (READ_CONTACTS): to auto complete
addresses, to show contact photos and <a
href="https://developer.android.com/guide/components/intents-common#PickContactDat">to
pick contacts</a></li>
<li><em>find accounts on the device</em> (GET_ACCOUNTS): to select an
account when using the Gmail quick setup</li>
<li><em>read the contents of your shared storage (SD card)</em>
(READ_EXTERNAL_STORAGE): to accept files from other, outdated apps, see
also <a href="#faq49">this FAQ</a></li>
<li>Android 5.1 Lollipop and before: <em>use accounts on the device</em>
(USE_CREDENTIALS): to select an account when using the Gmail quick setup
(not requested on later Android versions)</li>
<li>Android 5.1 Lollipop and before: <em>Read profile</em>
(READ_PROFILE): to read your name when using the Gmail quick setup (not
requested on later Android versions)</li>
<li>GitHub version only: <em>read and write calendar data</em>
(READ_CALENDAR/WRITE_CALENDAR): to <a href="#faq186">auto-store
invitations</a></li>
</ul>
<p><a
href="https://developer.android.com/training/permissions/requesting">Optional
permissions</a> are supported on Android 6 Marshmallow and later only.
On earlier Android versions you will be asked to grant the permissions
on installing FairEmail.</p>
<p><br /></p>
<p>The following permissions are needed to show the count of unread
messages as a badge (see also <a href="#faq106">this FAQ</a>):</p>
<ul>
<li><em>com.sec.android.provider.badge.permission.READ</em></li>
<li><em>com.sec.android.provider.badge.permission.WRITE</em></li>
<li><em>com.htc.launcher.permission.READ_SETTINGS</em></li>
<li><em>com.htc.launcher.permission.UPDATE_SHORTCUT</em></li>
<li><em>com.sonyericsson.home.permission.BROADCAST_BADGE</em></li>
<li><em>com.sonymobile.home.permission.PROVIDER_INSERT_BADGE</em></li>
<li><em>com.anddoes.launcher.permission.UPDATE_COUNT</em></li>
<li><em>com.majeur.launcher.permission.UPDATE_BADGE</em></li>
<li><em>com.huawei.android.launcher.permission.CHANGE_BADGE</em></li>
<li><em>com.huawei.android.launcher.permission.READ_SETTINGS</em></li>
<li><em>com.huawei.android.launcher.permission.WRITE_SETTINGS</em></li>
<li><em>android.permission.READ_APP_BADGE</em></li>
<li><em>com.oppo.launcher.permission.READ_SETTINGS</em></li>
<li><em>com.oppo.launcher.permission.WRITE_SETTINGS</em></li>
<li><em>me.everything.badger.permission.BADGE_COUNT_READ</em></li>
<li><em>me.everything.badger.permission.BADGE_COUNT_WRITE</em></li>
<li><em>com.vivo.notification.permission.BADGE_ICON</em></li>
</ul>
<p><br /></p>
<p>FairEmail will keep a list of addresses you receive messages from and
send messages to and will use this list for contact suggestions when no
contacts permissions is granted to FairEmail. This means you can use
FairEmail without the Android contacts provider (address book). Note
that you can still pick contacts without granting contacts permissions
to FairEmail, only suggesting contacts wont work without contacts
permissions.</p>
<p><br /></p>
<p><a name="faq2"></a> <strong>(2) Why is there a permanent notification
shown?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq2">Google
Translate</a></p>
<p><em>If you came here by clicking on the “monitoring” notification,
you should know that the next click will open the unified
inbox.</em></p>
<p>To reliably receive messages in the background the app needs to start
a service, which will let Android display a status bar notification
notifying you about potential battery usage.</p>
<p>The service cant be started without a notification and the app cant
disable the notification either. However, you can disable the
notification yourself, without side effects, via the notification
settings of FairEmail:</p>
<ul>
<li>Android 8 Oreo and later: tap the <em>Monitoring channel</em> button
and disable the channel via the Android settings (this wont disable new
message notifications)</li>
<li>Android 7 Nougat and before: enabled <em>Use background service to
synchronize messages</em>, but be sure to read the remark below the
setting first</li>
</ul>
<p>You can also switch to periodically synchronization of messages in
the receive settings to remove the notification, but be aware that this
might use more battery power. See <a href="#faq39">here</a> for more
details about battery usage.</p>
<p>Android 8 Oreo might also show a status bar notification with the
text <em>Apps are running in the background</em>. Please see <a
href="https://www.reddit.com/r/Android/comments/7vw7l4/psa_turn_off_background_apps_notification/">here</a>
about how you can disable this notification.</p>
<p><em>Background</em></p>
<p>The service is a <a
href="https://developer.android.com/reference/android/app/Service.html#startForeground(int,%20android.app.Notification)">foreground
service</a> and is needed to prevent Android from stopping the service
when the device is sleeping (<a
href="https://developer.android.com/training/monitoring-device-state/doze-standby">doze
mode</a>).</p>
<p>Most, if not all, other email apps dont show a notification with a
“side effect” that new messages are often not or late being reported and
that messages are not or late being sent.</p>
<p>Some other email apps download all your messages to their servers
first and push messages via <a
href="https://firebase.google.com/docs/cloud-messaging/">Firebase Cloud
Messaging</a> to your device. For your privacy this is not a nice
solution …</p>
<p><br /></p>
<p><a name="faq3"></a> <strong>(3) What are operations and why are they
pending?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq3">Google
Translate</a></p>
<p>The low priority status bar notification shows the number of pending
operations, which can be:</p>
<ul>
<li><em>add</em>: add message to remote folder</li>
<li><em>move</em>: move message to another remote folder</li>
<li><em>copy</em>: copy message to another remote folder</li>
<li><em>fetch</em>: fetch changed (pushed) message</li>
<li><em>delete</em>: delete message from remote folder</li>
<li><em>seen</em>: mark message as read/unread in remote folder</li>
<li><em>answered</em>: mark message as answered in remote folder</li>
<li><em>flag</em>: add/remove star in remote folder</li>
<li><em>keyword</em>: add/remove IMAP flag in remote folder</li>
<li><em>label</em>: set/reset Gmail label in remote folder</li>
<li><em>headers</em>: download message headers</li>
<li><em>raw</em>: download raw message</li>
<li><em>body</em>: download message text</li>
<li><em>attachment</em>: download attachment</li>
<li><em>detach</em>: delete attachment</li>
<li><em>sync</em>: synchronize local and remote messages</li>
<li><em>subscribe</em>: subscribe to remote folder</li>
<li><em>purge</em>: delete all messages from remote folder</li>
<li><em>send</em>: send message</li>
<li><em>exists</em>: check if message exists</li>
<li><em>rule</em>: execute rule on body text</li>
<li><em>expunge</em>: permanently delete messages</li>
<li><em>report</em>: process delivery or read receipt
(experimental)</li>
</ul>
<p>Operations are processed only when there is a connection to the email
server or when manually synchronizing. See also <a href="#faq16">this
FAQ</a>.</p>
<p><br /></p>
<p><a name="faq4"></a> <strong>(4) How can I use an invalid security
certificate / empty password / plain text connection?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq4">Google
Translate</a></p>
<p><strong>Since version 1.2137: Due to <a
href="https://support.google.com/faqs/answer/6346016">Googles Play
Store policies</a>, it is no longer possible to support insecure
connections to email servers with certificate issues for the version of
FairEmail distributed in the Play Store. Therefore, this issue can only
be resolved by your email provider, or by installing the GitHub version
of the app (as an update) and enabling insecure connections in the
account/identity settings.</strong></p>
<p><em>… Untrusted … not in certificate …</em><br /> <em>… Invalid
security certificate (Cant verify identity of server) …</em><br />
<em>… Chain validation failed … timestamp check failed … Certificate
expired at …</em><br /></p>
<p>This can be caused by using an incorrect host name, so first double
check the host name in the advanced identity/account settings (tap
<em>Manual setup and account options</em>). Please see the documentation
of the email provider about the right host name. Sometimes the right
host name is in the error message.</p>
<p>You should try to fix this by contacting your provider or by getting
a valid security certificate because invalid security certificates are
insecure and allow <a
href="https://en.wikipedia.org/wiki/Man-in-the-middle_attack">man-in-the-middle
attacks</a>. If money is an obstacle, you can get free security
certificates from <a href="https://letsencrypt.org">Lets
Encrypt</a>.</p>
<p>The quick, but unsafe solution (not advised), is to enable
<em>Insecure connections</em> in the advanced identity settings
(navigation menu, tap <em>Settings</em>, tap <em>Manual setup</em>, tap
<em>Identities</em>, tap the identity, tap <em>Advanced</em>).</p>
<p>Alternatively, you can accept the fingerprint of invalid server
certificates like this:</p>
<ol type="1">
<li>Make sure you are using a trusted internet connection (no public
Wi-Fi networks, etc)</li>
<li>Go to the setup screen via the navigation menu (swipe from the left
side inwards)</li>
<li>Tap Manual setup, tap Accounts/Identities and tap the faulty account
and identity</li>
<li>Check/save the account and identity</li>
<li>Tick the checkbox below the error message and save again</li>
</ol>
<p>This will “pin” the server certificate to prevent man-in-the-middle
attacks.</p>
<p>Note that older Android versions might not recognize newer
certification authorities like Lets Encrypt causing connections to be
considered insecure, see also <a
href="https://developer.android.com/training/articles/security-ssl">here</a>.</p>
<p><br /></p>
<p><em>Trust anchor for certification path not found</em></p>
<p><em>… java.security.cert.CertPathValidatorException: Trust anchor for
certification path not found …</em> means that the default Android trust
manager was not able to verify the server certificate chain.</p>
<p>This could be due to the root certificate not being installed on your
device or because intermediate certificates are missing, for example
because the email server didnt send them.</p>
<p>You can fix the first problem by downloading and installing the root
certificate from the website of the provider of the certificate.</p>
<p>The second problem should be fixed by changing the server
configuration or by importing the intermediate certificates on your
device.</p>
<p>You can pin the certificate too, see above.</p>
<p><br /></p>
<p><em>Empty password</em></p>
<p>Your username is likely easily guessed, so this is pretty insecure,
unless the SMTP server is available via a restricted local network or a
VPN only.</p>
<p><em>Plain text connection</em></p>
<p>Your username and password and all messages will be sent and received
unencrypted, which is <strong>very insecure</strong> because a <a
href="https://en.wikipedia.org/wiki/Man-in-the-middle_attack">man-in-the-middle
attack</a> is very simple on an unencrypted connection.</p>
<p>If you still want to use an invalid security certificate, an empty
password or a plain text connection youll need to enable insecure
connections in the account and/or identity settings. STARTTLS should be
selected for plain text connections. If you enable insecure connections,
you should connect via private, trusted networks only and never via
public networks, like offered in hotels, airports, etc.</p>
<p><br /></p>
<p><a name="faq5"></a> <strong>(5) How can I customize the message
view?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq5">Google
Translate</a></p>
<p>In the three dot overflow menu you can enable or disable or
select:</p>
<ul>
<li><em>text size</em>: for three different font sizes</li>
<li><em>compact view</em>: for more condensed message items and a
smaller message text font</li>
</ul>
<p>In the display section of the settings you can enable or disable for
example:</p>
<ul>
<li><em>Unified inbox</em>: to disable the unified inbox and to list the
folders selected for the unified inbox instead</li>
<li><em>Tabular style</em>: to show a linear list instead of cards</li>
<li><em>Group by date</em>: show date header above messages with the
same date</li>
<li><em>Conversation threading</em>: to disable conversation threading
and to show individual messages instead</li>
<li><em>Conversation action bar</em>: to disable the bottom navigation
bar</li>
<li><em>Highlight color</em>: to select a color for the sender of unread
messages</li>
<li><em>Show contact photos</em>: to hide contact photos</li>
<li><em>Show names and email addresses</em>: to show names or to show
names and email addresses</li>
<li><em>Show subject italic</em>: to show the message subject as normal
text</li>
<li><em>Show stars</em>: to hide stars (favorites)</li>
<li><em>Show message preview</em>: to show 1-4 lines of the message
text</li>
<li><em>Show address details by default</em>: to expand the addresses
section by default</li>
<li><em>Automatically show original message for known contacts</em>: to
automatically show original messages for contacts on your device, please
read <a href="#faq35">this FAQ</a></li>
<li><em>Automatically show images for known contacts</em>: to
automatically show images for contacts on your device, please read <a
href="#faq35">this FAQ</a></li>
</ul>
<p>Note that messages can be previewed only when the message text was
downloaded. Larger message texts are not downloaded by default on
metered (generally mobile) networks. You can change this in the
connection settings.</p>
<p>Some people ask:</p>
<ul>
<li>to show the subject bold, but bold is already being used to
highlight unread messages</li>
<li>to move the star to the left, but it is much easier to operate the
star on the right side</li>
</ul>
<p><br /></p>
<p><a name="faq6"></a> <strong>(6) How can I login to Gmail / G
suite?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq6">Google
Translate</a></p>
<p><strong>FairEmail fully supports OAuth through the quick setup wizard
and will continue to work after May 30, please see below what to do if
you used your account password to set up an account.</strong></p>
<blockquote>
<p><strong>Important: using your <em>account</em> password <a
href="https://support.google.com/accounts/answer/6010255">wont be
possible anymore from May 30, 2022</a>.</strong></p>
<p><em>To help keep your account secure, starting May 30, 2022, Google
will no longer support the use of third-party apps or devices which ask
you to sign in to your Google Account using only your username and
password.</em></p>
<p>✔ If you authorized your Gmail account with the quick setup wizard or
manually with an app password, your account will keep being synchronized
after May 30, 2022.</p>
<p>❌ If you enabled <em>Less secure apps</em> in the Google account
settings and authorized your Gmail account manually with your normal
account password, your account cant be synchronized from May 30, 2022
anymore. The app will show the error <strong>Invalid credentials
(Failure)</strong>.</p>
<p>How to check:</p>
<ul>
<li>Go to the <em>Settings</em> via the navigation menu (left side
menu)</li>
<li>Tap on <em>Manual setup and account options</em></li>
<li>Tap on <em>Accounts</em></li>
<li>Find the account in the list</li>
<li>If there is a shield icon before the account name (=OAuth), the
account will keep working</li>
</ul>
<p>How to fix:</p>
<ul>
<li>Go to the <em>Settings</em> via the navigation menu (left side
menu)</li>
<li>Tap on the <em>Wizard</em> button and select <em>Gmail
(OAuth)</em></li>
<li>Tick the checkbox to authenticate an existing account (else youll
create a new account!)</li>
<li>Fill in the fields and follow the steps</li>
<li>Repeat for each account</li>
</ul>
<p>Note that this wont work on devices without Google Play
Store/Services, such as recent Huawei devices. In this case you will
need to use an app password, see below.</p>
<p><strong>Note that other email apps, possibly on other devices, which
still use your account password could cause your account to be
blocked!</strong></p>
</blockquote>
<p>If you use the Play store or GitHub version of FairEmail, you can use
the quick setup wizard to easily setup a Gmail account and identity. The
Gmail quick setup wizard is not available for third party builds, like
the F-Droid build because Google approved the use of OAuth for official
builds only. OAuth is also not available on devices without Google
services, such as recent Huawei devices, in which case selecting an
account will fail.</p>
<p>The Gmail quick setup wizard wont work if the Android account
manager doesnt work or doesnt support Google accounts, which is
typically the case if the account selection is being <em>canceled</em>
right away.</p>
<p>If you dont want to use or cant use an on-device Google account,
for example on recent Huawei devices, you can <del>either enable access
for “less secure apps” and use your account password (not advised)</del>
or enable two factor authentication and use an app specific password. To
use a password you can use the quick setup wizard and select <em>Other
provider</em>.</p>
<p><strong>Important</strong>: sometimes Google issues this alert:</p>
<p><em>[ALERT] Please log in via your web browser:
https://support.google.com/mail/accounts/answer/78754 (Failure)</em></p>
<p>This Google security check is triggered more often with <em>less
secure apps</em> enabled, less with an app password, and hardly when
using an on-device account (OAuth). You might see the error <em>OAUTH2
asked for more</em>, which basically says the connection is temporarily
blocked, until you confirm it is you.</p>
<p>Note that an app specific password is required when two factor
authentication is enabled. After enabling two factor authentication
there will be this error message:</p>
<p><em>[ALERT] Application-specific password required:
https://support.google.com/mail/accounts/answer/185833
(Failure)</em></p>
<p>The error message “<em>Authentication failed - Invalid
credentials</em>” or <em>Token refresh required</em> means that the
Android account manager was not able to refresh the access token, or
that getting an access token was not allowed, for example when the
account is a <a
href="https://support.google.com/families/answer/7101025">Family
Link</a> account, in which case you can use the Gmail app only. A common
cause for this problem is using a VPN, a firewall app or an ad blocker
which blocks internet access for the Android account manager. Please
make sure permissions were granted to the app via setup step 2. You can
try to workaround this issue by using the quick setup wizard <em>Gmail
(Oauth)</em> or by using an app password.</p>
<p><br /></p>
<p><a name="faq6-app"></a></p>
<p><em>App specific password</em></p>
<p>See <a
href="https://support.google.com/accounts/answer/185833">here</a> about
how to generate an app specific password.</p>
<p>To configure a new Gmail account with an app password, please tap on
the wizard button in the main settings screen and select <em>Other
provider</em> (not Gmail!) and follow the steps (paste the app password
in the password field).</p>
<p>To configure an existing Gmail account with an app password, please
tap on <em>Manual setup and account options</em> in the main settings
screen, tap on <em>Accounts</em>, tap on the account and tap on the
pencil icon after the password and select <em>Switch to password
authentication</em> and paste the app password.</p>
<p><br /></p>
<p><del><em>Enable “Less secure apps”</em></del></p>
<p><del><strong>Important</strong>: using this method is not recommended
because it is less reliable.</del></p>
<p><del><strong>Important</strong>: Gsuite accounts authorized with a
username/password will stop working <a
href="https://gsuiteupdates.googleblog.com/2019/12/less-secure-apps-oauth-google-username-password-incorrect.html">in
the near future</a>.</del></p>
<p><del>See <a
href="https://support.google.com/accounts/answer/6010255">here</a> about
how to enable “less secure apps”</del> <del>or go <a
href="https://www.google.com/settings/security/lesssecureapps">directy
to the setting</a>.</del></p>
<p><del>If you use multiple Gmail accounts, make sure you change the
“less secure apps” setting of the right account(s).</del></p>
<p><del>Be aware that you need to leave the “less secure apps” settings
screen by using the back arrow to apply the setting.</del></p>
<p><del>If you use this method, you should use a <a
href="https://en.wikipedia.org/wiki/Password_strength">strong
password</a> for your Gmail account, which is a good idea anyway.</del>
<del>Note that using the <a
href="https://tools.ietf.org/html/rfc3501">standard</a> IMAP protocol in
itself is not less secure.</del></p>
<p><del>When “less secure apps” is not enabled,</del> <del>youll get
the error <em>Authentication failed - invalid credentials</em> for
accounts (IMAP)</del> <del>and <em>Username and Password not
accepted</em> for identities (SMTP).</del></p>
<p><br /></p>
<p><em>General</em></p>
<p>You might get the alert “<em>Please log in via your web
browser</em>”. This happens when Google considers the network that
connects you to the internet (this could be a VPN) to be unsafe. This
can be prevented by using the Gmail quick setup wizard or an app
specific password.</p>
<p>See <a href="https://support.google.com/mail/answer/7126229">here</a>
for Googles instructions and <a
href="https://support.google.com/mail/accounts/answer/78754">here</a>
for troubleshooting.</p>
<p><br /></p>
<p><a name="faq7"></a> <strong>(7) Why are sent messages not appearing
(directly) in the sent folder?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq7">Google
Translate</a></p>
<p>Sent messages are normally moved from the outbox to the sent folder
as soon as your provider adds sent messages to the sent folder. This
requires a sent folder to be selected in the account settings and the
sent folder to be set to synchronizing.</p>
<p>Some providers do not keep track of sent messages or the used SMTP
server might not be related to the provider. In these cases FairEmail,
will automatically add sent messages to the sent folder on synchronizing
the sent folder, which will happen after a message have been sent. Note
that this will result in extra internet traffic.</p>
<p><del>If this doesnt happen, your provider might not keep track of
sent messages or you might be using an SMTP server not related to the
provider.</del> <del>In these cases you can enable the advanced identity
setting <em>Store sent messages</em> to let FairEmail add sent messages
to the sent folder right after sending a message.</del> <del>Note that
enabling this setting might result in duplicate messages if your
provider adds sent messages to the sent folder too.</del> <del>Also
beware that enabling this setting will result in extra data usage,
especially when when sending messages with large attachments.</del></p>
<p><del>If sent messages in the outbox are not found in the sent folder
on a full synchronize, they will be moved from the outbox to the sent
folder too.</del> <del>A full synchronize happens when reconnecting to
the server or when synchronizing periodically or manually.</del>
<del>Youll likely want to enable the advanced setting <em>Store sent
messages</em> instead to move messages to the sent folder
sooner.</del></p>
<p><br /></p>
<p><a name="faq8"></a> <strong>(8) Can I use a Microsoft Exchange
account?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq8">Google
Translate</a></p>
<p>Firstly, Exchange <em>protocol</em> (EWS) is not the same as Exchange
<em>server</em> or Exchange <em>account</em>.</p>
<p>The Microsoft Exchange Web Services ™ (EWS) protocol <a
href="https://techcommunity.microsoft.com/t5/Exchange-Team-Blog/Upcoming-changes-to-Exchange-Web-Services-EWS-API-for-Office-365/ba-p/608055">is
being phased out</a>. Microsoft stopped updating the EWS libraries <a
href="https://github.com/OfficeDev/ews-java-api">in 2016</a>. So, it
makes little sense to add this protocol anymore. Moreover, Microsoft
announced that <a
href="https://techcommunity.microsoft.com/t5/exchange-team-blog/retirement-of-exchange-web-services-in-exchange-online/ba-p/3924440">EWS
will be retired on October 1, 2026</a>. Please dont leave a bad review
for this. This cannot be added because Microsoft no longer provides the
tools for this!</p>
<p>You can use a Microsoft Exchange account if it is accessible via
IMAP, which is almost always the case because all Exchange servers
support the standard IMAP protocol. See <a
href="https://support.office.com/en-us/article/what-is-a-microsoft-exchange-account-47f000aa-c2bf-48ac-9bc2-83e5c6036793">here</a>
for more information.</p>
<p>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.</p>
<p>Please see <a
href="https://support.office.com/en-us/article/pop-imap-and-smtp-settings-for-outlook-com-d088b986-291d-42b8-9564-9c414e2aa040">here</a>
for the Microsoft documentation about configuring an email client. There
is also a section about common connection errors and solutions.</p>
<p>Some older Exchange server versions have a bug causing empty message
and corrupt attachments. Please see <a href="#faq110">this FAQ</a> for a
workaround.</p>
<p>Please see <a href="#faq133">this FAQ</a> about ActiveSync ™
support.</p>
<p>Please see <a href="#faq111">this FAQ</a> about OAuth support.</p>
<p><br /></p>
<p><a name="faq9"></a> <strong>(9) What are identities / how do I add an
alias / configure a default CC or BCC address?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq9">Google
Translate</a></p>
<p>Identities represent email addresses you are sending <em>from</em>
via an email (SMTP) server.</p>
<p>Some providers allow you to have multiple aliases. The easiest way to
create an alias is to copy the main identity, and change the email
address and perhaps the (display) name. You should not change the
username! For this, please go to the settings via the navigation menu
(left side menu), tap on <em>Manual setup and account options</em>, tap
on <em>Identities</em>, long press the main identity, and select to copy
it.</p>
<p><strong>In many cases, an alias address must first be verified via
the website of the mail provider</strong></p>
<p>Alternatively, you can enable <em>Allow editing sender address</em>
in the advanced settings of an existing identity to edit the username
when composing a new message, if your provider allows this. Considering
the email address test@example.org you can use these special username
formats:</p>
<ul>
<li><em>+extra</em>” will result in the email address
<em>test+extra@example.org</em></li>
<li><em><span class="citation" data-cites="extra">@extra</span></em>
will result in the email address “<em>test@extra.example.org</em></li>
<li><em>Some name, username</em>” will result in the email address
<em>Some name, &lt;username@example.org&gt;</em>” (since version
1.2032)</li>
</ul>
<p>You can configure a default CC or BCC address in the advanced
identity settings.</p>
<p>FairEmail will automatically update the passwords of related
identities when you update the password of the associated account or a
related identity.</p>
<p>See <a href="#faq33">this FAQ</a> on editing the username of email
addresses.</p>
<p><br /></p>
<p><a name="faq10"></a> <strong><del>(10) What does UIDPLUS not
supported mean?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq10">Google
Translate</a></p>
<p><del>The error message <em>UIDPLUS not supported</em> means that your
email provider does not provide the IMAP <a
href="https://tools.ietf.org/html/rfc4315">UIDPLUS extension</a>. This
IMAP extension is required to implement two way synchronization, which
is not an optional feature. So, unless your provider can enable this
extension, you cannot use FairEmail for this provider.</del></p>
<p><br /></p>
<p><a name="faq11"></a> <strong><del>(11) Why is POP not
supported?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq11">Google
Translate</a></p>
<p>POP3 is supported!</p>
<p><del>Besides that any decent email provider supports <a
href="https://en.wikipedia.org/wiki/Internet_Message_Access_Protocol">IMAP</a>
these days,</del> <del>using <a
href="https://en.wikipedia.org/wiki/Post_Office_Protocol">POP</a> will
result in unnecessary extra battery usage and delayed new message
notifications.</del> <del>Moreover, POP is unsuitable for two way
synchronization and more often than not people read and write messages
on different devices these days.</del></p>
<p><del>Basically, POP supports only downloading and deleting messages
from the inbox.</del> <del>So, common operations like setting message
attributes (read, starred, answered, etc), adding (backing up) and
moving messages is not possible.</del></p>
<p><del>See also <a
href="https://support.google.com/mail/answer/7104828">what Google writes
about it</a>.</del></p>
<p><del>For example <a
href="https://support.google.com/mail/answer/21289">Gmail can import
messages</a> from another POP account,</del> <del>which can be used as a
workaround for when your provider doesnt support IMAP.</del></p>
<p><del>tl;dr; consider to switch to IMAP.</del></p>
<p><br /></p>
<p><a name="faq12"></a> <strong>(12) How does encryption/decryption
work?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq12">Google
Translate</a></p>
<p>Communication with email servers is always encrypted, unless you
explicitly turned this off. This question is about optional end-to-end
encryption with PGP or S/MIME. The sender and recipient should first
agree on this and exchange signed messages to transfer their public key
to be able to send encrypted messages.</p>
<p><br /></p>
<p><em>General</em></p>
<p>Please <a
href="https://en.wikipedia.org/wiki/Public-key_cryptography">see
here</a> about how public/private key encryption works.</p>
<p>Encryption in short:</p>
<ul>
<li><strong>Outgoing</strong> messages are encrypted with the
<strong>public key</strong> of the recipient</li>
<li><strong>Incoming</strong> messages are decrypted with the
<strong>private key</strong> of the recipient</li>
</ul>
<p>Signing in short:</p>
<ul>
<li><strong>Outgoing</strong> messages are signed with the
<strong>private key</strong> of the sender</li>
<li><strong>Incoming</strong> messages are verified with the
<strong>public key</strong> of the sender</li>
</ul>
<p>To sign/encrypt a message, just select the appropriate method in the
send dialog. The simplest way to show the send dialog (again) is to long
press the <em>Send</em> button in the bottom action bar. It might be
necessary to disable signing/encryption with the padlock icon in the top
action bar first, to prevent the select key dialog, etc. from being in
the way. The encryption method will be remembered for the selected
identity (at the top of the message editor).</p>
<p>To verify a signature or to decrypt a received message, open the
message and just tap the gesture or padlock icon just below the message
action bar.</p>
<p>The first time you send a signed/encrypted message, you might be
asked for a sign key. FairEmail will automatically store the selected
sign key in the used identity for the next time. If you need to reset
the sign key, just save the identity or long press the identity in the
list of identities and select <em>Reset sign key</em>. The selected sign
key is visible in the list of identities. If need to select a key on a
case by case basis, you can create multiple identities for the same
account with the same email address.</p>
<p>In the encryption settings, you can select the default encryption
method (PGP or S/MIME), enable <em>Sign by default</em>, <em>Encrypt by
default</em> and <em>Automatically decrypt messages</em>, but be aware
that automatic decryption is not possible if user interaction is
required, like selecting a key or reading a security token.</p>
<p>The to be encrypted message text/attachments and the decrypted
message text/attachments are stored locally only and will never be added
to the remote server. If you want to undo decryption, you can tap on the
“close” padlock icon.</p>
<p><br /></p>
<p><em>PGP</em></p>
<p>Youll need to install and configure <a
href="https://f-droid.org/en/packages/org.sufficientlysecure.keychain/">OpenKeychain</a>
first. FairEmail was tested with OpenKeychain version 5.4. Later
versions will most likely be compatible, but earlier versions might not
be.</p>
<p><strong>Important</strong>: the OpenKeychain app is known to
(silently) crash when the calling app (FairEmail) is not authorized yet
and is getting an existing public key. You can workaround this by trying
to send a signed/encrypted message to a sender with an unknown public
key.</p>
<p><strong>Important</strong>: if the OpenKeychain app cannot find a key
(anymore), you might need to reset a previously selected key. This can
be done by long pressing an identity in the list of identities
(Settings, tap Manual setup, tap Identities).</p>
<p><strong>Important</strong>: to let apps like FairEmail reliably
connect to the OpenKeychain service to encrypt/decrypt messages, it
might be necessary to disable battery optimizations for the OpenKeychain
app.</p>
<p><strong>Important</strong>: the OpenKeychain app reportedly needs
contacts permission to work correctly.</p>
<p><strong>Important</strong>: on some Android versions / devices it is
necessary to enable <em>Show popups while running in background</em> in
the additional permissions of the Android app settings of the
OpenKeychain app. Without this permission the draft will be saved, but
the OpenKeychain popup to confirm/select might not appear.</p>
<p>FairEmail will send the <a
href="https://autocrypt.org/">Autocrypt</a> header for use by other
email clients, but only for signed and encrypted messages because too
many email servers have problems with the often long Autocrypt header.
Note that the most secure way to start an encrypted email exchange is by
sending signed messages first. There is an encryption option to send
signed messages by default. Alternatively, this can enabled for a
specific identity in the advanced identity settings. Received Autocrypt
headers will be sent to the OpenKeychain app for storage on verifying a
signature or decrypting a message.</p>
<p>Although this shouldnt be necessary for most email clients, you can
attach your public key to a message and if you use <em>.key</em> as
extension, the mime type will correctly be
<em>application/pgp-keys</em>.</p>
<p>All key handling is delegated to the OpenKey chain app for security
reasons. This also means that FairEmail does not store PGP keys.</p>
<p>Inline encrypted PGP in received messages is supported, but inline
PGP signatures and inline PGP in outgoing messages is not supported, see
<a
href="https://josefsson.org/inline-openpgp-considered-harmful.html">here</a>
about why not.</p>
<p>If you wish to verify a signature manually, check <em>Show inline
attachments</em> and save the files <em>content.asc</em> (the signed
content) and <em>signature.asc</em> (the digital signature). Install <a
href="https://www.gnupg.org/">GnuPG</a> on your preferred operating
system and execute this command:</p>
<p><code>gpg --verify signature.asc.pgp content.asc</code></p>
<p>Signed-only or encrypted-only messages are not a good idea, please
see here about why not:</p>
<ul>
<li><a
href="https://www.openkeychain.org/openpgp-considerations-part-i">OpenPGP
Considerations Part I</a></li>
<li><a
href="https://www.openkeychain.org/openpgp-considerations-part-ii">OpenPGP
Considerations Part II</a></li>
<li><a
href="https://www.openkeychain.org/openpgp-considerations-part-iii-autocrypt">OpenPGP
Considerations Part III Autocrypt</a></li>
</ul>
<p>Signed-only messages are supported, and encrypted-only messages are
supported since version 1.2053.</p>
<p>Common errors:</p>
<ul>
<li><em>No key</em>: there is no PGP key available for one of the listed
email addresses</li>
<li><em>No key found!</em>: the PGP key stored in the identity probably
doesnt exist anymore. Resetting the key (see above) will probably fix
this problem.</li>
<li><em>Missing key for encryption</em>: there is probably a key
selected in FairEmail that does not exist in the OpenKeychain app
anymore. Resetting the key (see above) will probably fix this
problem.</li>
<li><em>Key for signature verification is missing</em>: the public key
for the sender is not available in the OpenKeychain app. This can also
be caused by Autocrypt being disabled in the encryption settings or by
the Autocrypt header not being sent.</li>
<li><em>OpenPgp error 0: null</em> / <em>OpenPgp error 0: General
error</em>: please check the key in the OpenKeychain app and make sure
there are no conflicting identities for the key and make sure the email
address exactly matches the key, including lower/upper case. Also, make
sure the key can be used to sign/encrypt and isnt for
encrypting/signing only.</li>
<li><em>OpenPgp error 0: Encountered an error reading input data!</em>:
your public key has the <a
href="https://en.wikipedia.org/wiki/Authenticated_encryption">AEAD</a>
flag set, but the message was encrypted in the older MDC (Modification
Detection Code) mode by the sender. For example the Posteo email server
does this erroneously. Workaround: <a
href="https://github.com/keybase/keybase-issues/issues/4025#issuecomment-853933127">remove
the AEAD flag</a> from the key.</li>
</ul>
<p><strong>Important</strong>: if <em>Dont keep activities</em> is
enabled in the Android developer options, FairEmail and the OpenKeychain
app cannot run at the same time, causing PGP operations to fail. If
needed, please <a
href="https://developer.android.com/studio/debug/dev-options#enable">see
here</a> about how to enable the developer options.</p>
<p><strong>Important</strong>: Android 8.1.0 on Tecno CF8 Camon 11 Pro
devices blocks communication between apps with the message
<em>AutoStart limited</em>” in the system logcat. So, FairEmail (or any
other app) cant communicate with the OpenKeychain app.</p>
<p><br /></p>
<p><em>S/MIME</em></p>
<p>Encrypting a message requires the public key(s) of the recipient(s).
Signing a message requires your private key.</p>
<p>Private keys are stored by Android and can be imported via the
Android advanced security settings (Encryption &amp; credentials,
Install a certificate, VPN &amp; app user certificate). There is a
shortcut (button) for this in the encryption settings for Android
version 10 and before. Android will ask you to set a PIN, pattern, or
password if you didnt before. If you have a Nokia device with Android
9, please <a
href="https://nokiamob.net/2019/08/10/a-bug-prevents-nokia-1-owners-from-unlocking-their-screen-even-with-right-pin-pattern/">read
this first</a>.</p>
<p><strong>Important</strong>: If Android doesnt accept the password of
a certificate, it probably means it doesnt support the certificates
encryption method. The solution is to convert the certificate like
this:</p>
<pre><code>openssl pkcs12 -nodes &lt;your.p12 &gt;certbag.pem
openssl pkcs12 -export -legacy -in certbag.pem &gt;legacy.p12</code></pre>
<p>Note that .p12 and .pfx are interchangeable. You can find more
information about this issue <a
href="https://stackoverflow.com/questions/71872900/installing-pcks12-certificate-in-android-wrong-password-bug">here</a></p>
<p><br></p>
<p>Note that certificates can contains multiple keys for multiple
purposes, for example for authentication, encryption and signing.
Android only imports the first key, so to import all the keys, the
certificate must first be split. This is not very trivial and you are
advised to ask the certificate supplier for support.</p>
<p>If you renewed a certificate, you should import the renewed
certificate and reset the key. This can be done by long pressing an
identity in the list of identities (Settings, tap Manual setup, tap
Identities).</p>
<p>Note that S/MIME signing with other algorithms than RSA is supported,
but be aware that other email clients might not support this. S/MIME
encryption is possible with asymmetric algorithms only, which means in
practice using RSA.</p>
<p>The default encryption method is PGP, but the last used encryption
method will be remembered for the selected identity for the next time.
You can long press on the send button to change the encryption method
for an identity. If you use both PGP and S/MIME encryption for the same
email address, it might be useful to copy the identity, so you can
change the encryption method by selecting one of the two identities. You
can long press an identity in the list of identities (via manual setup
in the main setup screen) to copy an identity.</p>
<p>To allow different private keys for the same email address, FairEmail
will always let you select a key when there are multiple identities with
the same email address for the same account.</p>
<p>Public keys are stored by FairEmail and can be imported when
verifying a signature for the first time or via the encryption settings
(PEM or DER format).</p>
<p>FairEmail verifies both the signature and the complete certificate
chain.</p>
<p>Common errors:</p>
<ul>
<li><em>No certificate found matching targetContraints</em>: this likely
means you are using an old version of FairEmail</li>
<li><em>unable to find valid certification path to requested
target</em>: basically this means one or more intermediate or root
certificates were not found</li>
<li><em>Private key does not match any encryption keys</em>: the
selected key cannot be used to decrypt the message, probably because it
is the incorrect key</li>
<li><em>No private key</em>: no certificate was selected or no
certificate was available in the Android keystore</li>
<li><em>Memory allocation failed</em>: Android supports keys up to 4096
bits only (Android <a
href="https://issuetracker.google.com/issues/199605614">issue
199605614</a>)</li>
<li><em>message-digest attribute value does not match calculated
value</em>: the signature doesnt match the message, possibly because
the message was changed, or because an incorrect or key was used</li>
</ul>
<p>In case the certificate chain is incorrect, you can tap on the little
info button to show the all certificates. After the certificate details
the issuer or “selfSign” is shown. A certificate is self signed when the
subject and the issuer are the same. Certificates from a certificate
authority (CA) are marked with “<a
href="https://tools.ietf.org/html/rfc5280#section-4.2.1.3">keyCertSign</a>”.
Certificates found in the Android key store are marked with
“Android”.</p>
<p>A valid chain looks like this:</p>
<pre><code>Your certificate &gt; zero or more intermediate certificates &gt; CA (root) certificate marked with &quot;Android&quot;</code></pre>
<p>Note that a certificate chain will always be invalid when no anchor
certificate can be found in the Android key store, which is fundamental
to S/MIME certificate validation.</p>
<p>Please see <a
href="https://support.google.com/pixelphone/answer/2844832?hl=en">here</a>
how you can import certificates into the Android key store.</p>
<p>The use of expired keys, inline encrypted/signed messages and
hardware security tokens is not supported.</p>
<p>If you are looking for a free (test) S/MIME certificate, see <a
href="http://kb.mozillazine.org/Getting_an_SMIME_certificate">here</a>
for the options. Please be sure to <a
href="https://davidroessli.com/logs/2019/09/free-smime-certificates-in-2019/#update20191219">read
this first</a> if you want to request an S/MIME Actalis certificate.</p>
<p>S/MIME certificates can for example be purchased via <a
href="https://www.xolphin.com/">Xolphin</a>.</p>
<p>How to extract a public key from a S/MIME certificate:</p>
<pre><code>openssl pkcs12 -in filename.pfx/p12 -clcerts -nokeys -out cert.pem</code></pre>
<p>You can verify the signature of a raw message file (EML file) like
this:</p>
<pre><code>openssl smime -verify &lt;xxx.eml</code></pre>
<p>You can decode S/MIME signatures, etc, <a
href="https://lapo.it/asn1js/">here</a>.</p>
<p><br /></p>
<p><em>pretty Easy privacy</em></p>
<p>There is still <a
href="https://tools.ietf.org/id/draft-birk-pep-00.html">no approved
standard</a> for pretty Easy privacy (p≡p) and not many people are using
it.</p>
<p>However, FairEmail can send and receive PGP encrypted messages, which
are compatible with p≡p. Also, FairEmail understands incoming p≡p
messages since version 1.1519, so the encrypted subject will be shown
and the embedded message text will be shown more nicely.</p>
<p><br /></p>
<p>S/MIME sign/encrypt is a pro feature, but all other PGP and S/MIME
operations are free to use.</p>
<p><br /></p>
<p><a name="faq13"></a> <strong>(13) How does search on device/server
work?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq13">Google
Translate</a></p>
<p>You can start searching for messages on sender (from), recipient (to,
cc, bcc), subject, keywords or message text by using the magnify glass
in the action bar of a folder. You can also search from any app by
selecting <em>Search email</em> in the copy/paste popup menu.</p>
<p>Searching in the unified inbox will search in all folders of all
accounts, searching in the folder list will search in the associated
account only and searching in a folder will search in that folder
only.</p>
<p>Messages will be searched for on the device first. You can download
more messages on the device via the three-dots overflow menu in the
start screen. There will be an action button with a search again icon at
the bottom to continue searching on the server. You can select in which
folder to continue the search.</p>
<p>The IMAP protocol doesnt support searching in more than one folder
at the same time. Searching on the server is an expensive operation,
therefore it is not possible to select multiple folders.</p>
<p>The POP3 protocol doesnt support searching on the server at all.</p>
<p>Searching local messages is case insensitive and on partial text. The
message text of local messages will not be searched if the message text
was not downloaded yet. Searching on the server might be case sensitive
or case insensitive and might be on partial text or whole words,
depending on the provider.</p>
<p>Some servers cannot handle searching in the message text when there
are a large number of messages. For this case there is an option to
disable searching in the message text. Since version 1.1888 a popup
message will be shown and the search will automatically be retried
without searching in the message text.</p>
<p>It is possible to use Gmail search operators by prefixing a search
command with <em>raw:</em>. If you configured just one Gmail account,
you can start a raw search directly on the server by searching from the
unified inbox. If you configured multiple Gmail accounts, youll first
need to navigate to the folder list or the archive (all messages) folder
of the Gmail account you want to search in. Please <a
href="https://support.google.com/mail/answer/7190">see here</a> for the
possible search operators. For example:</p>
<p><code>raw:larger:10M</code></p>
<p>Searching through a large number of messages on the device is not
very fast because of two limitations:</p>
<ul>
<li><a href="https://www.sqlite.org/">sqlite</a>, the database engine of
Android has a record size limit, preventing message texts from being
stored in the database</li>
<li>Android apps get only limited memory to work with, even if the
device has plenty memory available</li>
</ul>
<p>This means that searching for a message text requires that files
containing the message texts need to be opened one by one to check if
the searched text is contained in the file, which is a relatively
expensive process.</p>
<p>In the <em>miscellaneous settings</em> you can enable <em>Build
search index</em> to significantly increase the speed of searching on
the device, but be aware that this will increase battery and storage
space usage. The search index is based on words in all message parts, so
searching for partial text and searching in specific messages parts
(from, subject, text, etc) is not possible.</p>
<p>Note that only messages for which the message text was downloaded
will be indexed. In the connection settings can be configured up to
which size messages texts will be downloaded automatically when using a
metered connection (generally mobile data or paid WiFi). In the folder
properties (long press on a folder in the folder list of an account)
downloading of messages texts can be enabled/disabled.</p>
<p>Searching using the search index is by default AND, so searching for
<em>apple orange</em> will search for apple AND orange. Words separated
by commas result in searching for OR, so for example <em>apple,
orange</em> will search for apple OR orange. Both can be combined, so
searching for <em>apple, orange banana</em> will search for apple OR
(orange AND banana). Using the search index is a pro feature.</p>
<p>Since version 1.1315 it is possible to use search expressions like
this:</p>
<pre><code>apple +banana -cherry ?nuts</code></pre>
<p>This will result in searching in the subject or text (only) like
this:</p>
<pre><code>(&quot;apple&quot; AND &quot;banana&quot; AND NOT &quot;cherry&quot;) OR &quot;nuts&quot;</code></pre>
<p>Since version 1.1980 it is possible to use these prefixes as a search
expression:</p>
<pre><code>from:&lt;email address&gt;
to:&lt;email address&gt;
cc:&lt;email address&gt;
bcc:&lt;email address&gt;
keyword:&lt;keyword&gt;</code></pre>
<p>There should be no space between the prefix and the search term,
which will be applied as an AND-condition.</p>
<p>Only AND conditions (+) and NOT conditions (-) can be used for
on-device searching (since version 1.1981). If you try to use other
search expressions, you get the error <em>Select a folder for a complex
search</em>, which means that a folder in an accounts folder list must
be selected in order to perform the search on the server.</p>
<p>Since version 1.1733 it is possible to save searches, which means
that a named entry in the navigation menu will be created to repeat the
same search later. You can save a search after searching by tapping on
the save button in the top action bar. After repeating a search there
will be a delete button at the same place to delete a saved search
again. A saved search might be useful to quickly search for starred
messages, or for messages from a specific email address, etc.</p>
<p>Using the search index is a pro feature.</p>
<p><br /></p>
<p><a name="faq14"></a> <strong>(14) How can I set up an Outlook / Live
/ Hotmail account?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq14">Google
Translate</a></p>
<blockquote>
<p><strong>Important</strong>: Basic Authentication (=password
authentication) <a
href="https://techcommunity.microsoft.com/t5/exchange-team-blog/basic-authentication-deprecation-in-exchange-online-may-2022/ba-p/3301866">will
be turned off from October 1, 2022</a>.</p>
<p>✔ If you authorized your Outlook/Office 365 account with the quick
setup wizard, your account will keep being synchronized after October 1,
2022.</p>
<p>❌ If you authorized your Outlook/Office 365 account manually with a
password, your account cant be synchronized from October 1, 2022
anymore.</p>
<p>How to check:</p>
<ul>
<li>Go to the <em>Settings</em> via the navigation menu (left side
menu)</li>
<li>Tap on <em>Manual setup and account options</em></li>
<li>Tap on <em>Accounts</em></li>
<li>Find the account in the list</li>
<li>If there is a shield icon before the account name (=OAuth), the
account will keep working</li>
</ul>
<p>How to fix:</p>
<ul>
<li>Go to the <em>Settings</em> via the navigation menu (left side
menu)</li>
<li>Tap on the <em>Wizard</em> button and select <em>Outlook/Office365
(OAuth)</em></li>
<li>Tick the checkbox to authenticate an existing account (else youll
create a new account!)</li>
<li>Fill in the fields and follow the steps</li>
<li>Repeat for each account</li>
</ul>
</blockquote>
<p>An Outlook / Live / Hotmail account can be set up via the quick setup
wizard and selecting <em>Outlook/Office 365</em>.</p>
<p><strong>Important</strong>: a personal and a business account can
have the same email address, but have different mailboxes (folders). So,
please make sure you select the right option.</p>
<p>Microsoft said “<em>We have turned off SMTP AUTH for millions of
tenants not using it</em>”, which can result in this error message:</p>
<pre><code>535 5.7.139 Authentication unsuccessful, SmtpClientAuthentication is disabled for the Tenant.
Visit https://aka.ms/smtp_auth_disabled for more information.</code></pre>
<p>SMTP AUTH is necessary for third party email clients, which is also
documented in <a href="https://aka.ms/smtp_auth_disabled">the referenced
article</a>. So, basically this means that Microsoft is pushing you to
their own products. Isnt this a bit of a monopoly?</p>
<p>To use an Outlook, Live or Hotmail account with two factor
authentication enabled, you might need to create an app password. See <a
href="https://support.microsoft.com/en-us/help/12409/microsoft-account-app-passwords-two-step-verification">here</a>
for the details.</p>
<p>See <a
href="https://support.office.com/en-us/article/pop-imap-and-smtp-settings-for-outlook-com-d088b986-291d-42b8-9564-9c414e2aa040">here</a>
for Microsofts instructions.</p>
<p>Please see <a href="#faq139">this FAQ</a> for possible causes of the
error <em>… User is authenticated but not connected …</em>.</p>
<p>For unknown reasons, some Outlook/Hotmail accounts cannot send
messages because of the server error <em>535 5.7.3 Authentication
unsuccessful</em>. This can be resolved by authenticating the account
with an (app) password (see above) instead of with OAuth. You should use
the “<em>Other provider</em>” wizard instead of “<em>Outlook / Office
365 (OAuth)</em>” in this case.</p>
<p>For setting up an Office 365 account, please see <a
href="#faq156">this FAQ</a>.</p>
<p><br /></p>
<p><a name="faq15"></a> <strong>(15) Why does the message text keep
loading?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq15">Google
Translate</a></p>
<p>The message header and message body are fetched separately from the
server. The message text of larger messages is not being pre-fetched on
metered connections and will be fetched on demand on expanding a
message. The message text will keep loading if there is no connection to
the account, see also the next question, or if there other operations,
like synchronizing messages, are being executed.</p>
<p>You can check the account and folder list for the account and folder
state (see the legend for the meaning of the icons) and the operation
list accessible via the main navigation menu for pending operations (see
<a href="#faq3">this FAQ</a> for the meaning of the operations).</p>
<p>If FairEmail is holding off because of prior connectivity issues,
please see <a href="#faq123">this FAQ</a>, you can force synchronization
via the three dots menu.</p>
<p>In the receive settings you can set the maximum size for
automatically downloading of messages on metered connections.</p>
<p>Mobile connections are almost always metered and some (paid) Wi-Fi
hotspots are too.</p>
<p><br /></p>
<p><a name="faq16"></a> <strong>(16) Why are messages not being
synchronized?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq16">Google
Translate</a></p>
<p>Possible causes of messages not being synchronized (sent or received)
are:</p>
<ul>
<li>The account or folder(s) are not set to synchronize</li>
<li>The number of days to synchronize message for is set too low</li>
<li>There is no usable internet connection</li>
<li>The email server is temporarily not available</li>
<li>Battery optimizations were not disable via setup step 3</li>
<li>Android stopped the synchronization service</li>
<li>A memory management app stopped the synchronization service</li>
</ul>
<p>So, check your account and folder settings and check if the
accounts/folders are connected (see the legend in the navigation menu
for the meaning of the icons).</p>
<p>If there are any error messages, please see <a href="#faq22">this
FAQ</a>.</p>
<p>On some devices, where there are lots of applications competing for
memory, Android may stop the synchronization service as a last
resort.</p>
<p>Some Android versions, especially those of Samsung, OnePlus, Huawei
and Xiaomi, stop apps and services too aggressively. See <a
href="https://dontkillmyapp.com/">this dedicated website</a><em>Dont
kill my app</em>” for solutions, and <a
href="https://issuetracker.google.com/issues/122098785">this Android
issue</a> (requires logging in with a Google account) for more
information.</p>
<p>If you have a Doogee device, please <a
href="https://android.stackexchange.com/questions/214639/background-apps-get-killed-by-something-other-than-battery-optimization">see
here</a>.</p>
<p>Disabling battery optimizations (setup step 3) reduces the chance
Android will stop the synchronization service.</p>
<p>In case of successive connection errors, FairEmail will hold off
increasingly longer to not drain the battery of your device. This is
described in <a href="#faq123">this FAQ</a>.</p>
<p><br /></p>
<p><a name="faq17"></a> <strong><del>(17) Why does manual synchronize
not work?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq17">Google
Translate</a></p>
<p><del>If the <em>Synchronize now</em> menu is dimmed, there is no
connection to the account.</del></p>
<p><del>See the previous question for more information.</del></p>
<p><br /></p>
<p><a name="faq18"></a> <strong>(18) Why is the message preview not
always shown?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq18">Google
Translate</a></p>
<p>The preview of the message text cannot be shown if the message body
has not been downloaded yet. See also <a href="#faq15">this FAQ</a>.</p>
<p><br /></p>
<p><a name="faq19"></a> <strong>(19) Why are the pro features so
expensive?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq19">Google
Translate</a></p>
<p><strong>FairEmail is basically free to use</strong> and only some
advanced features need to be purchased.</p>
<p><strong>FairEmail ist grundsätzlich kostenlos</strong> und nur einige
erweiterte Funktionen müssen gekauft werden.</p>
<p><strong>FairEmail est au fond gratuit</strong> et seulement quelques
fonctionnalités avancées doivent être achetés.</p>
<p>Please see the Play store description of the app or <a
href="https://email.faircode.eu/#pro">see here</a> for a complete list
of pro features.</p>
<p>The right question is “<em>why are there so many taxes and
fees?</em>”:</p>
<ul>
<li>VAT: 25 % (depending on your country)</li>
<li>Google fee: 15-30 %</li>
<li>Income tax: 50 %</li>
<li><sub>Paypal fee: 5-10 % depending on the country/amount</sub></li>
</ul>
<p>So, what is left for the developer is just a fraction of what you
pay.</p>
<p>Also note that most free apps will appear not to be sustainable in
the end, whereas FairEmail is properly maintained and supported, and
that free apps may have a catch, like sending privacy sensitive
information to the internet. There are no privacy violating ads in the
app either.</p>
<p>I have been working on FairEmail almost every day for more than four
years, so I think the price is more than reasonable. For this reason
there wont be discounts either.</p>
<p><br /></p>
<p><a name="faq20"></a> <strong>(20) Can I get a refund?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq20">Google
Translate</a></p>
<p>If a purchased pro feature doesnt work as intended and this isnt
caused by a problem in the free features and I cannot fix the problem in
a timely manner, you can get a refund. In all other cases there is no
refund possible. In no circumstances there is a refund possible for any
problem related to the free features, since there wasnt paid anything
for them and because they can be evaluated without any limitation. I
take my responsibility as seller to deliver what has been promised and I
expect that you take responsibility for informing yourself of what you
are buying.</p>
<p><a name="faq21"></a> <strong>(21) How do I enable the notification
light?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq21">Google
Translate</a></p>
<p>Before Android 8 Oreo: there is an advanced option in the
notification settings of the app for this.</p>
<p>Android 8 Oreo and later: please see <a
href="https://developer.android.com/training/notify-user/channels">here</a>
about how to configure notification channels. You can use the button
<em>Default channel</em> in the notification settings of the app to
directly go to the right Android notification channel settings.</p>
<p>Note that apps cannot change notification settings, including the
notification light setting, on Android 8 Oreo and later anymore.</p>
<p>Sometimes it is necessary to disable the setting <em>Show message
preview in notifications</em> or to enable the settings <em>Show
notifications with a preview text only</em> to workaround bugs in
Android. This might apply to notification sounds and vibrations too.</p>
<p>Setting a light color before Android 8 is not supported and on
Android 8 and later not possible.</p>
<p>Some apps create a notification channel for each selectable color and
let you (indirectly) select these channels when selecting a color. Since
FairEmail uses notification channels for configurable notification
properties for accounts, folders and senders (<a href="#faq145">see this
FAQ</a>), this is not a feasible solution for FairEmail because it would
result in an unmanageable number of notification channels.</p>
<p><br /></p>
<p><a name="faq22"></a> <strong>(22) What does account/folder error …
mean?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq22">Google
Translate</a></p>
<p>FairEmail does not hide errors like similar apps often do, so it is
easier to diagnose problems.</p>
<p>FairEmail will automatically try to connect again after a delay. This
delay will be doubled after each failed attempt to prevent draining the
battery and to prevent from being locked out permanently. Please see <a
href="#faq123">this FAQ</a> for more information about this.</p>
<p>There are general errors and errors specific to Gmail accounts (see
below).</p>
<p><strong>General errors</strong></p>
<p><a name="authfailed"></a> The error <em><strong>Authentication
failed</strong></em> or <em>… AUTHENTICATE failed …</em> likely means
that your username or password was incorrect. Some providers expect as
username just <em>username</em> and others your full email address
<em>username@example.com</em>. When copying/pasting to enter a username
or password, invisible characters might be copied, which could cause
this problem as well. Some password managers are known to do this
incorrectly too. The username might be case sensitive, so try lowercase
characters only. The password is almost always case sensitive. Some
providers require using an app password instead of the account password,
so please check the documentation of the provider. Sometimes it is
necessary to enable external access (IMAP/SMTP) on the website of the
provider first. Other possible causes are that the account is blocked or
that logging in has been administratively restricted in some way, for
example by allowing to login from certain networks / IP addresses
only.</p>
<ul>
<li><strong>Free.fr</strong>: please see <a href="#faq157">this
FAQ</a></li>
<li><strong>Gmail / G suite</strong>: please see <a href="#faq6">this
FAQ</a></li>
<li><strong>iCloud</strong>: please see <a href="#faq148">this
FAQ</a></li>
<li><strong>Posteo</strong>: please check if <a
href="https://posteo.de/en/help/activating-additional-email-account-protection">additional
email account protection</a> isnt enabled.</li>
<li><strong>Yahoo, AOL and Sky</strong>: please see <a
href="#faq88">this FAQ</a></li>
</ul>
<p>If needed, you can update a password in the account settings:
navigation menu (left side menu), tap <em>Settings</em>, tap <em>Manual
setup</em>, tap <em>Accounts</em> and tap on the account. Changing the
account password will in most cases automatically change the password of
related identities too. If the account was authorized with OAuth via the
quick setup wizard instead of with a password, you can run the quick
setup wizard again and tick <em>Authorize existing account again</em> to
authenticate the account again. Note that this requires a recent version
of the app.</p>
<p>The error <em>… Too many bad auth attempts …</em> likely means that
you are using a Yahoo account password instead of an app password.
Please see <a href="#faq88">this FAQ</a> about how to set up a Yahoo
account.</p>
<p>The message <em>… +OK …</em> likely means that a POP3 port (usually
port number 995) is being used for an IMAP account (usually port number
993).</p>
<p>The errors <em>… invalid greeting …</em>, <em>… requires valid
address …</em> and <em>… Parameter to HELO does not conform to RFC
syntax …</em> can likely be solved by changing the advanced identity
setting <em>Use local IP address instead of host name</em>.</p>
<p>The error <em>… Couldnt connect to host …</em> means that there was
no response from the email server within a reasonable time (20 seconds
by default). Mostly this indicates internet connectivity issues,
possibly caused by a VPN or by a firewall app. You can try to increase
the connection timeout in the connection settings of FairEmail, for when
the email server is really slow. Some devices have a firewall, which you
can access like this:</p>
<p>Android <em>Settings, Data usage, Three-dots overflow menu, Data
usage control</em></p>
<p>The error <em>… Connection refused …</em> (ECONNREFUSED) means that
the email server or something between the email server and the app, like
a firewall, actively refused the connection.</p>
<p>The error <em>… Network unreachable …</em> means that the email
server was not reachable via the current internet connection, for
example because internet traffic is restricted to local traffic
only.</p>
<p>The error <em>… Host is unresolved …</em>, <em>… Unable to resolve
host …</em> or <em>… No address associated with hostname …
android_getaddrinfo failed: EAI_NODATA</em> means that the address of
the email server could not be resolved into an IP address. This might be
caused by a VPN, ad blocking or an unreachable or not properly working
(local) <a
href="https://en.wikipedia.org/wiki/Domain_Name_System">DNS</a> server.
An incorrect Android private DNS network setting can cause this too.</p>
<p>The error <em>… Software caused connection abort …</em> means that
the email server or something between FairEmail and the email server
actively terminated an existing connection. This can for example happen
when connectivity was abruptly lost. A typical example is turning on
flight mode.</p>
<p>The errors <em>… BYE Logging out …</em>, <em>… Connection reset
</em> mean that the email server or something between the email server
and the app, for example a router or a firewall (app), actively
terminated an existing connection.</p>
<p>The error <em>… Connection closed by peer …</em> means that the email
server actively closed the connection. This might be caused by a not
updated Exchange server, see <a
href="https://blogs.technet.microsoft.com/pki/2010/09/30/sha2-and-windows/">here</a>
for more information.</p>
<p>The errors <em>… Read error …</em> (sometimes combined with
<em>BAD_DECRYPT</em> / <em>DECRYPTION_FAILED_OR_BAD_RECORD_MAC</em>),
<em>… Write error …</em>, <em>… Read timed out …</em>, <em>… Broken pipe
</em> mean that the email server is not responding anymore or that the
internet connection is bad.</p>
<p><a name="connectiondropped"></a> The error <em>… Connection dropped
by server? …</em> means that the email server unexpectedly terminated
the connection. This sometimes happen when there were too many
(simultaneous) connections in a too short time or when a wrong password
was used too often. In this case, please make sure your password is
correct and disable receiving in the receive settings for about 30
minutes and try again. If needed, see <a href="#faq23">this FAQ</a>
about how you can reduce the number of connections.</p>
<p>The error <em>… Unexpected end of zlib input stream …</em> means that
not all data was received, possibly due to a bad or interrupted
connection.</p>
<p>The error <em>… connection failure …</em> could indicate <a
href="#faq23">Too many simultaneous connections</a>.</p>
<p>The warning <em>… Unsupported encoding …</em> means that the
character set of the message is unknown or not supported. FairEmail will
assume ISO-8859-1 (Latin1), which will in most cases result in showing
the message correctly.</p>
<p>The error <em>… Login Rate Limit Hit …</em> means that there were too
many login attempts with an incorrect password. Please double check your
password or authenticate the account again with the quick setup wizard
(OAuth only).</p>
<p>The error <em>… NO mailbox selected READ-ONLY …</em> indicates <a
href="https://sebastian.marsching.com/wiki/Network/Zimbra#Mailbox_Selected_READ-ONLY_Error_in_Thunderbird">this
Zimbra problem</a>.</p>
<p>The Outlook specific error <em>… Command Error. 10 …</em> probably
means that the OAuth token expired or was invalidated. Authenticating
the account again with the quick setup wizard will probably resolve this
condition. Another possible cause is a bug in an older Exchange version,
please <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=886261">see
here</a>. In this case the system administrator needs to update the
server software.</p>
<p>Please <a href="#faq4">see here</a> for the errors <em>… Untrusted …
not in certificate …</em>, <em>… Invalid security certificate (Cant
verify identity of server) …</em> or <em>… Trust anchor for
certification path not found …</em></p>
<p>Please <a href="#faq127">see here</a> for the error <em>
Syntactically invalid HELO argument(s) …</em>.</p>
<p>Please <a href="#faq41">see here</a> for the error <em>… Handshake
failed …</em>.</p>
<p>See <a href="https://linux.die.net/man/3/connect">here</a> for what
error codes like EHOSTUNREACH and ETIMEDOUT mean.</p>
<p>The error <em>… connect failed: EACCES (Permission denied) …</em>
means that <em>Restrict data usage</em> was disabled in the Android MIUI
app settings for FairEmail. On Samsung, and possible other devices, also
check: Android settings &gt; Battery &gt; Battery manager / Unmonitored
apps.</p>
<p>Possible causes are:</p>
<ul>
<li>A firewall or router is blocking connections to the server</li>
<li>The host name or port number is invalid</li>
<li>There are problems with the internet connection</li>
<li>There are problems with resolving domain names (Yandex: try to
disable private DNS in the Android settings)</li>
<li>The email server is refusing to accept (external) connections</li>
<li>The email server is refusing to accept a message, for example
because it is too large or contains unacceptable links</li>
<li>There are too many connections to the server, see also the next
question</li>
</ul>
<p>Many public Wi-Fi networks block outgoing email to prevent spam.
Sometimes you can workaround this by using another SMTP port. See the
documentation of the provider for the usable port numbers.</p>
<p>If you are using a <a
href="https://en.wikipedia.org/wiki/Virtual_private_network">VPN</a>,
the VPN provider might block the connection because it is too
aggressively trying to prevent spam. Similarly, the email server might
block connections via a VPN because it was misused for sending spam.
Some VPN providers have “cleaner” IP addresses than others, so switching
to another VPN provider might be useful. Note that <a
href="https://fi.google.com/">Google Fi</a> is using a VPN too.</p>
<p>The error <em>You must use stronger authentication such as AUTH or
APOP to connect to this server</em> can be fixed by enabling debug mode
(last option in the miscellaneous settings tab page), and in the debug
panel that appears enabling the APOP option. After that, debug mode can
be disabled again.</p>
<p><strong>Send errors</strong></p>
<p>SMTP servers can reject messages for <a
href="https://en.wikipedia.org/wiki/List_of_SMTP_server_return_codes">a
variety of reasons</a>. Too large messages and triggering the spam
filter of an email server are the most common reasons.</p>
<ul>
<li>The error <em>… Socket is closed …</em> might be caused by sending a
too large message / attachments</li>
<li>The attachment size limit for Gmail <a
href="https://support.google.com/mail/answer/6584">is 25 MB</a></li>
<li>The attachment size limit for Outlook and Office 365 <a
href="https://support.microsoft.com/en-us/help/2813269/attachment-size-exceeds-the-allowable-limit-error-when-you-add-a-large">is
20 MB</a></li>
<li>The attachment size limit for Yahoo <a
href="https://help.yahoo.com/kb/SLN5673.html">is 25 MB</a></li>
<li><em>554 5.7.1 Service unavailable; Client host xxx.xxx.xxx.xxx
blocked</em>, please <a
href="https://docs.gandi.net/en/gandimail/faq/error_types/554_5_7_1_service_unavailable.html">see
here</a></li>
<li><em>501 Syntax error - line too long</em> is often caused by using a
long Autocrypt header</li>
<li><em>503 5.5.0 Recipient already specified</em> mostly means that an
address is being used both as TO and CC address</li>
<li><em>554 5.7.1 … not permitted to relay</em> means that the email
server does not recognize the username/email address. Please double
check the host name and username/email address in the identity
settings.</li>
<li><em>550 Spam message rejected because IP is listed by …</em> means
that the email server rejected to send a message from the current
(public) network address because it was misused to send spam by
(hopefully) somebody else before. Please try to enable flight mode for
10 minutes to acquire a new network address.</li>
<li><em>550 Were sorry, but we cant send your email. Either the
subject matter, a link, or an attachment potentially contains spam, or
phishing or malware.</em> means that the email provider considers an
outgoing message as harmful.</li>
<li><em>550 …</em>, <a
href="https://www.crazydomains.com.au/help/550-blocked-error-explained/">see
here</a> for a list of possible causes</li>
<li><em>571 5.7.1 Message contains spam or virus or sender is blocked
</em> means that the email server considered an outgoing message as
spam. This probably means that the spam filters of the email server are
too strict. Youll need to contact the email provider for support on
this.</li>
<li><em>451 4.7.0 Temporary server error. Please try again later. PRX4
</em> indicates a server configuration problem, please <a
href="https://www.limilabs.com/blog/office365-temporary-server-error-please-try-again-later-prx4">see
here</a> or <a
href="https://judeperera.wordpress.com/2019/10/11/fixing-451-4-7-0-temporary-server-error-please-try-again-later-prx4/">see
here</a>.</li>
<li><em>451 4.7.0 Temporary server error. Please try again later. PRX5
</em> indicates a server configuration problem, please <a
href="https://www.limilabs.com/qa/4471/451-4-7-0-temporary-server-error-please-try-again-later-prx5">see
here</a></li>
<li><em>571 5.7.1 Relay access denied</em>: please double check the
username and email address in the advanced identity settings (via the
manual setup).</li>
<li>Please <a href="https://support.google.com/a/answer/3726730">see
here</a> for more information and other SMTP error codes</li>
</ul>
<p>If you want to use the Gmail SMTP server to workaround a too strict
outgoing spam filter or to improve delivery of messages:</p>
<ul>
<li>Verify your email address <a
href="https://mail.google.com/mail/u/0/#settings/accounts">here</a>
(youll need to use a desktop browser for this)</li>
<li>Change the identity settings like this (Settings, tap Manual setup,
tap Identities, tap identity):</li>
</ul>
<p>Username: <em>your Gmail address</em><br /> Password: <em><a
href="#faq6">an app password</a></em><br /> Host:
<em>smtp.gmail.com</em><br /> Port: <em>465</em><br /> Encryption:
<em>SSL/TLS</em><br /> Reply to address: <em>your email address</em>
(advanced identity settings)<br /></p>
<p><br /></p>
<p><strong>Gmail errors</strong></p>
<p>The authorization of Gmail accounts setup with the quick wizard needs
to be periodically refreshed via the <a
href="https://developer.android.com/reference/android/accounts/AccountManager">Android
account manager</a>. This requires contact/account permissions and
internet connectivity.</p>
<p>In case of errors it is possible to authorize/restore a Gmail account
again via the Gmail quick setup wizard.</p>
<p>The error <em>… Authentication failed … Account not found …</em>
means that a previously authorized Gmail account was removed from the
device.</p>
<p>The errors <em>… Authentication failed … No token …</em> means that
the Android account manager failed to refresh the authorization of a
Gmail account.</p>
<p>The error <em>… Authentication failed … network error …</em> means
that the Android account manager was not able to refresh the
authorization of a Gmail account due to problems with the internet
connection</p>
<p>The error <em>… Authentication failed … Invalid credentials …</em>
could be caused by changing the account password or by having revoked
the required account/contacts permissions. In case the account password
was changed, youll need to authenticate the Google account in the
Android account settings again. In case the permissions were revoked,
you can start the Gmail quick setup wizard to grant the required
permissions again (you dont need to setup the account again).</p>
<p>The eror <em>… ServiceDisabled …</em> might be caused by enrolling in
the <a href="https://landing.google.com/advancedprotection/">Advanced
Protection Program</a>: “<em>To read your email, you can (must) use
Gmail - You wont be able to use your Google Account with some (all)
apps &amp; services that require access to sensitive data like your
emails</em>”, see <a
href="https://support.google.com/accounts/answer/7519408?hl=en&amp;ref_topic=9264881">here</a>.</p>
<p>The error <em>… 334 … OAUTH2 asked for more …</em> probably means
that the account needs to be authorized again, which you can do with the
quick setup wizard in the settings.</p>
<p>When in doubt, you can ask for <a
href="#get-support">support</a>.</p>
<p><br /></p>
<p><a name="faq23"></a> <strong>(23) Why do I get alert …?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq23">Google
Translate</a></p>
<p><em>General</em></p>
<p>Alerts are warning messages sent by email servers.</p>
<p><em>Too many simultaneous connections</em> or <em>Maximum number of
connections exceeded</em></p>
<p>This alert will be sent when there are too many folder connections
for the same email account at the same time.</p>
<p>Possible causes are:</p>
<ul>
<li>There are multiple email clients connected to the same account</li>
<li>The same email client is connected multiple times to the same
account</li>
<li>Previous connections were terminated abruptly for example by
abruptly losing internet connectivity</li>
</ul>
<p>First try to wait some time to see if the problem resolves itself,
else:</p>
<ul>
<li>either switch to periodically checking for messages in the receive
settings, which will result in opening folders one at a time</li>
<li>or set some folders to poll instead of synchronize (long press
folder in the folder list, edit properties)</li>
</ul>
<p>An easy way to configure periodically checking for messages for all
folders except the inbox is to use <em>Apply to all …</em> in the
three-dots menu of the folder list and to tick the bottom two advanced
checkboxes.</p>
<p>The maximum number of simultaneous folder connections for Gmail is
15, so you can synchronize at most 15 folders simultaneously on
<em>all</em> your devices at the same time. For this reason Gmail
<em>user</em> folders are set to poll by default instead of synchronize
always. When needed or desired, you can change this by long pressing a
folder in the folder list and selecting <em>Edit properties</em>. See <a
href="https://support.google.com/mail/answer/7126229">here</a> for
details.</p>
<p>When using a Dovecot server, you might want to change the setting <a
href="https://doc.dovecot.org/settings/dovecot_core_settings/#mail-max-userip-connections">mail_max_userip_connections</a>.</p>
<p>Note that it will take the email server a while to discover broken
connections, for example due to going out of range of a network, which
means that effectively only half of the folder connections are
available. For Gmail this would be just 7 connections.</p>
<p><br /></p>
<p><a name="faq24"></a> <strong>(24) What is browse messages on the
server?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq24">Google
Translate</a></p>
<p>Browse messages on the server will fetch messages from the email
server in real time when you reach the end of the list of synchronized
messages, even when the folder is set to not synchronize. You can
disable this feature in the advanced account settings.</p>
<p><br /></p>
<p><a name="faq25"></a> <strong>(25) Why cant I select/open/save an
image, attachment or a file?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq25">Google
Translate</a></p>
<p>When a menu item to select/open/save a file is disabled (dimmed) or
when you get the message <em>Storage access framework not
available</em>, the <a
href="https://developer.android.com/guide/topics/providers/document-provider">storage
access framework</a>, a standard Android component, is probably not
present. This might be because your custom ROM does not include it or
because it was actively removed (debloated).</p>
<p>FairEmail does not request storage permissions, so this framework is
required to select files and folders. No app, except maybe file
managers, targeting Android 4.4 KitKat or later should ask for storage
permissions because it would allow access to <em>all</em> files.
Moreover, recent Android versions disallow access to all files for apps,
except, under specific conditions, for file managers.</p>
<p>The storage access framework is provided by the package
<em>com.android.documentsui</em>, which is visible as <em>Files</em> app
on some Android versions (notably OxygenOS).</p>
<p>You can enable the storage access framework (again) with this adb
command:</p>
<pre><code>pm install -k --user 0 com.android.documentsui</code></pre>
<p>Alternatively, you might be able to enable the <em>Files</em> app
again using the Android app settings.</p>
<p><br /></p>
<p><a name="faq26"></a> <strong>(26) Can I help to translate FairEmail
in my own language?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq26">Google
Translate</a></p>
<p>Yes, you can translate the texts of FairEmail in your own language <a
href="https://crowdin.com/project/open-source-email">on Crowdin</a>.
Registration is free.</p>
<p>If you would like a new language to be added, or your name or alias
to be included in the list of contributors in <em>About</em> the app,
please <a
href="https://contact.faircode.eu/?product=fairemailsupport">contact
me</a>.</p>
<p><br /></p>
<p><a name="faq27"></a> <strong>(27) How can I distinguish between
embedded and external images?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq27">Google
Translate</a></p>
<p>External image:</p>
<p><img alt="External image" src="https://github.com/M66B/FairEmail/blob/master/images/baseline_image_black_48dp.png" width="48" height="48" /></p>
<p>Embedded image:</p>
<p><img alt="Embedded image" src="https://github.com/M66B/FairEmail/blob/master/images/baseline_photo_library_black_48dp.png" width="48" height="48" /></p>
<p>Broken image:</p>
<p><img alt="Broken image" src="https://github.com/M66B/FairEmail/blob/master/images/baseline_broken_image_black_48dp.png" width="48" height="48" /></p>
<p>Note that downloading external images from a remote server can be
used to record you did see a message, which you likely dont want if the
message is spam or malicious.</p>
<p><br /></p>
<p><a name="faq28"></a> <strong>(28) How can I manage status bar
notifications?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq28">Google
Translate</a></p>
<p>In the notification settings youll find a button <em>Manage
notifications</em> to directly navigate to the Android notifications
settings for FairEmail.</p>
<p>On Android 8.0 Oreo and later you can manage the properties of the
individual notification channels, for example to set a specific
notification sound or to show notifications on the lock screen.</p>
<p>FairEmail has the following notification channels:</p>
<ul>
<li>Service: used for the notification of the synchronize service, see
also <a href="#faq2">this FAQ</a></li>
<li>Send: used for the notification of the send service</li>
<li>Notifications: used for new message notifications</li>
<li>Warning: used for warning notifications</li>
<li>Error: used for error notifications</li>
</ul>
<p>See <a
href="https://developer.android.com/guide/topics/ui/notifiers/notifications#ManageChannels">here</a>
for details on notification channels. In short: tap on the notification
channel name to access the channel settings.</p>
<p>On Android before Android 8 Oreo you can set the notification sound
in the settings.</p>
<p>See <a href="#faq21">this FAQ</a> if your device has a notification
light.</p>
<p><br /></p>
<p><a name="faq29"></a> <strong>(29) How can I get new message
notifications for other folders?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq29">Google
Translate</a></p>
<p>Just long press a folder, select <em>Edit properties</em>, and enable
either <em>Show in unified inbox</em> or <em>Notify new messages</em>
(available on Android 7 Nougat and later only) and tap
<em>Save</em>.</p>
<p><br /></p>
<p><a name="faq30"></a> <strong>(30) How can I use the provided quick
settings?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq30">Google
Translate</a></p>
<p>There are quick settings (settings tiles) available to:</p>
<ul>
<li>globally enable/disable synchronization</li>
<li>show the number of new messages and marking them as seen (not
read)</li>
<li>clear all app data</li>
</ul>
<p>Quick settings require Android 7.0 Nougat or later. The usage of
settings tiles is explained <a
href="https://support.google.com/android/answer/9083864">here</a>.</p>
<p>Note that not all devices (manufacturers) support settings tiles, for
example, Rephone doesnt.</p>
<p><br /></p>
<p><a name="faq31"></a> <strong>(31) How can I use the provided
shortcuts?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq31">Google
Translate</a></p>
<p>There are shortcuts available to compose a new message to a favorite
contact.</p>
<p>Shortcuts require Android 7.1 Nougat or later. The usage of shortcuts
is explained <a
href="https://support.google.com/android/answer/2781850">here</a>.</p>
<p>It is also possible to create shortcuts to folders by long pressing a
folder in the folder list of an account and selecting <em>Add
shortcut</em>.</p>
<p><br /></p>
<p><a name="faq32"></a> <strong>(32) How can I check if reading email is
really safe?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq32">Google
Translate</a></p>
<p>You can use the <a href="https://www.emailprivacytester.com/">Email
Privacy Tester</a> for this.</p>
<p><br /></p>
<p><a name="faq33"></a> <strong>(33) Why are edited sender addresses not
working?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq33">Google
Translate</a></p>
<p>Most providers accept validated addresses only when sending messages
to prevent spam.</p>
<p>For example Google modifies the message headers like this for
<em>unverified</em> addresses:</p>
<pre><code>From: Somebody &lt;somebody@example.org&gt;
X-Google-Original-From: Somebody &lt;somebody+extra@example.org&gt;</code></pre>
<p>This means that the edited sender address was automatically replaced
by a verified address before sending the message.</p>
<p>Note that this is independent of receiving messages.</p>
<p><br /></p>
<p><a name="faq34"></a> <strong>(34) How are identities
matched?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq34">Google
Translate</a></p>
<p>Identities are as expected matched by account. For incoming messages
the <em>to</em>, <em>cc</em>, <em>bcc</em>, <em>from</em> and
<em>(X-)delivered/envelope/original-to</em> addresses will be checked
(in this order) and for outgoing messages (drafts, outbox and sent) only
the <em>from</em> addresses will be checked. Equal addresses have
precedence over partially matching addresses, except for
<em>delivered-to</em> addresses.</p>
<p>The matched address will be shown as <em>via</em> in the addresses
section of received messages (between the message header and message
text).</p>
<p>Note that identities need to be enabled to be able to be matched and
that identities of other accounts will not be considered.</p>
<p>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.</p>
<p>It is possible to configure a <a
href="https://en.wikipedia.org/wiki/Regular_expression">regex</a> in the
identity settings to match <strong>the username</strong> of an email
address (the part before the @ sign).</p>
<p>Note that the domain name (the parts after the @ sign) always needs
to be equal to the domain name of the identity. Since version 1.1640 it
is possible to match the full email address with a regex, which can be
useful for matching alias domain names.</p>
<p>If you want to match a catch-all email address, this regex is usually
fine, provided all usernames for the domain are yours:</p>
<pre><code>.*</code></pre>
<p>The username of a message being replied to will be used as the
default username when editing of usernames is enabled in the advanced
identity settings.</p>
<p>Please see <a href="#faq9">this FAQ</a> about editing the email
address when composing a message.</p>
<p>If you want to <em>not</em> match specific addresses, you can use
something like this:</p>
<pre><code>^(?!marcel$|johanna$).*</code></pre>
<p>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:</p>
<ul>
<li>Identity: abc@example.com; regex: <strong>(?i)abc</strong></li>
<li>Identity: xyz@example.com; regex: <strong>(?i)xyz</strong></li>
<li>Identity: main@example.com; regex:
<strong>^(?i)((?!abc|xyz).)*$</strong></li>
</ul>
<p>You can test a regex <a href="https://regexr.com/">here</a>.</p>
<p>Matched identities can be used to color code messages.</p>
<p>The identity color takes precedence over the folder and account
color. This means that the color of the color stripe will be determined
by first checking if there is a color set for the via (matched)
identity, and after that if there is a color set for the folder
containing the message, and finally if there is a color set for the
account the message belongs to.</p>
<p>Setting identity colors is a pro feature.</p>
<p><br /></p>
<p><a name="faq35"></a> <strong>(35) Why should I be careful with
viewing images, attachments, the original message, and opening
links?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq35">Google
Translate</a></p>
<p>Viewing remotely stored images (see also <a href="#faq27">this
FAQ</a>) 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: <a
href="https://security.stackexchange.com/questions/241139/why-emails-link-is-more-dangerous-than-web-searchs-link">Why
emails link is more dangerous than web searchs link?</a>.</p>
<p>This BBC article is worth reading: <a
href="https://www.bbc.com/news/technology-56071437">Spy pixels in emails
have become endemic</a>.</p>
<p>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.</p>
<p>Note that your contacts could unknowingly send malicious messages if
they got infected with malware.</p>
<p>FairEmail formats messages again causing messages to look different
from the original, but also uncovering phishing links.</p>
<p>Note that reformatted messages are often better readable than
original messages because the margins are removed, and font colors and
sizes are standardized.</p>
<p>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 <a
href="https://blog.filippo.io/how-the-new-gmail-image-proxy-works-and-what-this-means-for-you/">in
real-time</a>, this is even less secure because Google is involved too
without providing much benefit.</p>
<p>You can show images and original messages by default for trusted
senders on a case-by-case basis by checking <em>Do not ask this again
for …</em>. You might need to reset the questions via a button in the
miscellaneous settings tab page.</p>
<p><br /></p>
<p><a name="faq36"></a> <strong>(36) How are settings files
encrypted?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq36">Google
Translate</a></p>
<p>Short version: AES 256 bit</p>
<p>Long version:</p>
<p><del><em>Before version 1.1987</em></del></p>
<ul>
<li>A 256 bit key is derived with <em>PBKDF2WithHmacSHA1</em> using a
128 bit secure random salt and 65536 iterations</li>
<li>The used cipher is <em>AES/CBC/PKCS5Padding</em></li>
</ul>
<p><del><em>Since version 1.1987</em></del></p>
<ul>
<li><del>A 256 bit key is derived with <em>PBKDF2WithHmacSHA512</em>
using a 128 bit secure random salt and 120000 iterations</del></li>
<li><del>The used cipher is <em>AES/GCM/NoPadding</em></del></li>
</ul>
<p><br /></p>
<p><a name="faq37"></a> <strong>(37) How are passwords
stored?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq37">Google
Translate</a></p>
<p>All supported Android versions <a
href="https://source.android.com/security/encryption">encrypt all user
data</a>, so all data, including usernames, passwords, messages, etc, is
stored encrypted.</p>
<p>If the device is secured with a PIN, pattern or password, you can
make the account and identity passwords visible. If this is a problem
because you are sharing the device with other people, consider to use <a
href="https://www.howtogeek.com/333484/how-to-set-up-multiple-user-profiles-on-android/">user
profiles</a>.</p>
<p><br /></p>
<p><a name="faq39"></a> <strong>(39) How can I reduce the battery usage
of FairEmail?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq39">Google
Translate</a></p>
<p>Recent Android versions by default report <em>app usage</em> as a
percentage in the Android battery settings screen. <strong>Confusingly,
<em>app usage</em> is not the same as <em>battery usage</em> and is not
even directly related to battery usage!</strong> 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
doesnt mean that FairEmail is constantly using battery power. The real
battery usage can be seen by navigating to this screen:</p>
<p><em>Android settings</em>, <em>Battery</em>, three-dots menu
<em>Battery usage</em>, three-dots menu <em>Show full device
usage</em></p>
<p>Alternatively: tap on the <em>App settings</em> button in the main
settings screen of the app and tap on <em>Battery</em>.</p>
<p>As a rule of thumb, the battery usage should be below or in any case
not be much higher than <em>Mobile network standby</em> for one account
with a stable network connection. If this isnt the case, please turn on
<em>Auto optimize</em> in the receive settings tab page. If this doesnt
help, please <a
href="https://contact.faircode.eu/?product=fairemailsupport">ask for
support</a>.</p>
<p>It is inevitable that synchronizing messages will use battery power
because it requires network access and accessing the messages database.
Since the app needs to wait for responses of the email server, which
requires the processor (CPU) to be active, slower email servers will
result in more battery usage.</p>
<p>If you are comparing the battery usage of FairEmail with another
email client, please make sure the other email client is set up
similarly. For example, comparing always sync (push messages) and
(infrequent) periodic checking for new messages is not a fair
comparison.</p>
<p>If you are comparing the battery usage of FairEmail with an app like
Whatsapp, please understand that most apps use <a
href="https://firebase.google.com/docs/cloud-messaging">Firebase Cloud
Messaging</a> (FCM) for push messages, which means that no battery usage
will be contributed to an app for push messages, but instead to the
Google Play Services system component. Apart from the privacy concerns,
it is not possible to use FCM for email because email servers do not
support FCM. The only way would be to download all your messages to a
third-party server first and use FCM to push notifications to the app.
The privacy and security implications would be significant, though.</p>
<p>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 <a
href="https://tools.ietf.org/html/rfc2177">the standard</a> 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.</p>
<p>If you know that the connection (reception) is bad, it might be
worthwhile to decrease the timeout value in the connection-settings tab
page to 1020 seconds, so that the app discovers earlier that no
connection is possible, so that the mechanism as described in <a
href="#faq123">this FAQ</a> is used faster.</p>
<p><a href="https://dontkillmyapp.com/">On some devices</a> it is
necessary to <em>disable</em> 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!</p>
<p>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 <em>Edit
properties</em> to access this setting.</p>
<p>If you have at least once a day internet connectivity, it is
sufficient to synchronize messages just for one day.</p>
<p>Note that you can set the number of days to <em>keep</em> messages
for to a higher number than to <em>synchronize</em> 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.</p>
<p>In the receive settings tab page 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.</p>
<p>Disabling the folder option <em>Automatically download message texts
and attachments</em> 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.</p>
<p>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).</p>
<p>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 tab page.</p>
<p>FairEmail will by default check if old messages were deleted from the
server on each connection. If you dont mind that old messages that were
deleted from the server are still visible in FairEmail, you can save
some network and battery usage by disabling this in the receive settings
tab page.</p>
<p>Some providers dont follow the IMAP standard and <a
href="https://datatracker.ietf.org/doc/html/rfc3501#section-5.4">dont
keep connections open</a> long enough, forcing FairEmail to reconnect
often, causing extra battery usage. You can inspect the <em>Log</em> via
the main navigation menu to check if there are frequent reconnects
(connection closed/reset, read/write error/timeout, etc.). You can work
around 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.</p>
<p>Some providers send every two minutes something like <em>Still
here</em> resulting in network traffic and your device to wake up and
causing unnecessary extra battery usage. You can inspect the
<em>Log</em> via the main navigation menu to check if your provider is
doing this. If your provider is using <a
href="https://www.dovecot.org/">Dovecot</a> as IMAP server, you could
ask your provider to change the <a
href="https://wiki.dovecot.org/Timeouts">imap_idle_notify_interval</a>
setting to a higher value or better yet, to disable this. If your
provider is not able or willing to change/disable this, you should
consider switching to periodically instead of continuous
synchronization. You can change this in the receive settings tab
page.</p>
<p>If you got the message, <em>This provider does not support push
messages</em> while configuring an account, consider switching to a
modern provider which supports push messages (IMAP IDLE) to reduce
battery usage.</p>
<p>If your device has an <a
href="https://en.wikipedia.org/wiki/AMOLED">AMOLED</a> screen, you can
save battery usage while viewing messages by switching to the black
theme.</p>
<p>If auto optimize in the receive settings tab page is enabled, an
account will automatically be switched to periodically checking for new
messages when the email server:</p>
<ul>
<li>Says <em>Still here</em> within 3 minutes</li>
<li>The email server does not support push messages</li>
<li>The keep-alive interval is lower than 12 minutes</li>
</ul>
<p><br /></p>
<p><a name="faq40"></a> <strong>(40) How can I reduce the data usage of
FairEmail?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq40">Google
Translate</a></p>
<p>You can reduce the data usage basically in the same way as reducing
battery usage, see the previous question for suggestions.</p>
<p>It is inevitable that data will be used to synchronize messages.</p>
<p>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).</p>
<p>To reduce data usage, you could change these advanced receive
settings:</p>
<ul>
<li>Check if old messages were removed from the server: disable</li>
<li>Synchronize (shared) folder list: disable</li>
</ul>
<p>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.</p>
<p>You could enable to download only plain text only parts, but all
messages will be without formatting (styling), and besides that, a plain
text only part is not always sent, and worse, it is sometimes only a
part of the message text, containing HTML and CCS.</p>
<p>In case of POP3, you can reduce the maximum number of messages to
download.</p>
<p><br /></p>
<p><a name="faq41"></a> <strong>(41) How can I fix the error Handshake
failed?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq41">Google
Translate</a></p>
<p>There are several possible causes, so please read to the end of this
answer.</p>
<p>The error <em>Handshake failed … WRONG_VERSION_NUMBER …</em> 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.</p>
<p>Most providers provide encrypted connections using different ports,
typically port 993 (IMAP) and port 465/587 (SMTP).</p>
<p>If your provider doesnt support encrypted connections, you should
ask to make this possible. If this isnt an option, you could enable
<em>Allow insecure connections</em> both in the advanced settings AND
the account/identity settings.</p>
<p>See also <a href="#faq4">this FAQ</a>.</p>
<p>The error <em>Handshake failed … SSLV3_ALERT_ILLEGAL_PARAMETER
</em> 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.</p>
<p>The error <em>Handshake failed … HANDSHAKE_FAILURE_ON_CLIENT_HELLO
</em> might be caused by the provider still using RC4, which isnt
supported since <a
href="https://developer.android.com/about/versions/nougat/android-7.0-changes.html#tls-ssl">Android
7</a> anymore.</p>
<p>The error <em>Handshake failed SSL handshake terminated …
SSLV3_ALERT_HANDSHAKE_FAILURE … HANDSHAKE_FAILURE_ON_CLIENT_HELLO</em>
can be caused by <a
href="https://issuetracker.google.com/issues/37122132">this Android 7.0
bug</a>. This can unfortunately not be fixed by FairEmail.</p>
<p>The error <em>Handshake failed … UNSUPPORTED_PROTOCOL or
TLSV1_ALERT_PROTOCOL_VERSION or SSLV3_ALERT_HANDSHAKE_FAILURE …</em>
might be caused by enabling <strong>hardening connections</strong> or
<strong>Bouncy Castle</strong> in the connection settings tab page, or
by Android not supporting older protocols anymore, like SSLv3 and
TLSv1.</p>
<p>The error <em>javax.net.ssl.SSLHandshakeException: Read error: …
CERT_LENGTH_MISMATCH</em> means that there is something wrong with the
email server setup. Try to switch to port 993 (IMAP) or 465 (SMTP) with
SSL/TLS.</p>
<p>Android 8 Oreo and later <a
href="https://developer.android.com/about/versions/oreo/android-8.0-changes#security-all">do
not support</a> 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). Since version 1.2121 the Bouncy Castle
secure socket provider (<a
href="https://en.wikipedia.org/wiki/Java_Secure_Socket_Extension">JSSE</a>)
is bundled. Enabling this socket provider in the connection-settings tab
and enabling <em>Allow insecure connections</em> in the
account/identity settings <em>might</em> solve this problem.</p>
<p>The error <em>javax.net.ssl.SSLHandshakeException: Read error: …
TLSV1_ALERT_INTERNAL_ERROR</em> means that Android and the email server
share no common protocol versions and/or common ciphers.</p>
<p>Please <a
href="https://developer.android.com/reference/javax/net/ssl/SSLSocket">see
here</a> for an overview of supported protocols and cipher suites by
Android version.</p>
<p>You can use <a href="https://ssl-tools.net/mailservers">this
website</a> or <a href="https://www.immuniweb.com/ssl/">this website</a>
to check for SSL/TLS problems of email servers.</p>
<p><br /></p>
<p><a name="faq42"></a> <strong>(42) Can you add a new provider to the
list of providers?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq42">Google
Translate</a></p>
<p>If the provider is used by more than a few people, yes, with
pleasure.</p>
<p>The following information is needed:</p>
<pre><code>&lt;provider
name=&quot;Gmail&quot;
link=&quot;https://support.google.com/mail/answer/7126229&quot; // link to the instructions of the provider
type=&quot;com.google&quot;&gt; // this is not needed
&lt;imap
host=&quot;imap.gmail.com&quot;
port=&quot;993&quot;
starttls=&quot;false&quot; /&gt;
&lt;smtp
host=&quot;smtp.gmail.com&quot;
port=&quot;465&quot;
starttls=&quot;false&quot; /&gt;
&lt;/provider&gt;</code></pre>
<p>The EFF <a
href="https://www.eff.org/nl/deeplinks/2018/06/announcing-starttls-everywhere-securing-hop-hop-email-delivery">writes</a>:
<em>Additionally, even if you configure STARTTLS perfectly and use a
valid certificate, theres still no guarantee your communication will be
encrypted.</em></p>
<p>So, pure SSL connections are safer than using <a
href="https://en.wikipedia.org/wiki/Opportunistic_TLS">STARTTLS</a> and
therefore preferred.</p>
<p>Please make sure receiving and sending messages works properly before
contacting me to add a provider.</p>
<p>See below about how to contact me.</p>
<p><br /></p>
<p><a name="faq43"></a> <strong>(43) Can you show the original
…?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq43">Google
Translate</a></p>
<p>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 <a
href="https://developer.android.com/reference/android/webkit/WebSettings.LayoutAlgorithm">TEXT_AUTOSIZING</a>,
which will <em>attempt</em> to make small text more readable.</p>
<p><br /></p>
<p><a name="faq44"></a> <strong><del>(44) Can you show contact photos /
identicons in the sent folder?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq44">Google
Translate</a></p>
<p><del>Contact photos and identicons are always shown for the sender
because this is necessary for conversation threads.</del> <del>Getting
contact photos for both the sender and receiver is not really an option
because getting contact photo is an expensive operation.</del></p>
<p><br /></p>
<p><a name="faq45"></a> <strong>(45) How can I fix This key is not
available. To use it, you must import it as one of your
own!?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq45">Google
Translate</a></p>
<p>Youll get the message <em>This key is not available. To use it, you
must import it as one of your own!</em> when trying to decrypt a message
with a public key. To fix this youll need to import the private
key.</p>
<p><br /></p>
<p><a name="faq46"></a> <strong>(46) Why does the message list keep
refreshing?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq46">Google
Translate</a></p>
<p>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.</p>
<p>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 shouldnt set the number of days to synchronize
messages to more than one day in most cases, see also <a
href="#faq39">this FAQ</a>.</p>
<p><br /></p>
<p><a name="faq47"></a> <strong>(47) How do I solve the error No
primary account or no drafts folder?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq47">Google
Translate</a></p>
<p>Youll get the error message <em>No primary account or no drafts
folder</em> 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 youll need to select one account to be the
primary account and/or youll need to select a drafts folder for the
primary account.</p>
<p>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.</p>
<p>Please see <a href="#faq141">this FAQ</a> for some more
information.</p>
<p><br /></p>
<p><a name="faq48"></a> <strong><del>(48) How do I solve the error No
primary account or no archive folder?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq48">Google
Translate</a></p>
<p><del>Youll get the error message <em>No primary account or no
archive folder</em> when searching for messages from another app.
FairEmail needs to know where to search, so youll need to select one
account to be the primary account and/or youll need to select a archive
folder for the primary account.</del></p>
<p><br /></p>
<p><a name="faq49"></a> <strong>(49) How do I fix An outdated app sent
a file path instead of a file stream?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq49">Google
Translate</a></p>
<p>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 <em>An outdated app sent a file path instead of a file
stream</em> if a file name instead of a file stream is being shared with
FairEmail because FairEmail cannot randomly open files.</p>
<p>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 <a
href="https://developer.android.com/preview/privacy/scoped-storage">wont
work on Android Q</a> anymore.</p>
<p>See also <a href="#faq25">question 25</a> and <a
href="https://developer.android.com/training/secure-file-sharing/share-file#RespondToRequest">what
Google writes about it</a>.</p>
<p><br /></p>
<p><a name="faq50"></a> <strong>(50) Can you add an option to
synchronize all messages?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq50">Google
Translate</a></p>
<p>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 <em>Synchronize more</em> in the
popup menu.</p>
<p><br /></p>
<p><a name="faq51"></a> <strong>(51) How are folders
sorted?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq51">Google
Translate</a></p>
<p>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 <em>Edit
properties</em>.</p>
<p>The navigation (hamburger) menu item <em>Order folders</em> in the
settings, or, alternatively, a button in the <em>Extra</em> section at
the bottom of the main settings tab page, can be used to manually order
the folders.</p>
<p><br /></p>
<p><a name="faq52"></a> <strong>(52) Why does it take some time to
reconnect to an account?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq52">Google
Translate</a></p>
<p>There is no reliable way to know if an account connection was
terminated gracefully or forcefully. Trying to reconnect to an account
while the account connection was terminated forcefully too often can
result in problems like <a href="#faq23">too many simultaneous
connections</a> or even the account being blocked. To prevent such
problems, FairEmail waits 90 seconds until trying to reconnect
again.</p>
<p>You can long press <em>Settings</em> in the navigation menu to
reconnect immediately.</p>
<p><br /></p>
<p><a name="faq53"></a> <strong>(53) Can you stick the message action
bar to the top/bottom?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq53">Google
Translate</a></p>
<p>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.</p>
<p>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.</p>
<p>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.</p>
<p><br /></p>
<p><a name="faq54"></a> <strong><del>(54) How do I use a namespace
prefix?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq54">Google
Translate</a></p>
<p><del>A namespace prefix is used to automatically remove the prefix
providers sometimes add to folder names.</del></p>
<p><del>For example the Gmail spam folder is called:</del></p>
<pre><code>[Gmail]/Spam</code></pre>
<p><del>By setting the namespace prefix to <em>[Gmail]</em> FairEmail
will automatically remove <em>[Gmail]/</em> from all folder
names.</del></p>
<p><br /></p>
<p><a name="faq55"></a> <strong>(55) How can I mark all messages as read
/ move or delete all messages?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq55">Google
Translate</a></p>
<p>You can use multiple select for this. Long press the first message,
dont lift your finger and slide down to the last message. Then use the
three dot action button to execute the desired action.</p>
<p><br /></p>
<p><a name="faq56"></a> <strong>(56) Can you add support for
JMAP?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq56">Google
Translate</a></p>
<p>There are almost no providers offering the <a
href="https://jmap.io/">JMAP</a> protocol, so it is not worth a lot of
effort to add support for this to FairEmail.</p>
<p><br /></p>
<p><a name="faq57"></a> <strong>(57) Can I use HTML in
signatures?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq57">Google
Translate</a></p>
<p>Yes, you can use <a
href="https://en.wikipedia.org/wiki/HTML">HTML</a>. In the signature
editor you can switch to HTML mode via the three-dots menu.</p>
<p>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.</p>
<p>If you want to use preformatted text, like <a
href="https://en.wikipedia.org/wiki/ASCII_art">ASCII art</a>, you should
wrap the text in a <em>pre</em> element, like this:</p>
<pre><code>&lt;pre&gt;
|\_/|
/ @ @ \
( &gt; º &lt; )
`&gt;&gt;x&lt;&lt;´
/ O \
&lt;/pre&gt;</code></pre>
<p>If you want to resize an image, you could do it like this:</p>
<pre><code>&lt;img src=&quot;...&quot; width=&quot;...&quot; height=&quot;...&quot;&gt;</code></pre>
<p>The recipient of your message might not like large images in
messages, so it is better to resize images with an image editor
first.</p>
<p><br /></p>
<p><a name="faq58"></a> <strong>(58) What does an open/closed email icon
mean?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq58">Google
Translate</a></p>
<p>The email icon in the folder list can be open (outlined) or closed
(solid):</p>
<p><img src="https://github.com/M66B/FairEmail/blob/master/images/baseline_mail_outline_black_48dp.png" width="48" height="48" /></p>
<p>Message bodies and attachments are not downloaded by default.</p>
<p><img src="https://github.com/M66B/FairEmail/blob/master/images/baseline_email_black_48dp.png" width="48" height="48" /></p>
<p>Message bodies and attachments are downloaded by default.</p>
<p><br /></p>
<p><a name="faq59"></a> <strong>(59) Can original messages be opened in
the browser?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq59">Google
Translate</a></p>
<p>For security reasons the files with the original message texts are
not accessible to other apps, so this is not possible. In theory the <a
href="https://developer.android.com/guide/topics/providers/document-provider">Storage
Access Framework</a> could be used to share these files, but even
Googles Chrome cannot handle this.</p>
<p><br /></p>
<p><a name="faq60"></a> <strong>(60) Did you know …?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq60">Google
Translate</a></p>
<ul>
<li>Did you know that starred messages can be synchronized/kept always?
(this can be enabled in the receive settings)</li>
<li>Did you know that you can long press the write message icon to go
to the drafts folder?</li>
<li>Did you know there is an advanced option to mark messages read when
they are moved? (archiving and trashing is also moving)</li>
<li>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? (this
can be enabled in the miscellaneous settings)</li>
<li>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.</li>
<li>Did you know that you can long press a reply template to create a
draft message from the template?</li>
<li>Did you know that you can long press, hold and swipe to select a
range of messages?</li>
<li>Did you know that you can retry sending messages by using
pull-down-to-refresh in the outbox?</li>
<li>Did you know that you can swipe a conversation left or right to go
to the next or previous conversation?</li>
<li>Did you know that you can tap on an image to see where it will be
downloaded from?</li>
<li>Did you know that you can long press the folder icon in the action
bar to select an account?</li>
<li>Did you know that you can long press the star icon in a conversation
thread to set a colored star?</li>
<li>Did you know that you can open the navigation drawer by swiping from
the left, even when viewing a conversation?</li>
<li>Did you know that you can long press the peoples icon to show/hide
the CC/BCC fields and remember the visibility state for the next
time?</li>
<li>Did you know that you can insert the email addresses of an Android
contact group via the three dots overflow menu?</li>
<li>Did you know that if you select text and reply, only the selected
text will be quoted? (this works for reformatted messages only because
of <a href="https://issuetracker.google.com/issues/36939405">this
issue</a>)</li>
<li>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+)</li>
<li>Did you know that you can long press the send action to show the
send dialog, even if it was disabled?</li>
<li>Did you know that you can long press the full screen icon to show
the original message text only?</li>
<li>Did you know that you can long press the answer button to reply to
the sender? (since version 1.1562; since version 1.1839 you can
configure the action in the send settings)</li>
<li>Did you know that you can long press the message move button to move
across accounts? (since version 1.1702)</li>
<li>Did you know that you can long press the folder name in the message
header when viewing a conversation to navigate to the folder? (since
version 1.1720)</li>
<li>Did you know that you can long press the add contact button in the
message composer to insert a contact group? (since version 1.1721)</li>
<li>Did you know that you can long press the image action to show the
image dialog, even if it was disabled? (since version 1.1772)</li>
<li>Did you know that you can long press the “] [” button to fit
original messages to the screen width? (this might result in “thin”
messages)</li>
<li>Did you know that you can long press on the save drafts button for a
grammar, style, and spell check via <a
href="https://languagetool.org/">LanguageTools</a>?</li>
<li>Did you know that you can long press a folder in the folder
selection dialog to copy instead of move a message?</li>
<li>Did you know that you can long press a quick search button in the
search dialog to copy the search term?</li>
</ul>
<p><br /></p>
<p><a name="faq61"></a> <strong>(61) Why are some messages shown
dimmed?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq61">Google
Translate</a></p>
<p>Messages shown dimmed (grayed) are locally moved messages for which
the move is not confirmed by the server yet. This can happen when there
is no connection to the server or the account (yet). These messages will
be synchronized after a connection to the server and the account has
been made or, if this never happens, will be deleted if they are too old
to be synchronized.</p>
<p>You might need to manually synchronize the folder, for example by
pulling down.</p>
<p>You can view these messages, but you cannot move these messages again
until the previous move has been confirmed.</p>
<p>Pending <a href="#faq3">operations</a> are shown in the operations
view accessible from the main navigation menu.</p>
<p><br /></p>
<p><a name="faq62"></a> <strong>(62) Which authentication methods are
supported?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq62">Google
Translate</a></p>
<p>The following authentication methods are supported and used in this
order:</p>
<ul>
<li>CRAM-MD5</li>
<li>LOGIN</li>
<li>PLAIN</li>
<li>NTLM (untested)</li>
<li>XOAUTH2 (<a
href="https://developers.google.com/gmail/imap/xoauth2-protocol">Gmail</a>,
<a href="https://tech.yandex.com/oauth/">Yandex</a>)</li>
</ul>
<p>SASL authentication methods, besides CRAM-MD5, are not supported
because <a href="https://javaee.github.io/javamail/Android">JavaMail for
Android</a> does not support SASL authentication.</p>
<p>If your provider requires an unsupported authentication method,
youll likely get the error message <em>authentication failed</em>.</p>
<p><a href="https://en.wikipedia.org/wiki/Client_certificate">Client
certificates</a> can be selected in the account and identity
settings.</p>
<p><a href="https://en.wikipedia.org/wiki/Server_Name_Indication">Server
Name Indication</a> is supported by <a
href="https://developer.android.com/training/articles/security-ssl">all
supported Android versions</a>.</p>
<p><br /></p>
<p><a name="faq63"></a> <strong>(63) How are images resized for
displaying on screens?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq63">Google
Translate</a></p>
<p>You can add images to a message in two ways:</p>
<ul>
<li>As attachment, by tapping on the paperclip icon button in the bottom
action bar</li>
<li>As image, by tapping on the image icon button in the bottom action
bar</li>
</ul>
<p>If you disabled the bottom action bar, you can enable it again via
the three-dots menu at the top right of the message editor.</p>
<p>An attachment will always be sent as-is. An image can be added as
attachment or inserted into a message and you can select to reduce the
size of the image and to remove privacy sensitive information.</p>
<p>Images will be scaled down using whole number factors to reduce
memory usage and to retain the image quality. Scaled images will be
saved with a compression ratio of 90 %.</p>
<p>If the image options do not appear, you can enable them again via the
three-dots menu.</p>
<p>Note that most email providers limit the total message size to 10-50
MB.</p>
<p>Automatically resizing of inline and/or attached images and the
maximum target image size can be configured in the send settings.</p>
<p><br /></p>
<p><a name="faq64"></a> <strong><del>(64) Can you add custom actions for
swipe left/right?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq64">Google
Translate</a></p>
<p><del>The most natural thing to do when swiping a list entry left or
right is to remove the entry from the list.</del> <del>The most natural
action in the context of an email app is moving the message out of the
folder to another folder.</del> <del>You can select the folder to move
to in the account settings.</del></p>
<p><del>Other actions, like marking messages read and snoozing messages
are available via multiple selection.</del> <del>You can long press a
message to start multiple selection. See also <a href="#faq55">this
question</a>.</del></p>
<p><del>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.</del> <del>Note that there is an advanced option to
mark messages automatically read on moving,</del> <del>which is in most
cases a perfect replacement for the sequence mark read and move to some
folder.</del> <del>You can also mark messages read from new message
notifications.</del></p>
<p><del>If you want to read a message later, you can hide it until a
specific time by using the <em>snooze</em> menu.</del></p>
<p><br /></p>
<p><a name="faq65"></a> <strong>(65) Why are some attachments shown
dimmed?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq65">Google
Translate</a></p>
<p>Inline (image) attachments are shown dimmed. <a
href="https://tools.ietf.org/html/rfc2183">Inline attachments</a> are
supposed to be downloaded and shown automatically, but since FairEmail
doesnt always download attachments automatically, see also <a
href="#faq40">this FAQ</a>, FairEmail shows all attachment types. To
distinguish inline and regular attachments, inline attachments are shown
dimmed.</p>
<p><br /></p>
<p><a name="faq66"></a> <strong>(66) Is FairEmail available in the
Google Play Family Library?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq66">Google
Translate</a></p>
<p><em>You cant share in-app purchases and free apps with your family
members.</em></p>
<p>See <a
href="https://support.google.com/googleone/answer/7007852">here</a>
under “<em>See if content is eligible to be added to Family
Library</em>”, “<em>Apps &amp; games</em>”.</p>
<p>In other words, only subscriptions can be shared and since there is
no subscription, FairEmail is not shareable via the Google Play Family
Library.</p>
<p><br /></p>
<p><a name="faq67"></a> <strong>(67) How can I snooze
conversations?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq67">Google
Translate</a></p>
<p>Multiple select one of more conversations (long press to start
multiple selecting), tap the three dot button and select <em>Snooze
</em>. Alternatively, in the expanded message view use <em>Snooze
</em> 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.</p>
<p>It is also possible to snooze messages with <a href="#faq71">a
rule</a>, which will also allow you to move messages to a folder to let
them be auto snoozed.</p>
<p>You can show snoozed messages by unchecking <em>Filter out</em> &gt;
<em>Hidden</em> in the three dot overflow menu.</p>
<p>You can tap on the small snooze icon to see until when a conversation
is snoozed.</p>
<p>By selecting a zero snooze duration you can cancel snoozing.</p>
<p>Third party apps do not have access to the Gmail snoozed messages
folder.</p>
<p><br /></p>
<p><a name="faq68"></a> <strong><del>(68) Why can Adobe Acrobat reader
not open PDF attachments / Microsoft apps not open attached
documents?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq68">Google
Translate</a></p>
<p><del>Adobe Acrobat reader and Microsoft apps still expects full
access to all stored files,</del> <del>while apps should use the <a
href="https://developer.android.com/guide/topics/providers/document-provider">Storage
Access Framework</a> since Android KitKat (2013)</del> <del>to have
access to actively shared files only. This is for privacy and security
reasons.</del></p>
<p><del>You can workaround this by saving the attachment and opening it
from the Adobe Acrobat reader / Microsoft app,</del> <del>but you are
advised to install an up-to-date and preferably open source PDF reader /
document viewer,</del> <del>for example one listed <a
href="https://github.com/offa/android-foss#-document--pdf-viewer">here</a>.</del></p>
<p><br /></p>
<p><a name="faq69"></a> <strong>(69) Can you add auto scroll up on new
message?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq69">Google
Translate</a></p>
<p>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.</p>
<p><br /></p>
<p><a name="faq70"></a> <strong>(70) When will messages be auto
expanded?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq70">Google
Translate</a></p>
<p>When navigation to a conversation one message will be expanded
if:</p>
<ul>
<li>There is just one message in the conversation</li>
<li>There is exactly one unread message in the conversation</li>
<li>There is exactly one starred (favorite) message in the conversation
(since version 1.1508)</li>
</ul>
<p>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.</p>
<p>Duplicate (archived) messages, trashed messages and draft messages
are not counted.</p>
<p>Messages will automatically be marked read on expanding, unless this
was disabled in the individual account settings.</p>
<p><br /></p>
<p><a name="faq71"></a> <strong>(71) How do I use rules?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq71">Google
Translate</a></p>
<p>You can edit rules by long pressing a folder in the folder list of an
account (tap the account name in the navigation/side menu).</p>
<p>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 <em>Execute now</em>.</p>
<p>Youll need to give a rule a name and youll need to define the order
in which a rule should be executed relative to other rules.</p>
<p>You can disable a rule and you can stop processing other rules after
a rule has been executed, which can be used to create a <em>not</em>
condition.</p>
<p>Since version 1.2061 rules can be part of a named group. Group names
will be displayed in the list of rules. If a rule is part of a group,
stop processing means stop processing the group.</p>
<p>Since version 1.2018 there is a rule option to run rules daily on
messages (around 1:00am) older than xxx.</p>
<p>The following rule conditions are available:</p>
<ul>
<li>Sender (from, reply-to) contains or sender is contact</li>
<li>Recipient (to, cc, bcc) contains</li>
<li>Subject contains</li>
<li>Has attachments (optional of specific type)</li>
<li>Header contains</li>
<li>Text contains (since version 1.1785)</li>
<li>Absolute time (received) between (since version 1.1540)</li>
<li>Relative time (received) between</li>
</ul>
<p>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 <em><span class="citation"
data-cites="example.org">@example.org</span></em></p>
<p>Note that email addresses are formatted like this:</p>
<p><code>"Somebody" &lt;somebody@example.org&gt;</code></p>
<p>When using a regex, you need to take care to match the complete
address.</p>
<p>Note that message texts are normalized when not using a regex, which
means that all whitespaces (spaces, tabs, line breaks, etc) are replaced
by a single space. This makes it easier to match texts on multiple lines
or when the line break is at different places.</p>
<p>Since version 1.1996 it is possible to use <a
href="https://jsoup.org/cookbook/extracting-data/selector-syntax">Jsoup
selectors</a> to match HTML elements, by prefixing the selector by
<em>jsoup:</em> and entering it as text contains condition, like for
example:</p>
<pre><code>jsoup:html &gt; body &gt; div &gt; a[href=https://example.org]</code></pre>
<p>You can use multiple rules, possibly with a <em>stop processing</em>,
for an <em>or</em> or a <em>not</em> condition.</p>
<p>Matching is not case sensitive, unless you use <a
href="https://en.wikipedia.org/wiki/Regular_expression">regular
expressions</a>. Please see <a
href="https://developer.android.com/reference/java/util/regex/Pattern">here</a>
for the documentation of Java regular expressions. Note that you need to
match the complete text from the first to the last character. You can
test a regex <a href="https://regexr.com/">here</a>.</p>
<p>Note that a regular expression supports an <em>or</em> operator, so
if you want to match multiple senders, you can do this:</p>
<p><code>.*alice@example\.org.*|.*bob@example\.org.*|.*carol@example\.org.*</code></p>
<p>Note that <a
href="https://developer.android.com/reference/java/util/regex/Pattern#DOTALL">dot
all mode</a> is enabled to be able to match <a
href="https://tools.ietf.org/html/rfc2822#section-3.2.3">unfolded
headers</a>.</p>
<p>You can select one of these actions to apply to matching
messages:</p>
<ul>
<li>No action (useful for <em>not</em>)</li>
<li>Mark as read</li>
<li>Mark as unread</li>
<li>Hide</li>
<li>Suppress notification</li>
<li>Silent notification (since version 1.2150)</li>
<li>Snooze</li>
<li>Add star</li>
<li>Set importance (local priority)</li>
<li>Add keyword</li>
<li>Add local notes (since version 1.2094)</li>
<li>Move</li>
<li>Copy (Gmail: label)</li>
<li>Delete permanently (since version 1.1801)</li>
<li>Play sound (since version 1.1803; experimental)</li>
<li>Answer/forward (with template)</li>
<li>Text-to-speech (sender and subject)</li>
<li>Automation (Tasker, etc)</li>
<li>Webhook (since version 1.2107)</li>
</ul>
<p><strong>Important</strong>: permanent deletion is
<strong>irreversible</strong>. Instead, consider to move messages to the
trash folder and to set up auto deletion for the trash folder in the
folder properties (long press the folder in the folder list of an
account).</p>
<p>If you want to forward a message, consider to use a <em>move</em>
action instead. This will be more reliable than forwarding because
forwarded messages might be considered as spam.</p>
<p><br></p>
<p>It is possible to use a <a
href="https://jsoup.org/cookbook/extracting-data/selector-syntax">Jsoup
selector</a> to select the text for notes, for example:</p>
<pre><code>jsoup:td &gt; span:containsOwn(€)</code></pre>
<p>The text of the first matched HTML element up to 512 characters will
be used as text for the local note.</p>
<p><br></p>
<p>A <em>move</em> action can optionally create subfolders (since
version 1.1966) to move messages to, for which you can use the following
placeholders:</p>
<pre><code>$day$ (since version 1.2030)
$week$
$month$
$year$
$domain$
$group$ (since version 1.2030)</code></pre>
<p><span
class="math inline"><em>g</em><em>r</em><em>o</em><em>u</em><em>p</em></span>
will be replaced with the contact group name of the sender, provided
that the related contact is assigned to one contact group only. Note
that the Android contact provider isnt very fast, so using this
placeholder can slow down fetching messages.</p>
<p><br /></p>
<p>Since version 1.2132 it is possible to use the following placeholders
in keywords:</p>
<pre><code>$day$
$week$
$month$
$year$</code></pre>
<p><br /></p>
<p>Since message headers are not downloaded and stored by default to
save on battery and data usage and to save storage space it is by
default not possible to preview which messages would match a header rule
condition. You can enable downloading message headers in the connection
settings and check headers conditions anyway (since version 1.1599).</p>
<p>Some common header conditions (regex):</p>
<ul>
<li><em>.*To:.*undisclosed-recipients.*</em></li>
<li><em>.*Auto-Submitted:.*</em> <a
href="https://tools.ietf.org/html/rfc3834">RFC3834</a></li>
<li><em>.*List-Unsubscribe:.*</em> <a
href="https://datatracker.ietf.org/doc/html/rfc2369">RFC3834</a></li>
<li><em>.*Content-Type:.*multipart/report.*</em> <a
href="https://tools.ietf.org/html/rfc3462">RFC3462</a></li>
</ul>
<p>To match <em>set</em> IMAP flags (keywords) via a header condition
(since version 1.1777):</p>
<pre><code>$&lt;keyword&gt;$</code></pre>
<p>To match <em>set</em> message flags via a header condition (since
version 1.1777):</p>
<pre><code>$$seen$ (read)
$$answered$ (replied to)
$$flagged$ (starred, favorite)
$$deleted$ (marked as deleted)</code></pre>
<p>To match <em>passed</em> message checks via a header condition (since
version 1.1787):</p>
<pre><code>$$tls$ (since version 1.1826)
$$dkim$
$$spf$
$$dmarc$
$$auth$ (since version 1.2141)
$$mx$
$$blocklist$
$$replydomain$
$$nofrom$ (since version 1.1791)
$$multifrom$ (since version 1.1791)
$$automatic$ (since version 1.1862)
$$lowpriority$ (since version 1.1958)
$$highpriority$ (since version 1.1958)
$$signed$ (since version 1.1981)
$$encrypted$ (since version 1.1981)
$$aligned$ (since version 1.2049)</code></pre>
<p>Note that <em>regex</em> should be disabled and that there should be
no white space.</p>
<p>Please be aware that a difference in the <em>from</em> and
<em>reply-to</em> domain, and no or multi <em>from</em> addresses isnt
a good indication of spam.</p>
<p>Since the app sets the keyword <em><span
class="math inline"><em>F</em><em>i</em><em>l</em><em>t</em><em>e</em><em>r</em><em>e</em><em>d</em></span></em>
after the rules have been executed for a message, you can create a rule
to prevent the rules from being executed again (which is sometimes
desirable):</p>
<ul>
<li>Name: anything you like</li>
<li>Order: lower than all other rules, for example 0</li>
<li>Stop processing rules after executing this rule: enabled</li>
<li>Header contains: <em>$<span
class="math inline"><em>F</em><em>i</em><em>l</em><em>t</em><em>e</em><em>r</em><em>e</em><em>d</em></span></em>
(no spaces)</li>
<li>Action: No action</li>
</ul>
<p>Note that not all email servers support IMAP keywords.</p>
<p><br /></p>
<p>The automation action will broadcast the intent
<em>eu.faircode.email.AUTOMATION</em> with the following string
extras:</p>
<ul>
<li><em>rule</em></li>
<li><em>sender</em></li>
<li><em>subject</em></li>
<li><em>received</em> (ISO 8601 date/time)</li>
</ul>
<p>An app like Tasker can listen for this intent and perform some
action.</p>
<p><br /></p>
<p>You can long-press a rule in the list of rules to copy it, which can
be useful if you need a rule with the same condition but a different
action.</p>
<p><br /></p>
<p>In the three-dots <em>more</em> message menu there is an item to
create a rule for a received message with the most common conditions
filled in.</p>
<p><br /></p>
<p>If you want to set up archiving by week, month, year, etc, you can do
this with rules with an absolute time condition on a jump archive
folder where archived messages are being moved to as a first step. Such
a rule will move the messages to a (sub) archive folder as a second
step.</p>
<p>The POP3 protocol does not support setting keywords and moving or
copying messages.</p>
<p><br /></p>
<p>Since version 1.2061 it is possible to execute rules with an
automation app, like for example Tasker.</p>
<pre><code>(adb shell) am start-foreground-service -a eu.faircode.email.RULE --es account &lt;account name&gt; -es rule &lt;unique rule name&gt;</code></pre>
<p><br /></p>
<p>Since version 1.2107 it is possible to executed webhooks. The
supported HTTP methods are GET, HEAD, OPTIONS, POST and POST. The query
parameters will be sent as body in the case of POST and PUT. Note that
execution of webhooks wont be retried. So, dont use this for anything
critical.</p>
<p>This website might be useful for testing webhooks:</p>
<p><a href="https://webhook.site/">https://webhook.site/</a></p>
<p><br /></p>
<p>Using rules is a pro feature.</p>
<p><br /></p>
<p><a name="faq72"></a> <strong>(72) What are primary
accounts/identities?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq72">Google
Translate</a></p>
<p>The primary account is used when the account is ambiguous, for
example when starting a new draft from the unified inbox.</p>
<p>Similarly, the primary identity of an account is used when the
identity is ambiguous.</p>
<p>The default email address is the email address of the primary
identity of the primary account.</p>
<p>There can be just one primary account and there can be just one
primary identity per account.</p>
<p>You can set an account or an identity to be primary by long pressing
it in the list of accounts or identities. You can go to the list of
accounts via <em>Manual setup and account options</em> in the main setup
screen.</p>
<p><br /></p>
<p><a name="faq73"></a> <strong>(73) Is moving messages across accounts
safe/efficient?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq73">Google
Translate</a></p>
<p>Moving messages across accounts is safe because the raw, original
messages will be downloaded and moved and because the source messages
will be deleted only after the target messages have been added</p>
<p>Batch moving messages across accounts is efficient if both the source
folder and target folder are set to synchronize, else FairEmail needs to
connect to the folder(s) for each message.</p>
<p><br /></p>
<p><a name="faq74"></a> <strong>(74) Why do I see duplicate
messages?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq74">Google
Translate</a></p>
<p>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.</p>
<p>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.</p>
<p><br /></p>
<p><a name="faq75"></a> <strong>(75) Can you make an iOS, Windows,
Linux, etc version?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq75">Google
Translate</a></p>
<p>A lot of knowledge and experience is required to successfully develop
an app for a specific platform, which is why I develop apps for Android
only.</p>
<p>You can install FairEmail on recent Windows versions, though, see <a
href="#faq185">here</a>, and also on ChromeOS via the Play Store.</p>
<p><br /></p>
<p><a name="faq76"></a> <strong>(76) What does Clear local messages
do?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq76">Google
Translate</a></p>
<p>The folder menu <em>Clear local messages</em> removes messages from
the device which are present on the server too. It does not delete
messages from the server. This can be useful after changing the folder
settings to not download the message content (text and attachments), for
example to save space.</p>
<p><br /></p>
<p><a name="faq77"></a> <strong>(77) Why are messages sometimes shown
with a small delay?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq77">Google
Translate</a></p>
<p>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.</p>
<p>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 <em>the</em> next message
because in the meantime a new message might have been arrived.</p>
<p>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.</p>
<p>FairEmail is based on the state-of-the-art <a
href="https://developer.android.com/topic/libraries/architecture/">Android
architecture components</a>, so there is little room for performance
improvements.</p>
<p><br /></p>
<p><a name="faq78"></a> <strong>(78) How do I use
schedules?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq78">Google
Translate</a></p>
<p>In the receive settings you can enable scheduling and set a time
period and the days of the week <em>when</em> messages should be
<em>received</em>. Note that an end time equal to or earlier than the
start time is considered to be 24 hours later.</p>
<p>Since version 1.1880 is is possible to exclude accounts from
scheduling in the advanced account settings. This means you can
synchronize a business account during business hours only and make an
exception for personal accounts.</p>
<p>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.</p>
<p>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.</p>
<p>It is also possible to create <a href="#faq71">rules</a> with a time
condition and to snooze messages until the end time of the time
condition. This way it is possible to <em>snooze</em> 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. How to:</p>
<ul>
<li>Go to the folder list of an account by tapping on the account name
in the navigation menu (left side menu)</li>
<li>Long press the inbox in the folder list and select <em>Edit
rules</em></li>
<li>Tap om the big <em>plus</em> button at the bottom to create a new
rule</li>
<li>Enter as name for example <em>Snooze business messages</em></li>
<li>Under relative time select a start and end date/time, for example
Friday 17:00 and Monday 09:00</li>
<li>Select <em>Snooze</em> as action</li>
<li>Save the rule with the save button in the bottom action bar</li>
</ul>
<p>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 <a
href="https://support.google.com/android/answer/9069335">see here</a>
for more information.</p>
<p>Since version 1.2150 it is possible to create <a
href="#faq71">rules</a> to silence specific new message
notifications.</p>
<p>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:</p>
<pre><code>(adb shell) am start-foreground-service -a eu.faircode.email.POLL</code></pre>
<p>For a specific account:</p>
<pre><code>(adb shell) am start-foreground-service -a eu.faircode.email.POLL --es account Gmail</code></pre>
<p>You can also automate turning receiving messages on and off by
sending these commands to FairEmail:</p>
<pre><code>(adb shell) am start-foreground-service -a eu.faircode.email.ENABLE
(adb shell) am start-foreground-service -a eu.faircode.email.DISABLE</code></pre>
<p>To enable/disable a specific account:</p>
<pre><code>(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</code></pre>
<p>Note that disabling an account will hide the account and all
associated folders and messages. Since version 1.1600 an account will be
disabled/enabled by setting the account to manual/automatic sync, so the
folders and messages keep being accessible.</p>
<p>To set the poll interval:</p>
<pre><code>(adb shell) adb shell am start-foreground-service -a eu.faircode.email.INTERVAL --ei minutes nnn</code></pre>
<p>Where <em>nnn</em> is one of 0, 5, 15, 30, 60, 120, 240, 480, 1440. A
value of 0 means push messages.</p>
<p>You can automatically send commands with for example <a
href="https://tasker.joaoapps.com/userguide/en/intents.html">Tasker</a>:</p>
<pre><code>New task: Something recognizable
Action Category: Misc/Send Intent
Action: eu.faircode.email.ENABLE
Target: Service</code></pre>
<p>To enable/disable an account with the name <em>Gmail</em>:</p>
<pre><code>Extras: account:Gmail</code></pre>
<p>Account names are case sensitive.</p>
<p>Scheduling is a pro feature.</p>
<p><br /></p>
<p><a name="faq79"></a> <strong>(79) How do I use synchronize on demand
(manual)?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq79">Google
Translate</a></p>
<p>Normally, FairEmail maintains a connection to the configured email
servers whenever possible to receive messages in real-time. If you dont
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.</p>
<p>You can also enable <em>Synchronize manually</em> in the advanced
account settings if you want to manually synchronize specific accounts
only.</p>
<p>You can use pull-down-to-refresh in a message list or use the folder
menu <em>Synchronize now</em> to manually synchronize messages.</p>
<p>If you want to synchronize some or all folders of an account
manually, just disable synchronization for the folders (but not of the
account).</p>
<p>Youll likely want to disabled <a href="#faq24">browse on server</a>
too.</p>
<p><br /></p>
<p><a name="faq80"></a> <strong><del>(80) How do I fix the error Unable
to load BODYSTRUCTURE?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq80">Google
Translate</a></p>
<p><del>The error message <em>Unable to load BODYSTRUCTURE</em> is
caused by bugs in the email server,</del> <del>see <a
href="https://javaee.github.io/javamail/FAQ#imapserverbug">here</a> for
more details.</del></p>
<p><del>FairEmail already tries to workaround these bugs, but if this
fail youll need to ask for support from your provider.</del></p>
<p><br /></p>
<p><a name="faq81"></a> <strong>(81) Can you make the background of the
original message view dark in dark themes?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq81">Google
Translate</a></p>
<p>The original message view will use a dark background when using a
dark theme for Android version 10 and later.</p>
<p><del>For Android before version 10 Google removed this feature from
the <a
href="https://play.google.com/store/apps/details?id=com.google.android.webview">Android
System WebView</a>,</del> <del>even though it worked fine in most
cases.</del> <del>Please see <a
href="https://issuetracker.google.com/issues/237785596">this issue</a>
(requires a Google account login) requesting to restore this feature
again for more information.</del></p>
<p><br /></p>
<p><a name="faq82"></a> <strong>(82) What is a tracking
image?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq82">Google
Translate</a></p>
<p>Please see <a
href="https://en.wikipedia.org/wiki/Web_beacon">here</a> about what a
tracking image exactly is. In short tracking images keep track if you
opened a message.</p>
<p>The BBC article <a
href="https://www.bbc.com/news/technology-56071437">Spy pixels in emails
have become endemic</a> is worth reading.</p>
<p>FairEmail will in most cases automatically recognize tracking images
and replace them by this icon:</p>
<p><img src="https://github.com/M66B/FairEmail/blob/master/images/baseline_my_location_black_48dp.png" width="48" height="48" /></p>
<p>Automatic recognition of tracking images can be disabled in the
privacy settings.</p>
<p><br /></p>
<p><a name="faq84"></a> <strong>(84) What are local contacts
for?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq84">Google
Translate</a></p>
<p>Local contact information is based on names and addresses found in
incoming and outgoing messages.</p>
<p>The main use of the local contacts storage is to offer auto
completion when no contacts permission has been granted to
FairEmail.</p>
<p>Another use is to generate <a href="#faq31">shortcuts</a> 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.</p>
<p>The list of contacts is sorted on number of times contacted and the
last time contacted.</p>
<p>By default only names and addresses to whom you send messages to will
be recorded. You can change this in the send settings.</p>
<p><br /></p>
<p><a name="faq85"></a> <strong>(85) Why is an identity not
available?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq85">Google
Translate</a></p>
<p>An identity is available for sending a new message or replying or
forwarding an existing message only if:</p>
<ul>
<li>the identity is set to synchronize (send messages)</li>
<li>the associated account is set to synchronize (receive messages)</li>
<li>the associated account has a drafts folder</li>
</ul>
<p>FairEmail will try to select the best identity based on the
<em>to</em> address of the message replied to / being forwarded.</p>
<p><br /></p>
<p><a name="faq86"></a> <strong><del>(86) What are extra privacy
features?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq86">Google
Translate</a></p>
<p><del>The advanced option <em>extra privacy features</em>
enables:</del></p>
<ul>
<li><del>Looking up the owner of the IP address of a link</del></li>
<li><del>Detection and removal of <a href="#faq82">tracking
images</a></del></li>
</ul>
<p><br /></p>
<p><a name="faq87"></a> <strong>(87) What does invalid credentials
mean?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq87">Google
Translate</a></p>
<p>The error message <em>invalid credentials</em> 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,
for example due to logging out.</p>
<p>If the password is incorrect/expired, you will have to update the
password in the account and/or identity settings.</p>
<p>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.</p>
<p>In the case of a Gmail account the error <em>Invalid credentials
(Failure)</em> can be the result of <em>accounts.google.com</em> being
blocked for the Android account manager, for example due to using a VPN,
firewall, ad blocker, or similar. So, try to disable all VPN based apps
or allow this address.</p>
<p><br /></p>
<p><a name="faq88"></a> <strong>(88) How can I use a Yahoo/AT&amp;T, AOL
or Sky account?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq88">Google
Translate</a></p>
<p>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).</p>
<p>To authorize a Yahoo/AT&amp;T, AOL, or Sky account you need to use an
app password instead of your normal account password. For instructions
about how to create an app password, please see here:</p>
<ul>
<li><a
href="https://help.yahoo.com/kb/generate-third-party-passwords-sln15241.html">for
Yahoo/AT&amp;T</a></li>
<li><a
href="https://help.aol.com/articles/Create-and-manage-app-password">for
AOL</a> <del><strong>Important</strong>: app password generation is
broken, <a
href="https://aol.uservoice.com/forums/912886-aol-mail/suggestions/45235399-i-wanted-to-generate-a-third-party-app-password-bu">frustrating
many people</a> because this means you can use the AOL app and the
browser only.</del></li>
<li><a
href="https://www.sky.com/help/articles/getting-started-with-sky-yahoo-mail">for
Sky</a> (under <em>Other email apps</em>)</li>
</ul>
<p>Please see <a href="#faq111">this FAQ</a> about OAuth support.</p>
<p>Note that Yahoo, AOL, and Sky do not support standard push messages.
The Yahoo email app uses a proprietary, undocumented protocol for push
messages.</p>
<p>Push messages require <a
href="https://en.wikipedia.org/wiki/IMAP_IDLE">IMAP IDLE</a> and the
Yahoo email server does not report IDLE as capability:</p>
<pre><code>Y1 CAPABILITY
* CAPABILITY IMAP4rev1 ID MOVE NAMESPACE XYMHIGHESTMODSEQ UIDPLUS LITERAL+ CHILDREN X-MSG-EXT UNSELECT OBJECTID
Y1 OK CAPABILITY completed</code></pre>
<p><br /></p>
<p><a name="faq89"></a> <strong>(89) How can I send plain text only
messages?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq89">Google
Translate</a></p>
<p>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 only messages,
you can enable this in the send options. You can enable/disable sending
plain text only messages in the send dialog on a case by case basis as
well. If you disabled the send dialog, you can long press the
<em>Send</em> button to show it again.</p>
<p><br /></p>
<p><a name="faq90"></a> <strong>(90) Why are some texts linked while not
being a link?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq90">Google
Translate</a></p>
<p>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 <a
href="https://en.wikipedia.org/wiki/List_of_Internet_top-level_domains">top
level domains</a> being words. This is why texts with dots are sometimes
incorrectly recognized as links, which is better than not recognizing
some links.</p>
<p>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
<em>very</em> complex and adding more protocols will make it only slower
and possibly cause errors.</p>
<p>Note that original messages are shown exactly as they are, which
means also that links are not automatically added.</p>
<p><br /></p>
<p><a name="faq91"></a> <strong><del>(91) Can you add periodical
synchronization to save battery power?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq91">Google
Translate</a></p>
<p><del>Synchronizing messages is an expensive proces because the local
and remote messages need to be compared,</del> <del>so periodically
synchronizing messages will not result in saving battery power, more
likely the contrary.</del></p>
<p><del>See <a href="#faq39">this FAQ</a> about optimizing battery
usage.</del></p>
<p><br /></p>
<p><a name="faq92"></a> <strong>(92) Can you add spam filtering,
verification of the DKIM signature and SPF authorization?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq92">Google
Translate</a></p>
<p>Spam filtering, verification of the <a
href="https://en.wikipedia.org/wiki/DomainKeys_Identified_Mail">DKIM</a>
signature and <a
href="https://en.wikipedia.org/wiki/Sender_Policy_Framework">SPF</a>
authorization is a task of email servers, not of an email client, which
is basically a viewer for messages on an email server. Servers generally
have more memory and computing power, so they are much better suited to
this task than battery-powered devices. Also, youll want spam filtered
for all your email clients, possibly including web email, not just for
one email client on one device. Moreover, email servers have access to
information, like the IP address, etc. of the connecting server, which
an email client has no access to. Furthermore, an email server can
inspect all messages of all email accounts, while an email client can
inspect messages in your email account only.</p>
<p>If you are receiving a significant amount of spam, the first thing
you should do is consider switching to another email provider. Some
email servers excell at filtering spam, and others are really bad at it.
Switching to another e-mail provider is no fun, but neither is wading
through piles of spam on a daily basis.</p>
<p>Spam filtering based on message headers might have been feasible, but
unfortunately this technique is <a
href="https://patents.google.com/patent/US7543076">patented by
Microsoft</a>.</p>
<p>Recent versions of FairEmail can filter spam to a certain extent
using a message classifier. Please see <a href="#faq163">this FAQ</a>
for more information about this.</p>
<p>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 <a href="#faq71">rules</a> too. Blocking the sender
will create a filter rule to automatically move future messages of the
same sender into the spam folder.</p>
<p>Note that the POP3 protocol gives access to the inbox only. So, it is
wont be possible to report spam for POP3 accounts.</p>
<p>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.</p>
<p>If you are wondering why a message was moved into the spam folder,
these are all possible reasons:</p>
<ul>
<li>The email server of your email provider moved the message into the
spam folder. The app cant undo this automatically because this can
result in an endless loop.</li>
<li>The message classifier (miscellaneous settings tab page) moved the
message into the spam folder.</li>
<li>A filter rule (navigation menu = left side menu of the start
screen), for example a block domain name rule, moved the message into
the spam folder.</li>
<li>An email address or a network address is on a block list (receive
settings tab page).</li>
</ul>
<p>Note that a sender will automatically be blocked when a message is
moved into the spam folder. You can disable this behavior by disabling
the option <em>Automatically block the sender when reporting spam</em>
in the behavior settings tab page.</p>
<p>Since version 1.2143, there is an “<em>Unblock all</em>” button in
the receive-settings tab page, which will reset all above options.</p>
<p>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.</p>
<p>Also, FairEmail can show a small red warning flag when DKIM, SPF or
<a href="https://en.wikipedia.org/wiki/DMARC">DMARC</a> authentication
failed on the receiving server. You can enable/disable <a
href="https://en.wikipedia.org/wiki/Email_authentication">authentication
verification</a> in the display settings. The feature depends on the
header <a
href="https://datatracker.ietf.org/doc/html/rfc7601">Authentication-Results</a>,
which the receiving email server should add. If the email server doesnt
add an <em>Authentication-Results</em>, which is optional, you can
enable native DKIM in the debug panel, which appears when you enable
debug mode in the miscellaneous settings tab page (last option). Please
be aware that this option will increase both data and battery usage.</p>
<p>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.</p>
<p>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 (since version 1.1506).</p>
<p>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 <a
href="https://www.mail-tester.com/">this tool</a> to check
authentication and other things.</p>
<p><br /></p>
<p><a name="faq93"></a> <strong>(93) Can you allow installation/data
storage on external storage media (sdcard)?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq93">Google
Translate</a></p>
<p>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 <a
href="https://developer.android.com/guide/topics/data/install-location">here</a>.</p>
<p>Since the app is small anyway and the data files will be stored in
the same place, the benefit would be limited anyway.</p>
<p>Messages, attachments, etc stored on external storage media, like an
sdcard, can be accessed by other apps and is therefore not safe. See <a
href="https://developer.android.com/training/data-storage">here</a> for
the details. Instead, consider to use <a
href="https://source.android.com/devices/storage/adoptable">adoptable
storage</a>.</p>
<p>Since version 1.1829 is it possible to store attachments to external
storage space private to the app (except for file managers) via an
option in the debug panel. You can enable the debug panel by enabling
debug mode in the miscellaneous settings (last option). To prevent
ongoing operations from storing attachments at the old location you
should disable receiving messages in the receive settings and wait until
all operations have been completed before changing this option. Please
be aware that removing the storage space will inevitably result in
problems, which is one of the reasons why this option is hidden.</p>
<p>Please note that more often than not the external storage space is
emulated on recent Android versions and recent devices. and that there
is no longer a viable way to get permission to write to other
locations.</p>
<p>Moving messages to an sdcard is not an option because this would
significantly reduce the response times of the app.</p>
<p>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.</p>
<p>If you need to save on storage space, you can limit the number of
days messages are being synchronized and kept on your device and disable
downloading and storing of message texts and attachments (which means
only message headers will be stored). You can change these settings by
long pressing a folder in the folder list and selecting <em>Edit
properties</em>.</p>
<p><br /></p>
<p><a name="faq94"></a> <strong>(94) What does the red/orange stripe at
the end of the header mean?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq94">Google
Translate</a></p>
<p>The red/orange stripe at the left side of the header means that the
DKIM, SPF or DMARC authentication failed. See also <a href="#faq92">this
FAQ</a>.</p>
<p><br /></p>
<p><a name="faq95"></a> <strong>(95) Why are not all apps shown when
selecting an attachment or image?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq95">Google
Translate</a></p>
<p>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.</p>
<p>If an app is listed depends on if the app implements a <a
href="https://developer.android.com/guide/topics/providers/document-provider">document
provider</a>. If the app is not listed, you might need to ask the
developer of the app to add support for the Storage Access
Framework.</p>
<p>Android Q will make it harder and maybe even impossible to directly
access files, see <a
href="https://developer.android.com/preview/privacy/scoped-storage">here</a>
and <a
href="https://www.xda-developers.com/android-q-storage-access-framework-scoped-storage/">here</a>
for more details.</p>
<p>If you use MIUI, please make sure <a
href="https://android.stackexchange.com/questions/191228/what-is-miui-optimization">MIUI
optimization</a> is enabled in the developer settings. You can enable
the developer options by tapping a few times on the MIUI version number
in the settings, About phone.</p>
<p><br /></p>
<p><a name="faq96"></a> <strong>(96) Where can I find the IMAP and SMTP
settings?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq96">Google
Translate</a></p>
<p>The IMAP settings are part of the (custom) account settings and the
SMTP settings are part of the identity settings.</p>
<p><br /></p>
<p><a name="faq97"></a> <strong>(97) What is cleanup?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq97">Google
Translate</a></p>
<p>About each four hours FairEmail runs a cleanup job that:</p>
<ul>
<li>Removes old message texts</li>
<li>Removes old attachment files</li>
<li>Removes old image files</li>
<li>Removes old local contacts</li>
<li>Removes old log entries</li>
</ul>
<p>Note that the cleanup job will only run when the synchronize service
is active.</p>
<p><br /></p>
<p><a name="faq98"></a> <strong>(98) Why can I still pick contacts after
revoking contacts permissions?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq98">Google
Translate</a></p>
<p>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.</p>
<p><br /></p>
<p><a name="faq99"></a> <strong>(99) Can you add a rich text or markdown
editor?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq99">Google
Translate</a></p>
<p>FairEmail provides common text formatting (bold, italic, underline,
text size and color) via a toolbar that appears after selecting some
text.</p>
<p>A <a href="https://en.wikipedia.org/wiki/Formatted_text">Rich
text</a> or <a
href="https://en.wikipedia.org/wiki/Markdown">Markdown</a> editor would
not be used by many people on a small mobile device and, more important,
Android doesnt support a rich text editor and most rich text editor
open source projects are abandoned. See <a
href="https://forum.xda-developers.com/showpost.php?p=79061829&amp;postcount=4919">here</a>
for some more details about this.</p>
<p><br /></p>
<p><a name="faq100"></a> <strong>(100) How can I synchronize Gmail
categories?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq100">Google
Translate</a></p>
<p>You can synchronize Gmail categories by creating filters to label
categorized messages:</p>
<ul>
<li>Create a new filter via Gmail &gt; Settings wheel &gt; See all
settings &gt; Filters and Blocked Addresses &gt; Create a new
filter</li>
<li>Enter a category search (see below) in the <em>Has the words</em>
field and click <em>Create filter</em></li>
<li>Check <em>Apply the label</em> and select a label and click
<em>Create filter</em></li>
</ul>
<p>Possible categories:</p>
<pre><code>category:social
category:updates
category:forums
category:promotions</code></pre>
<p>Documentation: <a
href="https://support.google.com/mail/answer/7190">see here</a>.</p>
<p>Unfortunately, this is not possible for the snoozed messages
folder.</p>
<p>You can use <em>Force sync</em> 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.</p>
<p><br /></p>
<p><a name="faq101"></a> <strong>(101) What does the blue/orange dot at
the bottom of the conversations mean?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq101">Google
Translate</a></p>
<p>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.</p>
<p>The dot is disabled by default and can be enabled with the display
settings <em>Show relative conversation position with a dot</em>.</p>
<p><br /></p>
<p><a name="faq102"></a> <strong>(102) How can I enable auto rotation of
images?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq102">Google
Translate</a></p>
<p>Images will automatically be rotated when automatic resizing of
images is enabled in the settings (enabled by default). However,
automatic rotating depends on the <a
href="https://en.wikipedia.org/wiki/Exif">Exif</a> 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.</p>
<p>Note that only <a href="https://en.wikipedia.org/wiki/JPEG">JPEG</a>
and <a
href="https://en.wikipedia.org/wiki/Portable_Network_Graphics">PNG</a>
images can contain Exif information.</p>
<p><br /></p>
<p><a name="faq104"></a> <strong>(104) What do I need to know about
error reporting?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq104">Google
Translate</a></p>
<ul>
<li>Error reports will help improve FairEmail</li>
<li>Error reporting is optional and opt-in</li>
<li>Error reporting can be enabled/disabled via the
<em>miscellaneous</em> settings tab page</li>
<li>Error reports will automatically be sent anonymously to <a
href="https://www.bugsnag.com/">Bugsnag</a></li>
<li><a
href="https://docs.bugsnag.com/platforms/android/configuration-options/#telemetry">Telemetry</a>
is always disabled</li>
<li>Bugsnag for Android is <a
href="https://github.com/bugsnag/bugsnag-android">open source</a></li>
<li>See <a
href="https://docs.bugsnag.com/platforms/android/automatically-captured-data/">here</a>
about what data will be sent in case of errors</li>
<li>See <a
href="https://docs.bugsnag.com/legal/privacy-policy/">here</a> for the
privacy policy of Bugsnag</li>
<li>Error reports will be sent to <em>sessions.bugsnag.com:443</em> and
<em>notify.bugsnag.com:443</em></li>
</ul>
<p>Error reports have helped to find otherwise hard to find bugs and
therefore improve the overall stability of the app.</p>
<p><br /></p>
<p><a name="faq105"></a> <strong>(105) How does the roam-like-at-home
option work?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq105">Google
Translate</a></p>
<p>FairEmail will check if the country code of the SIM card and the
country code of the network are in the <a
href="https://en.wikipedia.org/wiki/European_Union_roaming_regulations#Territorial_extent">EU
roam-like-at-home countries</a> and assumes no roaming if the country
codes are equal and the advanced roam-like-at-home option is
enabled.</p>
<p>So, you dont have to disable this option if you dont have an EU SIM
or are not connected to an EU network.</p>
<p><br /></p>
<p><a name="faq106"></a> <strong>(106) Which launchers can show a badge
count with the number of unread messages?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq106">Google
Translate</a></p>
<p>Please <a
href="https://github.com/leolin310148/ShortcutBadger#supported-launchers">see
here</a> for a list of launchers which can show the number of unread
messages. Standard Android <a
href="https://developer.android.com/training/notify-user/badges">does
not support this</a>.</p>
<p>Note that Nova Launcher requires Tesla Unread, which is <a
href="https://forum.xda-developers.com/android/general/bad-news-tesla-unread-devoloper-t3920415">not
supported anymore</a>.</p>
<p>Note that the notification setting <em>Show launcher icon with number
of new messages</em> needs to be enabled (default enabled).</p>
<p>Only <em>new</em> 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.</p>
<p>Depending on what you want, the notification settings <em>Let the
number of new messages match the number of notifications</em> 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.</p>
<p>This feature depends on support of your launcher. FairEmail merely
broadcasts the number of unread messages using the ShortcutBadger
library. If it doesnt work, this cannot be fixed by changes in
FairEmail.</p>
<p>An alternative is to use the unread messages count home screen
widget. You can add this widget by long pressing on an empty place on
the home screen.</p>
<p>If you are using Nova launcher and you want to show the number of
notifications in the launcher icon (maximum 10; imposed by Nova
launcher), youll need to enable <em>Notification access</em> in the
Android <em>Special app access</em> settings for Nova launcher on recent
Android versions.</p>
<p>Some launchers display a dot or a 1 for <a href="#faq2">the
monitoring notification</a>, despite FairEmail explicitly requesting not
to show a <em>badge</em> 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.</p>
<p>FairEmail does send a new message count <em>broadcast</em> intent as
well:</p>
<pre><code>eu.faircode.email.NEW_MESSAGE_COUNT</code></pre>
<p>The number of new, unread messages will be in an integer
<em>count</em>” parameter.</p>
<p><br /></p>
<p><a name="faq107"></a> <strong>(107) How do I use colored
stars?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq107">Google
Translate</a></p>
<p>You can set a colored star via the <em>more</em> message menu, via
multiple selection (started by long pressing a message), by long
pressing a star in a conversation or automatically by using <a
href="#faq71">rules</a>.</p>
<p>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.</p>
<p>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.</p>
<p><br /></p>
<p><a name="faq108"></a> <strong><del>(108) Can you add permanently
delete messages from any folder?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq108">Google
Translate</a></p>
<p><del>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.</del> <del>You can permanently delete messages from the trash
folder.</del> <del>Permanently delete messages from other folders would
defeat the purpose of the trash folder, so this will not be
added.</del></p>
<p><br /></p>
<p><a name="faq109"></a> <strong><del>(109) Why is select account
available in official versions only?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq109">Google
Translate</a></p>
<p><del>Using <em>select account</em> to select and authorize Google
accounts require special permission from Google for security and privacy
reasons.</del> <del>This special permission can only be acquired for
apps a developer manages and is responsible for.</del> <del>Third party
builds, like the F-Droid builds, are managed by third parties and are
the responsibility of these third parties.</del> <del>So, only these
third parties can acquire the required permission from Google.</del>
<del>Since these third parties do not actually support FairEmail, they
are most likely not going to request the required permission.</del></p>
<p><del>You can solve this in two ways:</del></p>
<ul>
<li><del>Switch to the official version of FairEmail, see <a
href="https://github.com/M66B/FairEmail/blob/master/README.md#downloads">here</a>
for the options</del></li>
<li><del>Use app specific passwords, see <a href="#faq6">this
FAQ</a></del></li>
</ul>
<p><del>Using <em>select account</em> in third party builds is not
possible in recent versions anymore.</del> <del>In older versions this
was possible, but it will now result in the error
<em>UNREGISTERED_ON_API_CONSOLE</em>.</del></p>
<p><br /></p>
<p><a name="faq110"></a> <strong>(110) Why are (some) messages empty
and/or attachments corrupt?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq110">Google
Translate</a></p>
<p>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
<em>Partial fetch</em> in the advanced account settings:</p>
<p>Settings &gt; Manual setup &gt; Accounts &gt; tap account &gt; tap
advanced &gt; Partial fetch &gt; uncheck</p>
<p>After disabling this setting, you can use the message more (three
dots) menu to resync empty messages. Alternatively, you can <em>Delete
local messages</em> by long pressing the folder(s) in the folder list
and synchronize all messages again.</p>
<p>Disabling <em>Partial fetch</em> will result in more memory
usage.</p>
<p><br /></p>
<p><a name="faq111"></a> <strong>(111) Is OAuth supported?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq111">Google
Translate</a></p>
<p>OAuth for Gmail is supported via the quick setup wizard. <del>The
Android account manager will be used to fetch and refresh OAuth tokens
for selected on-device accounts.</del> <del>OAuth for non on-device
accounts is not supported</del> <del>because Google requires a <a
href="https://support.google.com/cloud/answer/9110914">yearly security
audit</a> ($15,000 to $75,000) for this.</del> <del>Since FairEmail is
basically offered free of charge, it is not an option to pay such an
amount annually for a security audit.</del> <del>You can read more about
this <a
href="https://www.theregister.com/2019/02/11/google_gmail_developer/">here</a>.</del></p>
<p>OAuth for Outlook/Office 365, Yahoo, Mail.ru and Yandex is supported
via the quick setup wizard.</p>
<p>The OAuth <a href="https://oauth.faircode.eu/">jump page</a> exists
for when <a
href="https://developer.android.com/training/app-links/verify-site-associations">Android
App Links</a> are not available, for example when using a non Play store
version of the app, or do not work for some reason.</p>
<p>OAuth is not supported for third party builds like the F-Droid build,
please <a href="#faq147">see here</a> about why not.</p>
<p>Since version 1.1859 there is support for custom OAuth. To use custom
OAuth, an XML file containing the server and OAuth data, like the client
secret, should be created and imported. Please <a
href="https://github.com/M66B/FairEmail/blob/master/app/src/main/res/xml/providers.xml">see
here</a> about how the XML file should look like. The XML file can be
imported via a button in the debug panel of the miscellaneous settings
of the app. To show the debug panel, debug mode mode should temporarily
be enabled. After importing, you can use the quick setup wizard to
configure an account.</p>
<p><br /></p>
<p><a name="faq112"></a> <strong>(112) Which email provider do you
recommend?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq112">Google
Translate</a></p>
<p>FairEmail is an email client only, so you need to bring your own
email address. Note that this is clearly mentioned in the app
description.</p>
<p>There are plenty of email providers to choose from. Which email
provider is best for you depends on your wishes/requirements. Please see
these websites for lists of privacy oriented email providers with
advantages and disadvantages:</p>
<ul>
<li><a href="https://restoreprivacy.com/secure-email/">Restore
privacy</a></li>
<li><a href="https://www.privacyguides.org/email/">Privacy
Guides</a></li>
<li><a href="https://www.privacytools.io/providers/email/">Privacy
Tools</a></li>
</ul>
<p><strong>Important</strong>: Some providers, like ProtonMail and
Tutanota, use proprietary email protocols, which make it impossible to
use third party email apps. Please see <a href="#faq129">this FAQ</a>
for more information.</p>
<p>Using your own (custom) domain name, which is supported by most email
providers, will make it easier to switch to another email provider.</p>
<p><br /></p>
<p><a name="faq113"></a> <strong>(113) How does biometric authentication
work?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq113">Google
Translate</a></p>
<p>If your device has a biometric sensor, for example a fingerprint
sensor, you can enable/disable biometric authentication in the
navigation (hamburger) menu of the settings screen. 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 wont be
visible on the Android recents screen.</p>
<p>Biometric authentication is meant to prevent others from seeing your
messages only. FairEmail relies on device encryption for data
encryption, see also <a href="#faq37">this FAQ</a>.</p>
<p>Biometric authentication is a pro feature.</p>
<p><br /></p>
<p><a name="faq114"></a> <strong>(114) Can you add an import for the
settings of other email apps?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq114">Google
Translate</a></p>
<p>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.</p>
<p><br /></p>
<p><a name="faq115"></a> <strong><del>(115) Can you add email address
chips?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq115">Google
Translate</a></p>
<p><del>Email address <a
href="https://material.io/design/components/chips.html">chips</a> look
nice, but cannot be edited,</del> <del>which is quite inconvenient when
you made a typo in an email address.</del></p>
<p><del>Note that FairEmail will select the address only when long
pressing an address, which makes it easy to delete an address.</del></p>
<p><del>Chips are not suitable for showing in a list</del> <del>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.</del></p>
<p><del>Reverted <a
href="https://github.com/M66B/FairEmail/commit/2c80c25b8aa75af2287f471b882ec87d5a5a5015">commit</a>.</del></p>
<p><br /></p>
<p><a name="faq116"></a> <strong><del>(116) How can I show images in
messages from trusted senders by default?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq116">Google
Translate</a></p>
<p><del>You can show images in messages from trusted senders by default
by enabled the display setting <em>Automatically show images for known
contacts</em>.</del></p>
<p><del>Contacts in the Android contacts list are considered to be known
and trusted,</del> <del>unless the contact is in the group / has the
label <em>Untrusted</em> (case insensitive).</del></p>
<p><br /></p>
<p><a name="faq38"></a> <a name="faq117"></a> <strong>(117) How can I
restore a purchase (on another device) ?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq117">Google
Translate</a></p>
<p>Firstly, a purchase will be available on all devices logged into the
same Google account, <em>if</em> (this is important) the app is
installed via the same Google account too. You can select the account in
the Play store app by tapping on the avatar at the top right, but only
<em>before</em> installing the app. It is not possible to change the
linked Google account after the app has been installed.</p>
<p>Google manages all purchases, so as a developer I have little control
over purchases. So, basically, the only thing I can do, is suggest some
things:</p>
<ul>
<li>Make sure you have an active, working internet connection, and turn
off any VPN based app because it might prevent the Play store from
checking purchases</li>
<li>Make sure you are logged in with the right Google account and that
there is nothing wrong with your Google account</li>
<li>Make sure you installed FairEmail via the right Google account if
you configured multiple Google accounts on your device (you might need
to reinstall the app)</li>
<li>Make sure the Play store app is up to date, please <a
href="https://support.google.com/googleplay/answer/1050566?hl=en">see
here</a></li>
<li>Open the Play store app and wait at least a minute to give it time
to synchronize with the Google servers</li>
<li>Open FairEmail and navigate to the pro features screen to let
FairEmail check the purchases; sometimes it helps to tap the
<em>buy</em> button</li>
</ul>
<p>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.</p>
<p>Note that:</p>
<ul>
<li>If you get <em>ITEM_ALREADY_OWNED</em>, the Play store app probably
needs to be updated, please <a
href="https://support.google.com/googleplay/answer/1050566?hl=en">see
here</a></li>
<li>If you get <em>BILLING_UNAVAILABLE Google Play In-app Billing API
version is less than 3</em>, the Play store app might not be logged into
the account used to install the app</li>
<li>Purchases are stored in the Google cloud and cannot get lost</li>
<li>There is no time limit on purchases, so they cannot expire</li>
<li>Google does not expose details (name, e-mail, etc) about buyers to
developers</li>
<li>An app like FairEmail cannot select which Google account to use</li>
<li>It may take a while until the Play store app has synchronized a
purchase to another device</li>
<li>Play Store purchases cannot be used without the Play Store
app/services</li>
<li>Play Store purchases cannot be transferred to another account</li>
<li>You cant restore purchases with <a
href="https://microg.org/">microG</a></li>
</ul>
<p>Please <a
href="https://support.google.com/googleplay/answer/4646404">see here</a>
about how to add, remove, or edit your Google Play payment method.</p>
<p>If you cannot restore a purchase, please contact me via <a
href="https://contact.faircode.eu/?product=fairemailsupport">this
contact form</a>, mentioning the email address of the Google account
used for the purchase.</p>
<p><br /></p>
<p><a name="faq118"></a> <strong>(118) What does Remove tracking
parameters exactly?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq118">Google
Translate</a></p>
<p>Checking <em>Remove tracking parameters</em> will remove all <a
href="https://en.wikipedia.org/wiki/UTM_parameters">UTM parameters</a>
from a link.</p>
<p><br /></p>
<p><a name="faq119"></a> <strong><del>(119) Can you add colors to the
unified inbox widget?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq119">Google
Translate</a></p>
<p><del>The widget is designed to look good on most home/launcher
screens by making it monochrome and by using a half transparent
background.</del> <del>This way the widget will nicely blend in, while
still being properly readable.</del></p>
<p><del>Adding colors will cause problems with some backgrounds and will
cause readability problems, which is why this wont be added.</del></p>
<p>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.</p>
<p><br /></p>
<p><a name="faq120"></a> <strong>(120) Why are new message notifications
not removed on opening the app?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq120">Google
Translate</a></p>
<p>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.</p>
<p>On Android 7 Nougat and later new message notifications will be <a
href="https://developer.android.com/training/notify-user/group">grouped</a>.
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 <a
href="#faq70">this FAQ</a> about when messages in a conversation will be
auto expanded and marked read.</p>
<p><br /></p>
<p><a name="faq121"></a> <strong>(121) How are messages grouped into a
conversation?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq121">Google
Translate</a></p>
<p>By default FairEmail groups messages in conversations. This can be
turned of in the display settings.</p>
<p>FairEmail groups messages based on the standard <em>Message-ID</em>,
<em>In-Reply-To</em> and <em>References</em> 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.</p>
<p><br /></p>
<p><a name="faq122"></a> <strong><del>(122) Why is the recipient
name/email address show with a warning color?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq122">Google
Translate</a></p>
<p><del>The recipient name and/or email address in the addresses section
will be shown in a warning color</del> <del>when the sender domain name
and the domain name of the <em>to</em> address do not match.</del>
<del>Mostly this indicates that the message was received <em>via</em> an
account with another email address.</del></p>
<p><br /></p>
<p><a name="faq123"></a> <strong>(123) What will happen when FairEmail
cannot connect to an email server?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq123">Google
Translate</a></p>
<p>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 or aborting 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 5, 15, 30 and eventually every 60 minutes and let the device sleep
(=no battery usage).</p>
<p>By temporarily enabling debug mode in the miscellaneous settings, you
can disable this logarithmic back-off scheme (since version 1.1855).
This will result in using a linear back-off scheme, which means that
after each successive failure the waiting time will be increased by 1
minute the first 5 minutes and thereafter by 5 minutes up to 60 minutes.
This might increase the battery usage significantly!</p>
<p>Note that <a
href="https://developer.android.com/training/monitoring-device-state/doze-standby">Android
doze mode</a> does not allow to wake the device earlier than after 15
minutes when doze mode is active.</p>
<p><em>Force sync</em> in the three-dots menu of the unified inbox can
be used to let FairEmail attempt to reconnect without waiting.</p>
<p>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.</p>
<p>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.</p>
<p><br /></p>
<p><a name="faq124"></a> <strong>(124) Why do I get Message too large
or too complex to display?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq124">Google
Translate</a></p>
<p>The message <em>Message too large or too complex to display</em> 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.</p>
<p><br /></p>
<p><a name="faq125"></a> <strong>(125) What are the current experimental
features?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq125">Google
Translate</a></p>
<p><em>Send hard bounce (version 1.1477+)</em></p>
<p>Send a <a href="https://tools.ietf.org/html/rfc3464">Delivery Status
Notification</a> (=hard bounce) via the reply/answer menu.</p>
<p>Hard bounces will mostly be processed automatically because they
affect the reputation of the email provider. The bounce address
(=<em>Return-Path</em> header) is mostly very specific, so the email
server can determine the sending account.</p>
<p>Some email servers, reportedly the Outlook.com email server, respond
with a hard bounce to a hard bounce. In other words, hard bounces are
being rejected.</p>
<p>For some background, see for <a
href="https://en.wikipedia.org/wiki/Bounce_message">this Wikipedia
article</a>.</p>
<p><br /></p>
<p><em>Resend (version 1.1788+)</em></p>
<p>Resend a message as defined in <a
href="https://datatracker.ietf.org/doc/html/rfc2822#section-3.6.6">rfc2822
section 3.6.6</a> via the reply/answer menu.</p>
<p>To resend a message, the original message headers are required. You
can enable downloading of messages headers for all messages in the
connection settings of the app. Alternative, you can show messages
headers via the horizontal three-dots menu just above the message text
to download the message headers for a single message. The resend menu
item will be shown grayed (dimmed) if the message headers are not
available (yet).</p>
<p>Remarks:</p>
<ul>
<li>Messages to, CC or BCC <em>undisclosed-recipients:</em> cannot be
resend</li>
<li>The original subject is sent as-is, unless it is being changed</li>
<li>The original message text will be sent as-is, unless text is being
entered</li>
<li>The original attachments are sent as they are, unless attachments
are being added or removed</li>
<li>Default CC and BCC addresses will not be applied</li>
<li>Read and delivery receipts will be requested when enabled, they
could go to the original sender or to you</li>
<li>The email server might refuse or incorrectly process resent
messages</li>
<li>DKIM, SPF and DMARC will likely fail, often causing resent messages
to be considered as spam</li>
</ul>
<p><br /></p>
<p><em>Process delivery/read receipt (version 1.1797+)</em></p>
<p>On receiving a delivery or read receipt, the related message will be
looked up in the sent messages folder and the following keywords will be
set depending on the contents of the report:</p>
<pre><code>$Delivered
$NotDelivered
$Displayed
$NotDisplayed</code></pre>
<ul>
<li>Delivered: action = <em>delivered</em>, <em>relayed</em>, or
<em>expanded</em>, <a
href="https://datatracker.ietf.org/doc/html/rfc3464#section-2.3.3">see
here</a></li>
<li>Displayed: disposition = <em>displayed</em>, <a
href="https://datatracker.ietf.org/doc/html/rfc3798#section-3.2.6">see
here</a></li>
</ul>
<p>It is probably a good idea to enable <em>Show keywords in message
header</em> in the display settings.</p>
<p>Note that the email server needs to support IMAP flags (keywords) for
this feature.</p>
<p>Rules will be applied to the received receipt, so it is possible to
move/archive the receipt. See <a href="#faq71">this FAQ</a> for a header
condition to recognize receipts.</p>
<p><br /></p>
<p><em>Block toolbar (version 1.1967+)</em></p>
<p>When enabled in the three-dots overflow menu of the message editor, a
toolbar to perform operations (align text, insert list, indent text,
insert blockquote) on a block of text (consecutive non-empty lines) will
be shown.</p>
<p><br /></p>
<p><em>Edit subject (1.2046+)</em></p>
<p>The subject of a received message can be edited, also on the email
server, via the horizontal three-dots button just above the message text
near the left side of the screen.</p>
<p><br /></p>
<p><a name="faq126"></a> <strong>(126) Can message previews be sent to
my smartwatch?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq126">Google
Translate</a></p>
<p>FairEmail fetches a message in two steps:</p>
<ol type="1">
<li>Fetch message headers</li>
<li>Fetch message text and attachments</li>
</ol>
<p>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 existing notifications with a preview of the message
text, but unfortunately smartwatch notifications cannot be updated.</p>
<p>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 smartwatch.</p>
<p>If you think this is good enough, you can enable the notification
option <em>Only send notifications with a message preview to
smartwatches</em> and if this does not work, you can try to enable the
notification option <em>Show notifications with a preview text
only</em>. Note that this applies to smartwatches not showing a preview
text too, even when the Android Wear app says the notification has been
sent (bridged).</p>
<p>If you want to have the full message text sent to your smartwatch,
you can enable the notification option <em>Preview all text</em>. Note
that some smartwatches are known to crash with this option enabled.</p>
<p>If you use a Samsung smartwatch with the Galaxy smartwatch (Samsung
Gear) app, you might need to enable notifications for FairEmail when the
setting <em>Notifications</em>, <em>Apps installed in the future</em> is
turned off in this app.</p>
<p>Some companion apps ignore <a
href="https://developer.android.com/training/wearables/notifications/bridger#non-bridged">local
only</a> notifications, causing the summary notification (<em>nnn new
messages</em>) to be bridged. Unfortunately, it is not possible to
workaround this problem.</p>
<p>Some smartwatches do not display notifications with non-<a
href="https://en.wikipedia.org/wiki/ASCII">ASCII</a> characters, in
which can you can enable the option <em>ASCII text only</em> in the
display settings tab page.</p>
<p>Ongoing notifications shouldnt be bridged, but some companion apps
bridge all notifications. This results in the “monitoring” status bar
notification to be bridged. The workaround is to disable this
notification, see <a href="#faq2">this FAQ</a>.</p>
<p><br /></p>
<p><a name="faq127"></a> <strong>(127) How can I fix Syntactically
invalid HELO argument(s)?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq127">Google
Translate</a></p>
<p>The error <em>… Syntactically invalid HELO argument(s) …</em> 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 <em>Use local IP address instead of host name</em>.</p>
<p><br /></p>
<p><a name="faq128"></a> <strong>(128) How can I reset asked questions,
for example to show images?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq128">Google
Translate</a></p>
<p>You can reset asked questions via the three dots overflow menu in the
miscellaneous settings.</p>
<p><br /></p>
<p><a name="faq129"></a> <strong>(129) Are ProtonMail, Tutanota, etc
supported?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq129">Google
Translate</a></p>
<p><strong>ProtonMail</strong> uses a proprietary email protocol and <a
href="https://protonmail.com/support/knowledge-base/imap-smtp-and-pop3-setup/">does
not directly support IMAP</a>, so you cannot use FairEmail or any other
Android email client to access ProtonMail.</p>
<p><strong>Tutanota</strong> uses a proprietary email protocol and <a
href="https://tutanota.com/faq/#imap">does not support IMAP</a>, so you
cannot use FairEmail or any other email client to access Tutanota.</p>
<p><strong>Cyberfear</strong> does not support IMAP, so youll need to
manually configure a POP3 account.</p>
<p><strong>Skiff</strong> uses a proprietary email protocol and <a
href="https://www.skiff.com/blog/tutanota-alternatives-comparison">does
not support IMAP</a> so you cannot use FairEmail or any other email
client to access Skiff.</p>
<p><strong>Tildamail</strong> uses a proprietary email protocol and does
not support IMAP, so you cannot use FairEmail or any other email client
to access Tildamail.</p>
<p><strong>Criptext</strong> uses a proprietary email protocol and <a
href="https://www.reddit.com/r/privacy/comments/chs82k/comment/ewrxxcn/">does
not directly support IMAP</a>, so you cannot use FairEmail or any other
email email client to access Criptext.</p>
<p><strong>OnMail</strong> uses a proprietary email protocol and <a
href="https://support.onmail.com/hc/en-us/articles/360048879012-How-do-I-connect-my-OnMail-address-to-a-third-party-email-app-">does
not support IMAP</a>, so you cannot use FairEmail or any other email
client to access OnMail, except for one (but please read the privacy
policy carefully).</p>
<p><br /></p>
<p><a name="faq130"></a> <strong>(130) What does message error …
mean?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq130">Google
Translate</a></p>
<p>If you dont understand an error, please <a
href="https://contact.faircode.eu/?product=fairemailsupport">contact
me</a> for support.</p>
<p>The warning <em>No server found at …</em> 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.</p>
<p>The error <em>… ParseException …</em> 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.</p>
<p>The error <em>…SendFailedException…</em> 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.</p>
<p>The warning <em>Message too large to fit into the available
memory</em> 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.</p>
<p>Please see <a href="#faq22">here</a> for other error messages.</p>
<p><br /></p>
<p><a name="faq131"></a> <strong>(131) Can you change the direction for
swiping to previous/next message?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq131">Google
Translate</a></p>
<p>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.</p>
<p>This behavior seems quite natural to me, also because it is similar
to turning pages.</p>
<p>Anyway, there is a behavior setting to reverse the swipe
direction.</p>
<p><br /></p>
<p><a name="faq132"></a> <strong>(132) Why are new message notifications
silent?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq132">Google
Translate</a></p>
<p>Notifications are silent by default on some MIUI versions. Please see
<a href="http://en.miui.com/thread-3930694-1-1.html">here</a> how you
can fix this.</p>
<p>There is a bug in some Android versions causing <a
href="https://developer.android.com/reference/android/app/Notification.Builder#setOnlyAlertOnce(boolean)">setOnlyAlertOnce</a>
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.</p>
<p>Android might rate limit the notification sound, which can cause some
new message notifications to be silent.</p>
<p><br /></p>
<p><a name="faq133"></a> <strong>(133) Why is ActiveSync ™ not
supported?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq133">Google
Translate</a></p>
<p>The Microsoft Exchange ActiveSync ™ protocol <a
href="https://en.wikipedia.org/wiki/Exchange_ActiveSync#Licensing">is
patented</a> and Microsoft doesnt give out licenses anymore. Therefore,
it isnt possible to support ActiveSync ™ anymore. For this same reason,
you wont find many, if any, other email clients supporting ActiveSync
™.</p>
<p>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.</p>
<p><br /></p>
<p><a name="faq134"></a> <strong>(134) Can you add leave messages on the
server?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq134">Google
Translate</a></p>
<p><em>POP3</em></p>
<p>In the account settings (Settings, tap Manual setup, tap Accounts,
tap account) you can enable <em>Leave messages on server</em> and
<em>Leave deleted messages on server</em>.</p>
<p><em>IMAP</em></p>
<p>Since the IMAP protocol is meant to synchronize two ways, from server
to client and from client to server, trashing (=move to trash) and
(permanently) deleting messages will be performed on the email server
too, so that the message list is the same for all connected clients.
Deleting a message from the device only wont work because it would be
synchronized again later.</p>
<p>Some email apps pretend they can do this, but, in fact, messages are
hidden on the device. FairEmail can do this too, but in a more explicit
way, also allowing you to show the messages again.</p>
<p>You can hide messages either via the three-dots menu in the action
bar just above the message text (you can configure a button for this via
the same menu) or by multiple selecting messages in the message
list.</p>
<p>Alternatively, you can disable AUTO EXPUNGE, which will result in
marking messages being deleted on the server (by setting the
<em>deleted</em> flag), but not expunging (deleting) them. You can find
this option in the debug panel, which can be shown by (temporarily)
enabling debug mode in the miscellaneous settings.</p>
<p>Note that it is possible to set the swipe left or right action to
hide a message. There is a button in the behavior settings to quickly
configure the swipe left and right actions for all IMAP accounts.</p>
<p><br /></p>
<p><a name="faq135"></a> <strong>(135) Why are trashed messages and
drafts shown in conversations?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq135">Google
Translate</a></p>
<p>Individual messages will rarely be trashed and mostly this happens by
accident. Showing trashed messages in conversations makes it easier to
find them back.</p>
<p>You can permanently delete a message using the message three-dots
<em>delete</em> menu, which will remove the message from the
conversation. Note that this is irreversible.</p>
<p>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.</p>
<p><br /></p>
<p><a name="faq136"></a> <strong>(136) How can I delete an
account/identity/folder?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq136">Google
Translate</a></p>
<p>Deleting an account/identity/folder is a little bit hidden to prevent
accidents.</p>
<ul>
<li>Account: Settings &gt; Manual setup &gt; Accounts &gt; tap
account</li>
<li>Identity: Settings &gt; Manual setup &gt; Identities &gt; tap
identity</li>
<li>Folder: Long press the folder in the folder list &gt; Edit
properties</li>
</ul>
<p>In the three-dots overflow menu at the top right there is an item to
delete the account/identity/folder.</p>
<p><br /></p>
<p><a name="faq137"></a> <strong>(137) How can I reset Dont ask
again?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq137">Google
Translate</a></p>
<p>You can reset all questions set to be not asked again in the
miscellaneous settings.</p>
<p><br /></p>
<p><a name="faq138"></a> <strong>(138) Can you add
calendar/contact/tasks/notes management?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq138">Google
Translate</a></p>
<p>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.</p>
<p>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.</p>
<p>You are advised to use the excellent, open source <a
href="https://f-droid.org/packages/at.bitfire.davdroid/">DAVx⁵</a> app
to synchronize/manage your calendars/contacts.</p>
<p>If you want to synchronize Outlook contacts and you have access to
Google Workspace, please <a
href="https://support.google.com/a/users/answer/156595">see here</a>
about how you can set up contact syncing.</p>
<p>Most providers support exporting your contacts. Please <a
href="https://support.google.com/contacts/answer/1069522">see here</a>
about how you can import contacts if synchronizing is not possible.</p>
<p>Note that FairEmail does support replying to calendar invites (a pro
feature) and adding calendar invites to your personal calendar.</p>
<p><br /></p>
<p><a name="faq83"></a> <a name="faq139"></a> <strong>(139) How do I fix
User is authenticated but not connected?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq139">Google
Translate</a></p>
<p>The confusing Microsoft specific server error <em>User is
authenticated but not connected</em> might occur if:</p>
<ul>
<li>External access is administratively disabled, please see <a
href="https://docs.microsoft.com/en-us/exchange/clients-and-mobile-in-exchange-online/client-access-rules/client-access-rules">this
article</a> about how an administrator can enable it again</li>
<li>SMTP is administratively disabled, please see <a
href="https://docs.microsoft.com/en-us/exchange/clients-and-mobile-in-exchange-online/authenticated-client-smtp-submission">this
article</a> about how an administrator can enable it again</li>
<li>Required server components are disabled, please see <a
href="https://learn.microsoft.com/en-us/exchange/troubleshoot/user-and-shared-mailboxes/pop3-imap-owa-activesync-office-365">this
article</a> about enabling IMAP, MAPI, etc.</li>
<li>Push messages are enabled for too many folders: see <a
href="#faq23">this FAQ</a> for more information and a workaround</li>
<li>There were too many login attempts in a too short time, for example
by using multiple email clients at the same time</li>
<li>The wrong account was selected in the Microsoft account selector,
for example an account with a different email address or a personal
instead of a business account</li>
<li>An ad blocker or DNS changer is being used</li>
<li>Devices in another time zone are connected to the same account</li>
<li>A security policy is blocking the login, for example because only
specific network connections are allowed</li>
<li>There is a problem with the Exchange server license: it might be
expired or for another server edition</li>
<li>An alias email address is being used as username instead of the
primary email address</li>
<li>An incorrect login scheme is being used for a shared mailbox: the
right scheme is *username@domain</li>
</ul>
<p>The shared mailbox alias will mostly be the email address of the
shared account, like this:</p>
<pre><code>you@example.com\shared@example.com</code></pre>
<p>Note that it should be a backslash and not a forward slash.</p>
<p>The Outlook/Office 365 quick setup wizard supports setting up shared
mailboxes.</p>
<p>When using a shared mailbox, you might want to enable the option
<em>Synchronize shared folder lists</em> in the receive settings.</p>
<p>Sometimes it helps to use the <em>Other provider</em> wizard instead
of the <em>Outlook/Office 365</em> wizard. You might need an app
password for this, please see <a href="#faq14">this FAQ</a>.</p>
<p>Background: this error happens if logging in to an account succeeded
(with OAuth), but logging in to the email (IMAP/SMTP) server fails for
some reason.</p>
<p><br /></p>
<p><a name="faq140"></a> <strong>(140) Why does the message text contain
strange characters?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq140">Google
Translate</a></p>
<p>Displaying strange characters is almost always caused by specifying
no or an invalid character encoding by the sending software. FairEmail
will assume <a href="https://en.wikipedia.org/wiki/ISO/IEC_8859-1">ISO
8859-1</a> when no character set or when <a
href="https://en.wikipedia.org/wiki/ASCII">US-ASCII</a> 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.</p>
<p><br /></p>
<p><a name="faq141"></a> <strong>(141) How can I fix A drafts folder is
required to send messages?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq141">Google
Translate</a></p>
<p>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 <a
href="https://www.iana.org/assignments/imap-mailbox-name-attributes/imap-mailbox-name-attributes.xhtml">the
attributes</a> 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.</p>
<p>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).</p>
<p>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.</p>
<p>Quick link for Gmail (will work on a desktop computer only): <a
href="https://mail.google.com/mail/u/0/#settings/labels">https://mail.google.com/mail/u/0/#settings/labels</a></p>
<p><br /></p>
<p><a name="faq142"></a> <strong>(142) How can I store sent messages in
the inbox?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq142">Google
Translate</a></p>
<p>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.</p>
<p>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.</p>
<p>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 <em>Show in unified inbox</em>. This way all messages can stay
where they belong, while allowing to see both incoming and outgoing
messages at one place.</p>
<p>If this is not an option, you can <a href="#faq71">create a rule</a>
to automatically move sent messages to the inbox or set a default CC or
BCC address in the advanced identity settings (via the manual setup in
the main setup screen) to send yourself a copy.</p>
<p><br /></p>
<p><a name="faq143"></a> <strong><del>(143) Can you add a trash folder
for POP3 accounts?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq143">Google
Translate</a></p>
<p><a href="https://en.wikipedia.org/wiki/Post_Office_Protocol">POP3</a>
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.</p>
<p>Since POP3 does not allow access to the trash folder at all, there is
no way to restore trashed messages.</p>
<p>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.</p>
<p>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.</p>
<p><br /></p>
<p><a name="faq144"></a> <strong>(144) How can I record voice
notes?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq144">Google
Translate</a></p>
<p>To record voice notes you can press this icon in the bottom action
bar of the message composer:</p>
<p><img src="https://github.com/M66B/FairEmail/blob/master/images/baseline_record_voice_over_black_48dp.png" width="48" height="48" /></p>
<p>This requires a compatible audio recorder app to be installed. In
particular <a
href="https://developer.android.com/reference/android/provider/MediaStore.Audio.Media.html#RECORD_SOUND_ACTION">this
common intent</a> needs to be supported.</p>
<p>For example <a
href="https://f-droid.org/app/com.github.axet.audiorecorder">this audio
recorder</a> is compatible.</p>
<p>Voice notes will automatically be attached.</p>
<p><br /></p>
<p><a name="faq145"></a> <strong>(145) How can I set a notification
sound for an account, folder, sender or condition?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq145">Google
Translate</a></p>
<p>Account:</p>
<ul>
<li><del>Version 1.1927-: enable <em>Separate notifications</em> in the
advanced account settings</del></li>
<li>Version 1.1927+: long press the account in the account list and
select <em>Create notification channel</em></li>
<li>Long press the account in the account list and select <em>Edit
notification channel</em> to change the notification sound</li>
</ul>
<p>To go to the account list: navigation menu (left side menu), tap
<em>Settings</em>, tap <em>Manual setup and account options</em> and tap
<em>Accounts</em>.<br> To go to the advanced account settings from the
account list: tap on the account and tap on <em>Advanced</em>.</p>
<p>Folder:</p>
<ul>
<li>Long press the folder in the folder list and select <em>Notify on
new messages</em></li>
<li>Long press the folder in the folder list and select <em>Create
notification channel</em></li>
<li>Long press the folder in the folder list and select <em>Edit
notification channel</em> to change the notification sound</li>
</ul>
<p>To go to the folder list: tap on the account name in the navigation
menu (left side menu).</p>
<p>Sender:</p>
<ul>
<li>Open a message from the sender and expand it</li>
<li>Expand the addresses section by tapping on the down arrow</li>
<li>Tap on the bell icon to create or edit a notification channel and to
change the notification sound</li>
</ul>
<p>Conditional: (since version 1.1803; experimental)</p>
<ul>
<li>Long press the folder (inbox) in the folder list and select <em>Edit
rules</em></li>
<li>Add a rule with the big plus button at the bottom right</li>
<li>Configure a rule condition, select <em>Play sound</em> as rule
action and select a sound</li>
<li>For more information about rules, please <a href="#faq71">see
here</a></li>
</ul>
<p>The order of precendence is: conditional sound, sender sound, folder
sound, account sound and (default) notification sound.</p>
<p>Setting a notification sound for an account, folder or sender
requires Android 8 Oreo or later and is a pro feature.</p>
<p><br /></p>
<p><a name="faq146"></a> <strong>(146) How can I fix incorrect message
times?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq146">Google
Translate</a></p>
<p>Since the sent date/time is optional and can be manipulated by the
sender, FairEmail uses the server received date/time by default.</p>
<p>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.</p>
<p>In these rare cases, it is possible to let FairEmail use either the
date/time from the <em>Date</em> header (sent time) or from the
<em>Received</em> header as a workaround. This can be changed in the
advanced account settings: go to the Settings, tap <em>Manual setup and
account options</em>, tap <em>Accounts</em>, tap the account, tap
<em>Advanced</em>.</p>
<p>This will not change the time of already synchronized messages. To
solve this, long press the folder(s) in the folder list and select
<em>Delete local messages</em> and <em>Synchronize now</em>.</p>
<p><br /></p>
<p><a name="faq147"></a> <strong>(147) What should I know about third
party versions?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq147">Google
Translate</a></p>
<p>You likely came here because you are using a third party build of
FairEmail.</p>
<p>There is <strong>only support</strong> on the latest Play store
version, the latest GitHub release and the F-Droid build, but
<strong>only if</strong> the version number of the F-Droid build is the
same as the version number of the latest GitHub release.</p>
<p>F-Droid builds irregularly, which can be problematic when there is an
important update. Therefore you are advised to switch to the GitHub
release.</p>
<p>Note that developers have no control over F-Droid builds and the
F-Droid infrastructure (apps, forums, etc.).</p>
<p>OAuth access is available only for Play Store and Github releases
because email providers permitted the use of OAuth for these releases
only. The responsible for a release, for the F-Droid build this is the
F-Droid organization, needs to ask for OAuth permissions, which mostly
involves signing a contract with binding terms and conditions.</p>
<p>Note that youll need to uninstall the F-Droid build first before you
can install a GitHub release because Android refuses to install
(“<em>App was not installed</em>”) the same app with a different
signature for security reasons.</p>
<p>At the start of 2024, the Play Store app started to update all apps,
including apps not installed via the Play Store. Since the F-Droid build
is signed by the F-Droid organization, which basically means the F-Droid
build is another app, updating the F-Droid build will fail.
Unfortunately, there is no way to resolve this.</p>
<p>Note that the GitHub version will automatically check for updates.
When desired, this can be turned off in the miscellaneous settings.</p>
<p>Please <a
href="https://github.com/M66B/FairEmail/blob/master/README.md#downloads">see
here</a> for all download option and <a href="#faq173">see here</a> for
the differences between the different release types.</p>
<p>If you have a problem with the F-Droid build, please check if there
is a newer GitHub version first.</p>
<p>You can see the source of the app in <em>About</em> of the navigation
menu (left side menu), either <em>Play store</em>, <em>GitHub</em>,
<em>F-Droid</em>, or <em>?</em> (for example in the case of a custom
build).</p>
<p><a href="https://apt.izzysoft.de/fdroid/">IzzyOnDroid</a> hosts the
GitHub release of the app. <a
href="https://f-droid.org/packages/com.aurora.store/">Aurora Store</a>
hosts the Play store version of the app, even though the Aurora Store
app was downloaded from F-Droid.</p>
<p><br /></p>
<p><a name="faq148"></a> <strong>(148) How can I use an Apple iCloud
account?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq148">Google
Translate</a></p>
<p>There is a built-in profile for Apple iCloud, so you should be able
to use the quick setup wizard (other provider). If needed you can find
the right settings <a
href="https://support.apple.com/en-us/HT202304">here</a> to manually set
up an account.</p>
<p>When using two-factor authentication you might need to use an <a
href="https://support.apple.com/en-us/HT204397">app-specific
password</a>.</p>
<p>Please make sure you use the main email address and not an alias
address. It is not possible to authenticate an iCloud account with an
alias address. If you want to create an alias address, first configure
the main account, and after that see <a href="#faq9">this FAQ</a>.</p>
<p><br /></p>
<p><a name="faq149"></a> <strong>(149) How does the unread message count
widget work?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq149">Google
Translate</a></p>
<p>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.</p>
<p>Tapping on the notification will synchronize all folders for which
synchronization is enabled and will open:</p>
<ul>
<li>the start screen when all accounts were selected</li>
<li>a folder list when a specific account was selected and when new
message notifications are enabled for multiple folders</li>
<li>a list of messages when a specific account was selected and when new
message notifications are enabled for one folder</li>
</ul>
<p><br /></p>
<p><a name="faq150"></a> <strong>(150) Can you add cancelling calendar
invites?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq150">Google
Translate</a></p>
<p>Cancelling calendar invites (removing calendar events) requires write
calendar permission, which will result in effectively granting
permission to read and write <em>all</em> calendar events of
<em>all</em> calendars.</p>
<p>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.</p>
<p>Inserting new calendar events can be done without permissions with
special <a
href="https://developer.android.com/guide/topics/providers/calendar-provider.html#intents">intents</a>.
Unfortunately, there exists no intent to delete existing calendar
events.</p>
<p><br /></p>
<p><a name="faq151"></a> <strong>(151) Can you add backup/restore of
messages?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq151">Google
Translate</a></p>
<p>An email client is meant to read and write messages, not to back up
and restore messages. In other words, an email client is a viewer for
messages on an email server, and not a backup tool. Instead, the email
provider/server is responsible for backups.</p>
<p>If you want to make a backup yourself, you could use a tool like <a
href="https://imapsync.lamiral.info/">imapsync</a>.</p>
<p>Since version 1.1556 it is possible to export all messages of a POP3
folder in mbox format according to <a
href="https://www.ietf.org/rfc/rfc4155.txt">RFC4155</a>, which might be
useful to backup sent messages if the email server doesnt (which is
risky because breaking or losing your device, means losing your sent
messages!). For this, please long press on the folder in the folder list
of an account (tap on the account name in the navigation menu).</p>
<p>If you want to import an mbox file into an existing email account,
you can use Thunderbird on a desktop computer and the <a
href="https://addons.thunderbird.net/de/thunderbird/addon/importexporttools-ng/">ImportExportTools
NG</a> add-on.</p>
<p>Note that in case of IMAP, all messages on your device are also on
the email server.</p>
<p><br /></p>
<p><a name="faq152"></a> <strong>(152) How can I insert a contact
group?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq152">Google
Translate</a></p>
<p>You can insert the email addresses of all contacts in a contact group
via the three dots menu of the message composer. You can also long press
the person-add icon at the end of the to/cc/bcc/field.</p>
<p>You can define contact groups with the Android contacts app, please
see <a href="https://support.google.com/contacts/answer/30970">here</a>
for instructions.</p>
<p><br /></p>
<p><a name="faq153"></a> <strong>(153) Why does permanently deleting
Gmail message not work?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq153">Google
Translate</a></p>
<p>You might need to change <a
href="https://mail.google.com/mail/u/0/#settings/fwdandpop">the Gmail
IMAP settings</a> on a desktop browser to make it work:</p>
<ul>
<li>When I mark a message in IMAP as deleted: Auto-Expunge off - Wait
for the client to update the server.</li>
<li>When a message is marked as deleted and expunged from the last
visible IMAP folder: Immediately delete the message forever</li>
</ul>
<p><img alt="External image" src="https://github.com/M66B/FairEmail/blob/master/images/Gmail_IMAP_delete_settings.png" width="600" height="333" /></p>
<p>Note that archived messages can be deleted only by moving them to the
trash folder first.</p>
<p>Some background: Gmail seems to have an additional message view for
IMAP, which can be different from the main message view.</p>
<p>Another oddity is that a star (favorite message) set via the web
interface cannot be removed with the IMAP command</p>
<pre><code>STORE &lt;message number&gt; -FLAGS (\Flagged)</code></pre>
<p>On the other hand, a star set via IMAP is being shown in the web
interface and can be removed via IMAP.</p>
<p><br /></p>
<p><a name="faq154"></a> <strong><del>(154) Can you add favicons as
contact photos?</del></strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq154">Google
Translate</a></p>
<p><del>Besides that a <a
href="https://en.wikipedia.org/wiki/Favicon">favicon</a> might be shared
by many email addresses with the same domain name</del> <del>and
therefore is not directly related to an email address, favicons can be
used to track you.</del></p>
<p><br /></p>
<p><a name="faq155"></a> <strong>(155) What is a winmail.dat
file?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq155">Google
Translate</a></p>
<p>A <em>winmail.dat</em> file is sent by an incorrectly configured
Outlook client. It is a Microsoft specific file format (<a
href="https://en.wikipedia.org/wiki/Transport_Neutral_Encapsulation_Format">TNEF</a>)
containing a message and possibly attachments.</p>
<p>You can find some more information about this file <a
href="https://support.mozilla.org/en-US/kb/what-winmaildat-attachment">here</a>.</p>
<p>FairEmail has limited support for this file type.</p>
<p>You can view it with for example the Android app <a
href="https://play.google.com/store/apps/details?id=app.letteropener">Letter
Opener</a>.</p>
<p><br /></p>
<p><a name="faq156"></a> <strong>(156) How can I set up an Office 365
account?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq156">Google
Translate</a></p>
<p>An Office 365 account can be set up via the quick setup wizard and
selecting <em>Office 365 (OAuth)</em>.</p>
<p>If the wizard ends with <em>AUTHENTICATE failed</em>, 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 <a
href="https://docs.microsoft.com/en-in/exchange/troubleshoot/configure-mailboxes/pop3-imap-owa-activesync-office-365">here</a>.</p>
<p>If youve enabled <em>security defaults</em> in your organization,
you might need to enable the SMTP AUTH protocol. Please <a
href="https://docs.microsoft.com/en-us/exchange/clients-and-mobile-in-exchange-online/authenticated-client-smtp-submission">see
here</a> about how to.</p>
<p><br /></p>
<p><a name="faq157"></a> <strong>(157) How can I set up an Free.fr
account?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq157">Google
Translate</a></p>
<p>Veuillez <a href="https://free.fr/assistance/597.html">voir ici</a>
pour les instructions.</p>
<p><strong>SMTP est désactivé par défaut</strong>, veuillez <a
href="https://free.fr/assistance/2406.html">voir ici</a> comment il peut
être activé.</p>
<p>Veuillez <a
href="http://jc.etiemble.free.fr/abc/index.php/trucs-astuces/configurer-smtp-free-fr">voir
ici</a> pour un guide détaillé.</p>
<p><br /></p>
<p><a name="faq103"></a> <a name="faq158"></a> <strong>(158) Which
camera / audio recorder do you recommend?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq158">Google
Translate</a></p>
<p>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:</p>
<ul>
<li><a
href="https://play.google.com/store/apps/details?id=net.sourceforge.opencamera">Open
Camera</a> (<a
href="https://f-droid.org/en/packages/net.sourceforge.opencamera/">F-Droid</a>)</li>
<li><a
href="https://play.google.com/store/apps/details?id=com.github.axet.audiorecorder">Audio
Recorder version 3.3.24+</a> (<a
href="https://f-droid.org/packages/com.github.axet.audiorecorder/">F-Droid</a>)</li>
</ul>
<p>To record voice notes, etc, the audio recorder needs to support <a
href="https://developer.android.com/reference/android/provider/MediaStore.Audio.Media#RECORD_SOUND_ACTION">MediaStore.Audio.Media.RECORD_SOUND_ACTION</a>.
Oddly, most audio recorders seem not to support this standard Android
action.</p>
<p><br /></p>
<p><a name="faq159"></a> <strong>(159) What are Disconnects tracker
protection lists?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq159">Google
Translate</a></p>
<p>Please see <a href="https://disconnect.me/trackerprotection">here</a>
for more information about Disconnects tracker protection lists. For
the last updates, please <a
href="https://github.com/disconnectme/disconnect-tracking-protection/commits">see
here</a>.</p>
<p>After downloading the lists in the privacy settings, the lists can
optionally be used:</p>
<ul>
<li>to warn about tracking links on opening links</li>
<li>to recognize tracking images in messages</li>
</ul>
<p>Tracking images will be disabled only if the corresponding main
disable option is enabled.</p>
<p>Tracking images will not be recognized when the domain is classified
as <em>Content</em>, see <a
href="https://disconnect.me/trackerprotection#trackers-we-dont-block">here</a>
for more information.</p>
<p>This command can be sent to FairEmail from an automation app to
update the protection lists:</p>
<pre><code>(adb shell) am start-foreground-service -a eu.faircode.email.DISCONNECT.ME</code></pre>
<p>Updating once a week will probably be sufficient, please see <a
href="https://github.com/disconnectme/disconnect-tracking-protection/commits/master">here</a>
for recent lists changes.</p>
<p><br /></p>
<p><a name="faq160"></a> <strong>(160) Can you add permanent deletion of
messages without confirmation?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq160">Google
Translate</a></p>
<p>Permanent deletion means that messages will <em>irreversibly</em> be
lost, and to prevent this from happening accidentally, this always needs
to be confirmed. Even with a confirmation, some very angry people who
lost some of their messages through their own fault contacted me, which
was a rather unpleasant experience :-(</p>
<p>Please <a
href="https://forum.xda-developers.com/t/app-5-0-fairemail-fully-featured-open-source-privacy-oriented-email-app.3824168/post-86984471">see
here</a> for more background information.</p>
<p>Since version 1.1601 it is possible to disable confirmation of
permanent deletion of individual messages after reading a big
warning.</p>
<p>Note that the POP3 protocol can download messages from the inbox
only. So, deleted messages cannot be uploaded to the inbox again. This
means that messages can only be permanently deleted in case of a POP3
account.</p>
<p>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 <a
href="https://tools.ietf.org/html/rfc4315">UID EXPUNGE</a>.</p>
<p>Since version 1.1485 it is possible to temporarily enable debug mode
in the miscellaneous settings to disable auto expunging messages. Note
that messages with a *flag will not be shown if auto EXPUNGE is
enabled.</p>
<p><br /></p>
<p><a name="faq161"></a> <strong>(161) Can you add a setting to change
the primary and accent color?</strong>*</p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq161">Google
Translate</a></p>
<p>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 <a href="https://stackoverflow.com/a/26511725/1794097">here</a>,
so this is not possible.</p>
<p><br /></p>
<p><a name="faq162"></a> <strong>(162) Is IMAP NOTIFY
supported?</strong>*</p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq162">Google
Translate</a></p>
<p>Yes, <a href="https://tools.ietf.org/html/rfc5465">IMAP NOTIFY</a>
has been supported since version 1.1413.</p>
<p>IMAP NOTIFY support means that notifications for added, changed or
deleted messages of all <em>subscribed</em> folders will be requested
and if a notification is received for a subscribed folder, that the
folder will be synchronized. Synchronization for subscribed folders can
therefore be disable, saving folder connections to the email server.</p>
<p><strong>Important</strong>: push messages (=always sync) for the
inbox and subscription management (receive settings) need to be
enabled.</p>
<p><strong>Important</strong>: most email servers do not support this!
You can check the log via the navigation menu if an email server
supports the NOTIFY capability.</p>
<p><br /></p>
<p><a name="faq163"></a> <strong>(163) What is message
classification?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq163">Google
Translate</a></p>
<p><em>This is an experimental feature!</em></p>
<p>Message classification will attempt to automatically group emails
into classes, based on their contents, using <a
href="https://en.wikipedia.org/wiki/Bayesian_statistics">Bayesian
statistics</a>. In the context of FairEmail, a folder is a class. So,
for example, the inbox, the spam folder, a marketing folder, etc,
etc.</p>
<p>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 <em>Classify new messages in this folder</em> 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.</p>
<p>Each folder has an option <em>Automatically move classified messages
to this folder</em> (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.</p>
<p>The option <em>Use local spam filter</em> 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 <a
href="https://en.wikipedia.org/wiki/False_positives_and_false_negatives">false
positives and false negatives</a>. See also <a href="#faq92">this
FAQ</a>.</p>
<p>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 youll train FairEmail that similar messages
belong in this folder. Each time you move a message out of this folder
youll 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).</p>
<p>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.</p>
<p>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.</p>
<p>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:</p>
<ul>
<li><em>Minimum class probability</em>: a message will only be moved
when the confidence it belongs in a folder is greater than this value
(default 15 %)</li>
<li><em>Minimum class difference</em>: 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 %)</li>
</ul>
<p>If all previously classified messages were the same and the message
being evaluated is also the same, the confidence would be 100%.</p>
<p>Both conditions must be satisfied before a message will be moved.</p>
<p>Considering the default option values:</p>
<ul>
<li>Apples 40 % and bananas 30 % would be disregarded because the
difference of 25 % is below the minimum of 50 %</li>
<li>Apples 10 % and bananas 5 % would be disregarded because the
probability for apples is below the minimum of 15 %</li>
<li>Apples 50 % and bananas 20 % would result in selecting apples</li>
</ul>
<p>Classification is optimized to use as little resources as possible,
but will inevitably use some extra battery power. This is also why only
folders of the same account will be considered.</p>
<p>You can delete all classification data by turning classification in
the miscellaneous settings three times off. This will be necessary when
classification for a folder is enabled or disabled (or when a folder is
deleted) because classification is based on comparision.</p>
<p><a href="#faq71">Rules</a> will be executed before classification. If
one or more rules were executed for a message, message classification
will be skipped because it is assumed that the message will be processed
by the rules in this case.</p>
<p>Message classification is a pro feature, except for the spam
folder.</p>
<p><br /></p>
<p><a name="faq164"></a> <strong>(164) Can you add customizable
themes?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq164">Google
Translate</a></p>
<p>Unfortunately, Android <a
href="https://stackoverflow.com/a/26511725/1794097">does not support</a>
dynamic themes, which means all themes need <a
href="https://github.com/M66B/FairEmail/blob/master/app/src/main/res/values/styles.xml">to
be predefined</a>.</p>
<p>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.</p>
<p>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.</p>
<p>Most people like the beige background for the light themes, but if
you dont like it, it can be disabled in the display settings.</p>
<p>The <a
href="https://material.io/blog/announcing-material-you">Material You</a>
theme, a more dynamic theme based on the selected background image
(“Monet”), which was introduced in Android 12 on Google Pixel devices,
is supported and can be selected in the theme selection dialog (via the
three-dots menu of the start screen).</p>
<p>The theme colors are based on the color circle of <a
href="https://en.wikipedia.org/wiki/Johannes_Itten">Johannes
Itten</a>.</p>
<p>The <em>Solarized</em> theme is described in <a
href="https://en.wikipedia.org/wiki/Solarized_(color_scheme)">this
article</a>.</p>
<p><br /></p>
<p><a name="faq165"></a> <strong>(165) Is Android Auto
supported?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq165">Google
Translate</a></p>
<p>Yes, Android Auto is supported, but only with the GitHub version of
the app because Google rejected the application of FairEmail for this
reason:</p>
<p><em>App category not permitted - At this time, we are only accepting
apps within the Media, short form Messaging, or categories supported by
the Android for Cars App Library.</em></p>
<p>Also, not all Android Auto versions support this (as installed in the
car).</p>
<p><strong>Use of this feature with the Github version is expressly at
your own risk!</strong></p>
<p>For notification (messaging) support youll need to enable the
following notification options:</p>
<ul>
<li><em>Use Android messaging style notification format</em></li>
<li>Notification actions: <em>Direct reply</em> and (mark as)
<em>Read</em> (this might be optional now, but this is untested)</li>
</ul>
<p>You can enable other notification actions too, if you like, but they
are not supported by Android Auto.</p>
<p>The developers guide is <a
href="https://developer.android.com/training/cars/messaging">here</a>.</p>
<p><br /></p>
<p><a name="faq166"></a> <strong>(166) Can I snooze a message across
multiple devices?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq166">Google
Translate</a></p>
<p>First of all, there is no standard for snoozing messages, so all
snooze implementations are custom solutions.</p>
<p>Some email providers, like Gmail, move snoozed messages to a special
folder. Unfortunately, third party apps have no access to this special
folder.</p>
<p>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.</p>
<p>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. Deleting messages
from the server and restoring them later could result in losing messages
when the device breaks.</p>
<p><br /></p>
<p><a name="faq167"></a> <strong>(167) How can I use DeepL?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq167">Google
Translate</a></p>
<p>DeepL offers free translation of 500,000 characters (~100,000 words;
~250 pages) every month.</p>
<ol type="1">
<li>Make sure you have the latest version of the app installed</li>
<li>Check if <a href="https://www.deepl.com/">DeepL</a> supports your
language</li>
<li>Enable DeepL support in the integration settings</li>
<li><a href="https://www.deepl.com/pro#developer">Subscribe to</a> the
DeepL API Free (credit card required; wont be charged)</li>
<li><a href="https://www.deepl.com/pro-account/plan">Copy</a> the
authentication key</li>
<li>In the message composer tap on the translate button (文A) in the top
action bar, select <em>Configure</em> and paste the key</li>
</ol>
<p>This feature requires an internet connection.</p>
<p>Note that you cant use <a href="https://www.deepl.com/pro">the
regular pro plans</a>. The error <em>403 forbidden</em> means that the
key and/or plan in invalid.</p>
<p>Note that when reading a message, you can use the horizontal
three-dots menu to translate too. If you use this frequently, you can
configure a button for this.</p>
<p><br /></p>
<p><a name="faq168"></a> <strong>(168) What is a spam block
list?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq168">Google
Translate</a></p>
<p>A spam block list is basically a list of domain names which have been
used to send spam or to spread malware.</p>
<p>A spam block list is checked by resolving the server name from the
last <em>Received</em> header into an IP address and looking up the IP
address with a DNS request:</p>
<pre><code>Received:
... from smtp.gmail.com ...
smtp.gmail.com -&gt;
142.250.27.108
DNS lookup 108.27.250.142.zen.spamhaus.org -&gt;
127.0.0.2: spam
NXDOMAIN: not spam</code></pre>
<p>NXDOMAIN = no such domain</p>
<p>For more information, please see <a
href="https://en.wikipedia.org/wiki/Domain_Name_System-based_blackhole_list">this
article</a>.</p>
<p>You can check common block lists for example <a
href="https://mxtoolbox.com/blacklists.aspx">here</a>.</p>
<p>FairEmail currently uses the following block lists:</p>
<ul>
<li><a href="https://www.spamhaus.org/">Spamhaus</a> <a
href="https://www.spamhaus.org/organization/dnsblusage/">Terms of
Use</a><a
href="https://www.spamhaus.org/organization/privacy/">Privacy
policy</a></li>
<li><a href="https://www.spamcop.net/">Spamcop</a> <a
href="https://www.spamcop.net/fom-serve/cache/297.html">Legal info</a>
<a href="https://www.spamcop.net/fom-serve/cache/168.html">Privacy
policy</a></li>
<li><a
href="https://www.barracudacentral.org/rbl/how-to-use">Barracuda</a>
<a href="https://www.barracudacentral.org/account/register">Request
Access</a> <a
href="https://www.barracuda.com/company/legal/trust-center/data-privacy/privacy-policy">Privacy
policy</a></li>
</ul>
<p>Since version 1.1627 it is possible to enable/disable individual
blocklists in the receive settings of the app.</p>
<p><br /></p>
<p><a name="faq169"></a> <strong>(169) Why does the app not start
automatically?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq169">Google
Translate</a></p>
<p>FairEmail requests Android to start the app when the device starts
up. Obviously, this depends on Android as the app cannot start
itself.</p>
<p>Some Android versions, such as EMUI, have settings to enable or
disable auto starting apps. So, if the app isnt started automatically,
please check the Android settings.</p>
<p>For example for Huawei/EMUI, please <a
href="https://dontkillmyapp.com/huawei">see here</a> for a guide.</p>
<p><br></p>
<p><a name="faq170"></a> <strong>(170) Why cant folders be created with
POP3?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq170">Google
Translate</a></p>
<p>The POP3 protocol has commands to download and delete messages from
the inbox only. There are no commands to access any other folder.</p>
<p>Creating a local folder only and storing messages on your device only
is a bad idea because losing or breaking your device would mean losing
your messages. Therefore this isnt supportable.</p>
<p>Please note that FairEmail doesnt store a copy of your messages in
the cloud for privacy reasons.</p>
<p>If you want to store messages in folders, please use IMAP, so that
there is always a copy of the messages on the email server.</p>
<p>You could register, for example, a Gmail account, and configure Gmail
to import messages from a POP3 account, automatically label them (=put
them in a folder), and configure the Gmail account in FairEmail. Please
<a
href="https://support.google.com/mail/answer/21289?hl=en&amp;co=GENIE.Platform%3DDesktop">see
here</a> for instructions.</p>
<p><br /></p>
<p><a name="faq171"></a> <strong>(171) How can I delete a
contact?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq171">Google
Translate</a></p>
<p>A contact can be stored in the Android address book or in the local
contact database.</p>
<p>When a contact is stored in the Android address book, you can use the
Android contacts app to delete the contact.</p>
<p>When a contact is store in the local contact database, you can delete
it like this:</p>
<ul>
<li>Go to the settings via the navigation menu (left side menu)</li>
<li>Go to the send settings tab page</li>
<li>Tap on the <em>Manage</em> button under <em>Suggest locally stored
contacts</em></li>
<li>Locate the contact (you can use the magnifier glass in the top
action bar)</li>
<li>Long press the contact and select to delete it</li>
</ul>
<p><br /></p>
<p><a name="faq172"></a> <strong>(172) How can I import
contacts?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq172">Google
Translate</a></p>
<p>Like most Android apps, FairEmail consults the Android address book
for contact information.</p>
<p>There is also a local contact database, which is filled with contacts
from sent and received messages. You can enable/disable this in the send
settings of the app.</p>
<p>If you want to import contacts into the local contact database, this
is possible (in recent versions of the app) by tapping on the
<em>Manage</em> button in the send settings. In the three-dots menu at
the top right there is an import (and also an export) <a
href="https://en.wikipedia.org/wiki/VCard">vCard</a>s menu item.</p>
<p>The Android address book is managed by the Android Contacts app (or a
replacement for this app). Please see <a
href="https://support.google.com/contacts/answer/1069522">this
article</a> about importing contacts to the Android address book.</p>
<p>Note that some vendors, notably Microsoft, try to lock you into their
contact (data) storage. This is not how it should work on Android, which
is more open to sharing information.</p>
<p>Related questions:</p>
<ul>
<li><a href="#faq84">What are local contacts for?</a></li>
<li><a href="#faq98">Why can I still pick contacts after revoking
contacts permissions?</a></li>
<li><a href="#faq138">Can you add calendar/contact/tasks/notes
management?</a></li>
<li><a href="#faq152">How can I insert a contact group?</a></li>
<li><a href="#faq171">How can I delete a contact?</a></li>
</ul>
<p><br /></p>
<p><a name="faq173"></a> <strong>(173) What is the difference between
Play store / GitHub / F-Droid version?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq173">Google
Translate</a></p>
<ul>
<li>The Play Store version does not support Android Auto, see <a
href="#faq165">this FAQ</a> for more information</li>
<li>The Play Store version does not support Amazon devices with Android
5 Lollipop because there are critical bugs in this Android version of
Amazon</li>
<li>The Play Store version does not support Gravatars/Libravatars/BIMI
due to Play Store policies</li>
<li>The Play Store version does not support auto-storing iCalendar
invitations, see <a href="#faq186">this FAQ</a> for more
information</li>
<li>The Play Store version is released about once a month only because I
am tired of 1-star ratings for <em>Too many updates</em>. If you want to
receive more updates, you can join the <a
href="https://play.google.com/apps/testing/eu.faircode.email">Play Store
test program</a>.</li>
<li>The GitHub version will check for <a
href="https://github.com/M66B/FairEmail/releases">updates on GitHub</a>
and is updated more frequently, but updates need to be installed
manually</li>
<li>The GitHub version has some different links, some more features and
options, and some different default values (more geared to advanced
users)</li>
<li>The GitHub version can be installed as an update over the Play store
version, whereas the F-Droid build cant (see below for more
details)</li>
<li>The F-Droid build does not support OAuth, see <a href="#faq147">this
FAQ</a> about why not</li>
<li>The F-Droid build does not include <a
href="https://developer.android.com/google/play/billing/integrate">Google
Play Billing</a>, so Play store purchases cannot be reused</li>
<li>The F-Droid build is supported only if the version number is the
same as the version number of the latest GitHub version, see also <a
href="#faq147">this FAQ</a></li>
</ul>
<p>The Play store and GitHub version are signed with the <a
href="https://github.com/M66B/FairEmail#downloads">same digital
signature</a> (security certificate). The F-Droid build is signed by the
F-Droid organization with a different digital key. This means you cant
update the F-Droid build with the Play store or GitHub version or the
other way around without reinstalling. However, it is possible to
install the GitHub version over the Play store version, and the Play
store app will do the same, when auto-updating isnt disabled for the
app in the app description.</p>
<p>The version in the <a
href="https://play.google.com/apps/testing/eu.faircode.email">Play Store
test program</a> is more often updated, but not all GitHub releases will
be released as Play Store test version.</p>
<p>The GitHub version will automatically check for updates and notify
you when there is an update available. Since apps cant update
themselves, updates cant be automatically installed. However, you can
easily install an update via a button in the update available
notification. You could use the <a
href="https://apt.izzysoft.de/fdroid/">IzzyOnDroid F-Droid
Repository</a> to manage GitHub updates.</p>
<p><br /></p>
<p><a name="faq174"></a> <strong>(174) Is auto discovery
supported?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq174">Google
Translate</a></p>
<p>Yes, multiple methods of auto discovery are available.</p>
<p>The preferred, simplest and fastest method is using DNS records,
please see see <a href="https://tools.ietf.org/html/rfc6186">RFC6186</a>
and <a href="https://tools.ietf.org/html/rfc8314">RFC8314</a> for the
details.</p>
<p>Example DNS records (SRV=record type, 0=priority, 1=weight,
993/587=port number):</p>
<pre><code>_imaps._tcp SRV 0 1 993 imap.example.com.
_submission._tcp SRV 0 1 587 smtp.example.com.</code></pre>
<p><a
href="https://wiki.mozilla.org/Thunderbird:Autoconfiguration">Mozillas
autoconfiguration</a> is supported too, but only if the configuration
file is accessible via a secure (https) connection.</p>
<p>FairEmail will also check the <a
href="https://en.wikipedia.org/wiki/MX_record">MX record</a> and if
common email ports (143/993, 465/587) are open.</p>
<p>There is no auto discovery for POP3.</p>
<p><br /></p>
<p><a name="faq175"></a> <strong>(175) Why should battery optimizations
be disabled?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq175">Google
Translate</a></p>
<p>If battery optimizations are enabled (<a
href="https://developer.android.com/training/monitoring-device-state/doze-standby">Doze
mode</a>), Android will stop the app when it is running in the
background, resulting in no more messages being sent and received in the
background anymore.</p>
<p>Manufacturers also tweak Android rather often to stop apps in the
background for ostensibly better battery life, please <a
href="https://dontkillmyapp.com/">see here</a> for more details.</p>
<p><br /></p>
<p><a name="faq176"></a> <strong>(176) When will a message be considered
safely transported?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq176">Google
Translate</a></p>
<p>If the receive option <em>Check transport layer security (TLS)</em>
is enabled, a green shield will be shown only if a message was
transported securely by all servers.</p>
<p>To show shields, the option <em>Show authentication status
indicator</em> in the display settings should be enabled.</p>
<p>A message will be consired safely transported if <em>every</em> <a
href="https://datatracker.ietf.org/doc/html/rfc2821#section-4.4">Received</a>
header:</p>
<ul>
<li>contains the phrase using TLS, via HTTP, version=TLS</li>
<li>contains the phrase (qmail <nnn> invoked by uid <nnn>)</li>
<li>contains the phrase (Postfix, from userid nnn)</li>
<li>has a <em>by</em> with a local address</li>
<li>has a <em>by</em> xxx.google.com</li>
<li>has a <em>from</em> with a local address</li>
<li>has a <em>via</em> with the value <a
href="https://social.technet.microsoft.com/wiki/contents/articles/50370.exchange-2016-what-is-the-front-end-transport-service-on-the-mailbox-role.aspx">Frontend
Transport</a></li>
<li>has a <em>with</em> with the value TLS</li>
<li>has a <em>with</em> with the value local, <a
href="https://en.wikipedia.org/wiki/Local_Mail_Transfer_Protocol">LMTPx</a>,<a
href="https://en.wikipedia.org/wiki/MAPI">MAPI</a></li>
<li>has a <em>with</em> with the value HTTP, HTTPS, or
HTTPREST</li>
<li>has a <em>with</em> with the value <a
href="https://datatracker.ietf.org/doc/html/rfc3848">xMTPSx</a>
(xMTPAx is considered insecure)</li>
</ul>
<p>A local address is a local host address, a site local address or a
link local address.</p>
<p>Example:</p>
<pre><code>Received: brown.elm.relay.mailchannels.net (brown.elm.relay.mailchannels.net. [23.83.212.23])
by mx.google.com with ESMTPS id d10si6675855pgb.5.2021.12.24.13.20.38
for &lt;test@example.org&gt; (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);</code></pre>
<p><br /></p>
<p><a name="faq177"></a> <strong>(177) What does Sensitivity
mean?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq177">Google
Translate</a></p>
<p>The sensitivity of a message indicates the confidentiality of a
message.</p>
<ul>
<li>Personal: for you only</li>
<li>Private: for you and trusted people only</li>
<li>Confidential: for a company, organization or department only</li>
</ul>
<p>Please see <a
href="https://support.microsoft.com/en-us/office/mark-your-email-as-normal-personal-private-or-confidential-4a76d05b-6c29-4a0d-9096-71784a6b12c1">this
article</a> for more information.</p>
<p>The sensitivity indication is sent as <a
href="https://datatracker.ietf.org/doc/html/rfc4021#section-2.1.55">a
message header</a>.</p>
<p><br /></p>
<p><a name="faq178"></a> <strong>(178) Why are widgets not
updating?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq178">Google
Translate</a></p>
<p>Apps provide the layout and data for widgets on demand, but the
homescreen app/launcher manages all widgets, with a little help from
Android.</p>
<p>If widgets are not being updated, this is often caused by missing
permission. Please see <a
href="https://www.youtube.com/watch?v=ywQrYJ6rtnM">this video</a> about
how to fix this.</p>
<p><br /></p>
<p><a name="faq179"></a> <strong>(179) What are reply
templates?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq179">Google
Translate</a></p>
<p>Reply templates are predefined answer texts. They can be defined via
the main navigation menu (left side menu).</p>
<p>You can reply with a template, insert a template via the three-dots
overflow menu in the message editor, and long press on an open space to
insert a snippet (the latter requires Android 6 Marshmallow or
later).</p>
<p>Templates can have the following options:</p>
<ul>
<li><em>Default</em>: standard template to use when writing a new
message</li>
<li><em>Use as read receipt</em>: template to use instead of the default
read receipt text</li>
<li><em>Favorite</em>: template will be added in the main reply popup
menu</li>
<li><em>Snippet</em>: template will be used as text fragment (since
version 1.1857)</li>
<li><em>Hide from menus</em>: template will be hidden (disabled)</li>
</ul>
<p>Since version 1.2068 it is possible to send a template message with
an intent:</p>
<pre><code>(adb shell) am start-foreground-service -a eu.faircode.email.TEMPLATE --es template &lt;template name&gt; --es identity &lt;identity display name&gt; --es to &lt;email address&gt; --es cc &lt;email address&gt; --es subject &lt;subject&gt;</code></pre>
<p><strong>Important</strong>: you need to configure a display name for
the identity, and use this to identify the identity.</p>
<p><br /></p>
<p><a name="faq180"></a> <strong>(180) How do I use
LanguageTool?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq180">Google
Translate</a></p>
<p>LanguageTool integration needs to be enabled in the integration
settings.</p>
<p>After writing some text, you can long press on the save draft button
to perform a grammar, style, and spell check via <a
href="https://languagetool.org/">LanguageTool</a>. Texts with
suggestions will be marked and if you tap on a marked suggestion, it
will be shown by the keyboard if the keyboard supports this, else you
can double tap or long press the marked text to show suggestions.</p>
<p>Since version 1.1974 there is an option to check paragraphs after a
new line.</p>
<p>The suboption <em>Use formal form</em> can be enabled to let
LanguageTool suggest more formal text (business, legal, etc).</p>
<p>Since version 1.2000 you can configure a username and an API key to
access the premium features. If you are looking for the API key, please
<a href="https://languagetool.org/editor/settings/access-tokens">go
here</a>.</p>
<p>You can long press text to select a word, and add it to or remove it
from the personal dictionary via the <em>copy/paste</em> pop-up
menu.</p>
<p><br /></p>
<p><a name="faq181"></a> <strong>(181) How do I use
VirusTotal?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq181">Google
Translate</a></p>
<p>VirusTotal integration needs to be enabled in the integration
settings and an API key needs to be entered. To get an API key, youll
need to sign up via the <a href="https://www.virustotal.com/">VirusTotal
website</a>.</p>
<p>When integration is enabled and an API key is available, a
<em>scan</em> icon button will be shown for each attachment. Tapping on
the scan button will calculate the SHA-256 hash of the attachment and
lookup the file via the VirusTotal API. If the file is known by
VirusTotal, the number of virus scanners considering the file as
malicious will be shown. If the file isnt known by VirusTotal, an
upload button will be shown to upload the file for analysis by
VirusTotal.</p>
<p>This feature was added in version 1.1942 and is available in non Play
store versions of the app only.</p>
<p><br /></p>
<p><a name="faq182"></a> <strong>(182) How can I select how a link
should be opened?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq182">Google
Translate</a></p>
<p>When clicking on a link, by default, a confirmation dialog will be
shown. The available browser(s) will be listed and if a browser supports
<a href="https://developer.chrome.com/docs/android/custom-tabs/">Custom
Tabs</a>, it will be listed twice, once with an “open external” icon
(the browser will be started standalone, independent of the app) and
once without this icon (the browser will be started embedded as “Custom
Tab”, dependent on the app).</p>
<p>In addition, <em>Select app</em> will be listed, which means that the
link will be handed over to Android, which will select how to open the
link. In most cases, this will be with the default browser, which you
can select in the Android settings. If there is choice, Android will ask
you how to open the link. You can select <em>Always</em> or <em>Just
Once</em>. If you want to reset <em>Always</em>, please <a
href="https://support.google.com/pixelphone/answer/6271667">see here</a>
about how to. Note that Android will always use the default browser as
selected in the Android settings and therefore will never ask which
browser to use.</p>
<p>You can confirm with <em>Ok</em> or select <em>Open with</em>, which
behaves in the same way as the <em>Select app</em> option.</p>
<p>If you ticked <em>Do not ask this again for [domain name]</em>, you
can undo this by using the <em>Reset questions</em> button in the
miscellaneous settings tab page of the app.</p>
<p>If you disabled confirming links, you can enable this (temporarily)
again in the privacy settings tab page of the app (<em>Confirm opening
links</em>: off).</p>
<p>Note that you might need to enable confirming links and reset
questions to show the link confirmation dialog again.</p>
<p>Please see <a href="#faq35">this FAQ</a> on why you should be careful
when opening links.</p>
<p><br /></p>
<p><a name="faq183"></a> <strong>(183) How do I use Send?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq183">Google
Translate</a></p>
<p><a href="https://github.com/timvisee/send">Send</a> is designed as
temporary end-to-end encrypted file storage. Only people with a link to
a file can download and decrypt a file. See for some more information <a
href="https://en.wikipedia.org/wiki/Firefox_Send">Wikipedia</a>.</p>
<p>Send integration needs to be enabled in the integration settings.</p>
<p>Optionally, you can change the host address of the Send server.
Please <a href="https://github.com/timvisee/send-instances">see here</a>
for a list of public instances.</p>
<p>To upload a file and insert a link, you can use the insert link
button in the message editor.</p>
<p>Send is only available in non-Play Store versions of the app (since
version 1.1947).</p>
<p><br /></p>
<p><a name="faq184"></a> <strong>(184) How do I password protect
content?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq184">Google
Translate</a></p>
<p>Password protected content is a simple, yet secure form of end-to-end
encryption that requires no configuration.</p>
<p>How to use: select some text by long pressing it, and in the style
toolbar at the bottom tap on the <em><ins>A</ins></em>-button and select
<em>Password protect</em> in the pop-up menu. This will replace the
selected content with a link that the recipient can click to decrypt the
content on a dedicated static web page.</p>
<p>Password protected content is sent as a <a
href="https://en.wikipedia.org/wiki/URI_fragment">URI fragment</a> and
decrypted in the browser with JavaScript. In other words, protected
content is never stored on or seen by third party servers. Since version
1.1990 received protected content will be decrypted by the app, with as
fallback decryption in the browser for other email clients.</p>
<p>Password protected content is encrypted with <a
href="https://en.wikipedia.org/wiki/Advanced_Encryption_Standard">AES</a>
/ <a href="https://en.wikipedia.org/wiki/Galois/Counter_Mode">GCM</a>
with a 256 bits key derived with <a
href="https://en.wikipedia.org/wiki/PBKDF2">PBKDF2</a> / <a
href="https://en.wikipedia.org/wiki/Secure_Hash_Algorithms">SHA</a>-512
with 120,000 iterations. With a sufficiently long/complex password,
which is communicated to the recipient securely, this is considered safe
in 2022 and for the foreseeable future.</p>
<p>Due to <a href="https://stackoverflow.com/a/417184/1794097">length
limitations</a> of <a href="https://en.wikipedia.org/wiki/URL">URL</a>s
and Android <a
href="https://developer.android.com/reference/android/os/TransactionTooLargeException">binder
limitations</a>, the maximum content size is 1,500 bytes, which includes
<a href="https://en.wikipedia.org/wiki/HTML">HTML</a> formatting tags.
Images will be replaced with placeholders to reduce the content size,
but other formatting, like bold, italic, links, etc., will be retained.
If the content is too long, there will be a popup <em>Text too
long</em>.</p>
<p>The content size limit is also why complete messages (possibly
including a long reply chain) cannot be password protected. You can use
<a href="https://en.wikipedia.org/wiki/Pretty_Good_Privacy">PGP</a> or
<a href="https://en.wikipedia.org/wiki/S/MIME">S/MIME</a> encryption for
this (see <a href="#faq12">this FAQ</a>).</p>
<p><a
href="https://en.wikipedia.org/wiki/Cross-site_scripting">Cross-site
scripting</a> is prevented by using <a
href="https://github.com/cure53/DOMPurify">DOMPurify</a> (Apache License
Version 2.0).</p>
<p>Protected content is only available in non-Play Store versions of the
app (since version 1.1985) and requires Android 8 Oreo or later.</p>
<p>Sending protected content is a pro feature, decrypting protected
content is a free feature.</p>
<p><br /></p>
<p><a name="faq185"></a> <strong>(185) Can I install FairEmail on
Windows?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq185">Google
Translate</a></p>
<p>Yes, you can if you use Windows 11 or later and install the <a
href="https://learn.microsoft.com/en-us/windows/android/wsa/">Windows
Subsystem for Android</a>.</p>
<p>Youll need to <a
href="https://github.com/M66B/FairEmail/releases">download the GitHub
version</a> of the app and sideload it, which means that you need to
enable developer mode, please <a
href="https://learn.microsoft.com/en-us/windows/android/wsa/#test-and-debug">see
here</a>, and that you need to install adb (platform tools), <a
href="https://developer.android.com/studio/command-line/adb">see
here</a>.</p>
<p>You can install the app via the Windows command line like this:</p>
<pre><code>cd /path/to/platform-tools
adb connect 127.0.0.1:58526
adb install /path/to/FairEmail-xxx.apk</code></pre>
<p>It is also possible to install the Play Store, but this is more
complicated.</p>
<p>The app isnt available in the Amazon store because Amazon rebuilds
all Android apps, and unfortunately, the app doesnt work correctly
after rebuilding anymore. Amazon never responded to an issue reported
about this.</p>
<p><br /></p>
<p><a name="faq186"></a> <strong>(186) How can I let the app auto store
iCalendar invitations?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq186">Google
Translate</a></p>
<ul>
<li>Install the <a
href="https://github.com/M66B/FairEmail/releases">GitHub version</a> of
the app</li>
<li>Grant permissions via setup step 2 of the main settings screen</li>
<li>Select a calendar in the accounts settings under <em>Manual setup
and account options</em> (you can use the <em>Reset</em> button to
disable storing invitations)</li>
</ul>
<p>New invitations, with both a start and end date, will be stored
automatically as <em>tentative</em>, with no alarms and reminders set.
If you accept or decline an invitation, the status will be updated
accordingly, after the accept/decline message has been sent
successfully. Received updates and cancellations will be processed as
well.</p>
<p>Since version 1.2115 it is possible to disable storing invitations
tentatively with an option in the miscellaneous-settings tab page. In
this case, the event will be stored after it has been accepted.</p>
<p>Please make sure synchronizing calendars is enabled in the Android
account settings if you want to synchronize events to other devices.</p>
<p>This feature is available since version 1.1996.</p>
<p>This feature is not available in the Play store version of the app
due to the permissions required.</p>
<p>This is a pro feature.</p>
<p><br /></p>
<p><a name="faq187"></a> <strong>(187) Are colored stars synchronized
across devices?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq187">Google
Translate</a></p>
<p>Colored stars cant be stored on email servers because email
protocols do not support this. In other words, the color of stars is
stored on your device only, and wont be synchronized across
devices.</p>
<p><br /></p>
<p><a name="faq188"></a> <strong>(188) Why is Google backup
disabled?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq188">Google
Translate</a></p>
<p>Google backup is disabled to prevent privacy-sensitive information,
like account credentials and email addresses, from <a
href="https://developer.android.com/guide/topics/data/autobackup">automatically
being sent to Google</a>.</p>
<p>In theory, there is client-side encryption, but there is no
specification available about what this means. Moreover, many people do
not trust Google.</p>
<p>Unfortunately, it is not possible to enable cloud backup for other
backup software without enabling Google backup. Whether Google backup is
enabled needs to be specified in the app manifest. So, unfortunately, it
isnt possible to add an option for this.</p>
<p>As a replacement, you can back up and restore all settings, including
the account settings and credentials, via the backup-settings tab page.
This backup export uses a proper encryption method, <a href="#faq36">see
here</a>.</p>
<p><br /></p>
<p><a name="faq189"></a> <strong>(189) What is cloud sync?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq189">Google
Translate</a></p>
<p>Cloud sync is meant to synchronize configuration data across devices.
It can be used to restore configuration data onto a new device too.</p>
<p>Cloud sync is based on a cloud account. You can register/login by
entering a username and a password and using the <em>Login</em>
button.</p>
<p>A cloud sync account needs to be activated, which is to prevent
misusing the cloud sync server. To activate a cloud sync account, use
the <em>Activate</em> button to send an email to a special email
address. The email needs to come from an address used to activate the
pro features before. Youll receive an email in response indicating
whether the activation was succesful or not.</p>
<p>The app will automatically synchronize once a day around 1:30 AM,
provided there is an internet connection, otherwise synchronization will
be postponed until after an internet connection becomes available. You
can also manually synchronize with the opposite arrows button.</p>
<p>Synchronization will currently add and update enabled accounts and
identities only, but on the roadmap is synchronizing blocked senders and
rules too.</p>
<p>Updating includes enabling/disabling accounts and identities.</p>
<p>Existing accounts or identities will never be deleted</p>
<p>Please note that accounts are only considered the same if they are
cloud synced and never if the same account is configured on different
devices.</p>
<p>All data is <a
href="https://en.wikipedia.org/wiki/End-to-end_encryption">end-to-end
encrypted</a>, which means that the cloud server, currently powered by
AWS, cant see the data contents. The used encryption method is <a
href="https://en.wikipedia.org/wiki/AES-GCM-SIV">AES-GCM-SIV</a> using a
256 bit key derived from the username and password with <a
href="https://en.wikipedia.org/wiki/PBKDF2">PBKDF2</a> using SHA256 and
310,000 iterations.</p>
<p>Cloud sync is an experimental feature. It is not available for the
Play Store version of the app, yet.</p>
<p><br></p>
<p><a name="faq190"></a> <strong>(190) How do I use OpenAI
(ChatGPT)?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq190">Google
Translate</a></p>
<p>OpenAI can only be used if configured and enabled.</p>
<p><strong>Setup</strong></p>
<ul>
<li>Create an account <a
href="https://platform.openai.com/signup">here</a></li>
<li>Create an API key <a
href="https://platform.openai.com/account/api-keys">here</a></li>
<li>Copy the API key and paste it in the corresponding field of the
integration settings</li>
<li>Enable the OpenAI switch</li>
</ul>
<p><br></p>
<p><strong>Usage</strong></p>
<p>Tap on the robot button in the top action bar of the message editor.
The text in the message editor (if any) and the first part of the
message being replied to (if any) will be used for <a
href="https://platform.openai.com/docs/guides/chat/introduction">chat
completion</a>. If text is selected in the message editor, only the
selected text will be used, and it will be replaced by the answer. A
maximum of 1,000 characters of the message being replied to will be used
to avoid exceeding the token limit.</p>
<p>For example: create a new draft and enter the text “<em>How far is
the sun?</em>”, and tap on the robot button in the top action bar.</p>
<p><br></p>
<p>OpenAI isnt very fast, so be patient. Sometimes a timeout error
occurs because the app is not receiving a response from OpenAI.</p>
<p><br></p>
<p>Depending on the ChatGPT account (free or paid) there are usage
limits. If you exceed the limit, there will be an error message like
this:</p>
<p><em>Error 429: Too Many Requests insufficient_quota: You exceeded
your current quota, please check your plan and billing details</em></p>
<p>In this case, youll either need to wait, or upgrade your ChatGPT
plan. Please <a
href="https://help.openai.com/en/articles/6843909-rate-limits-and-429-too-many-requests-errors">see
here</a> for details.</p>
<p><br></p>
<p>You can select the <a
href="https://platform.openai.com/docs/models/overview">model</a>,
configure the <a
href="https://platform.openai.com/docs/api-reference/chat/create#chat/create-temperature">temperature</a>
and enable <a
href="https://platform.openai.com/docs/api-reference/moderations">moderation</a>
in the integration settings.</p>
<p>If you have access to GPT-4, you can change the model name to <a
href="https://platform.openai.com/docs/models/gpt-4">gpt-4</a> in the
integration settings. There is currently a <a
href="https://openai.com/waitlist/gpt-4-api">waitlist</a> for API GPT-4
access.</p>
<p>Please read the <a
href="https://openai.com/policies/privacy-policy">privacy policy</a> of
OpenAI, and perhaps <a
href="https://katedowninglaw.com/2023/03/10/openais-massive-data-grab/">this
article</a> and <a
href="https://www.ncsc.gov.uk/blog-post/chatgpt-and-large-language-models-whats-the-risk">this
article</a> too.</p>
<p>FairEmail does not use third-party libraries to avoid being tracked
when OpenAI is not being used.</p>
<p><br></p>
<p>It is possible to use <strong>DeepInfra</strong> too (since version
1.2132).</p>
<ul>
<li>Create an account on the <a href="https://deepinfra.com/">DeepInfra
website</a> and deploy a model, for example,
<em>meta-llama/Llama-2-13b-chat-hf</em></li>
<li>In the integration settings enter the URI
https://api.deepinfra.com/v1/openai, an API key and the model name</li>
</ul>
<p><br></p>
<p>This feature is experimental and available in the GitHub version only
and requires version 1.2053 or later.</p>
<p><br></p>
<p><a name="faq191"></a> <strong>(191) How do I download and keep older
messages on my device?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq191">Google
Translate</a></p>
<p>You can download and keep older messages in the unified inbox folders
by using <em>Fetch more messages</em> in the three-dots overflow menu of
the start screen. For other folders, you can long press the folder in
the folder list of the account (tap on the account name in the
navigation menu = left side menu). Please read the remark in the
confirmation dialog box.</p>
<p>Note that starred (favorite) messages will be kept on your device
“forever”.</p>
<p>Instead of downloading many messages to your device, consider <a
href="#faq13">searching for messages on the email server</a>.</p>
<p><br></p>
<p><a name="faq192"></a> <strong>(192) How can I resolve Couldnt
connect to host, port: …; timeout …; ?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq192">Google
Translate</a></p>
<p>This error message means that the app didnt receive a response from
the email server of your email provider. The email server might not be
responding, for example because it is offline for maintenance, or the
response might not arrive, for example due to internet connectivity
issues.</p>
<p>So, please check if your email provider didnt announce server
maintenance, and if your internet connection is working correctly. Also,
try to switch to mobile data or Wi-Fi.</p>
<p>If you are using a VPN, firewall, ad blocker, or similar, please try
to disable it, or make an exception for FairEmail. Email servers often
block connections via a VPN, and in general from foreign countries.</p>
<p><br></p>
<p><a name="faq193"></a> <strong>(193) How can I import Outlook
contacts?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq193">Google
Translate</a></p>
<p>If there are one or more Outlook or Office 365 accounts configured,
there will be a button in the main settings screen in setup step 2 to
download Outlook contacts (since version 1.2076). After tapping on this
button, you can select the account to download contacts for. Microsoft
will ask for permission to read the contacts, and after granting this
permission, the app will download the contacts with an email address
into the local contacts database.</p>
<p>In the message editor, type the first few letters of the email
address or name in any of the email address fields, and the downloaded
addresses will be suggested.</p>
<p>For privacy and security reasons, FairEmail doesnt have permissions
to write into the Android address book, and also not to write in the
address book of Outlook. This means that contacts can be downloaded as
local contacts only, and cant be synchronized two ways. If you are
looking to synchronize your Outlook contacts with the Android address
book, you should look for a sync app in the Play Store which can do
this.</p>
<p><br></p>
<p><a name="faq194"></a> <strong>(194) How can I set up automatic
deletion of old messages?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq194">Google
Translate</a></p>
<p>To set up automatic deletion of old messages:</p>
<ul>
<li>Tap on the account name in the navigation menu (left side menu)</li>
<li>Long press the folder you want to set up auto deletion for, and
select to edit the folder properties</li>
<li>Near the bottom of the properties screen, there is an option to
enable auto deletion</li>
</ul>
<p>Messages in the trash and spam folder will be
<strong>permanently</strong> deleted, and messages in other folders will
be moved to the trash folder.</p>
<p>Unread, starred and snoozed messages and messages younger than 24
hours will not be automatically deleted. You can enable auto deletion of
unread messages in the receive-settings tab page (option <em>Delete old
unread messages</em>).</p>
<p>Note that it isnt a good idea to automatically delete recent
messages, especially not for the spam folder because there might be
legitimate messages in the spam folder. There is a button or menu item
(depending on the screen size) in the top action bar/menu of the trash
and spam folder to empty the folder. This way there is at least a visual
check.</p>
<p>Auto deletion will be done on a full sync only. For the inboxes, you
can use <em>Force sync</em> in the three-dots overflow menu of the start
screen. For other folders, you can long press the folder in the folder
list of the account (<em>not</em> the navigation menu), and select
<em>Synchronize now</em> in the pop-up menu. You can also pull down the
messages list of any folder to sync it, and repeat this again within 30
seconds for a full sync.</p>
<p><br></p>
<p><a name="faq195"></a> <strong>(195) Why are all messages in the
archive folder of Gmail?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq195">Google
Translate</a></p>
<p>The Gmail server stores all messages, except the messages in the
draft, sent, trash and spam messages folder in the all messages folder
(=archive folder). FairEmail is an email client, which basically
displays what is on the email server, and therefore it will show these
messages too.</p>
<p>To be clear: FairEmail does not store the messages in the archive
folder, unless you explicitly archive a message.</p>
<p>This has advantages, though, because it makes searching in all
messages easier.</p>
<p><br></p>
<p><a name="faq196"></a> <strong>(196) Can you add empty trash on
leaving the app?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq196">Google
Translate</a></p>
<p>Besides that leaving an app is an ambiguous action, automatically
deleting trashed messages is a risky action because deleted messages
cant be restored anymore. A message could accidentally be trashed, and
you could switch to another app, which could be interpreted as leaving
the app, and the message would be gone forever.</p>
<p>Instead, you can configure auto-deletion of older messages, which is
safer because the messages wont be deleted immediately. For this,
please tap on the account name in the navigation menu (left side menu)
to go to the folder list of the account. In the folder list, long press
the trash messages folder and select to edit the folder properties. Near
the end of the properties screen, there is a checkbox to enable
auto-deletion. You might want to change the number of days to keep
messages on your device.</p>
<p>Note that the reference time is the time the message was first stored
on the device, not the date/time of the message itself.</p>
<p><br></p>
<p><a name="faq197"></a> <strong>(197) How can I print a
message?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq197">Google
Translate</a></p>
<p>You can print a message, both to a PDF or a printer, by tapping on
the horizontal three-dots button just above the message text near the
left side. You might need to tap on the &gt; button to show the
message actions again.</p>
<p>Note that you can configure a button for printing via the same pop-up
menu.</p>
<p>Printing is managed by Android for all apps. You should be able to
select the paper size, etc. You might need to update or install a driver
app for your printer via the Play Store.</p>
<p>A message is printed as-is, which means that the sender of the
message determines the margins, etc.</p>
<p><br></p>
<p><a name="faq198"></a> <strong>(198) Can you add spell
checking?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq198">Google
Translate</a></p>
<p>Spell checking should be provided by the keyboard app for all other
apps. Sometimes, particularly on ChromeOS, spell checking needs to be
enabled in the settings.</p>
<p>That said, LanguageTool, which can be enabled in the integration
settings, is an excellent style and spell checker.</p>
<p><br></p>
<p><a name="faq199"></a> <strong>(199) Can you add proxy
support?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq199">Google
Translate</a></p>
<p>In fact, (HTTP, HTTPS, SOCKS) proxy support was removed because it is
not possible to let an app proxy DNS requests, or in other words, an
in-app proxy will always leak host names and therefore give a false
sense of security.</p>
<p>If you want to proxy traffic, for example to use Tor, you should use
an Android VPN-service based app, which is the only way to reliably
proxy traffic.</p>
<p>Please note that if you want to use a .onion address, you will need
to disable private DNS in the Android network settings.</p>
<p><br></p>
<p><a name="faq200"></a> <strong>(200) How can I use Adguard to remove
tracking parameters?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq200">Google
Translate</a></p>
<p>To use <a href="https://adguard.com/">Adguard</a> to remove tracking
parameters from links:</p>
<ol type="1">
<li>Enable confirming links in the privacy-settings tab page</li>
<li>Download and enable <a
href="https://github.com/AdguardTeam/FiltersRegistry">the Adguard filter
list</a>, also via the privacy-settings tab page</li>
<li>When you tap on a link, the app will check the filter list</li>
<li>If a list entry is found for the link, the app will suggest to
<em>Remove tracking parameters</em> in the confirmation dialog box</li>
</ol>
<p>Note that the Adguard filter list contains over 2,000 entries, which
takes a few moments to scan, visible as a short delay between tapping on
a link and the link confirmation dialog box appearing.</p>
<p><br></p>
<p><a name="faq201"></a> <strong>(201) What is certificate
transparency?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq201">Google
Translate</a></p>
<p>Please see <a
href="https://certificate.transparency.dev/howctworks/">this article</a>
about what certificate transparency is. Alternatively, see <a
href="https://en.wikipedia.org/wiki/Certificate_Transparency">this
Wikipedia article</a>.</p>
<p>When certificate transparency is enabled in the connection-settings
tab page of the app, the <a
href="https://github.com/GoogleChrome/CertificateTransparency/blob/master/ct_policy.md">Chrome
Certificate Transparency Policy</a> will be applied.</p>
<p>FairEmail uses <a
href="https://github.com/appmattus/certificatetransparency">this
library</a> to implement certificate transparency via a custom trust
manager.</p>
<p><br></p>
<p><a name="faq202"></a> <strong>(202) What is DNSSEC and what is
DANE?</strong></p>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23faq202">Google
Translate</a></p>
<p>Please see <a
href="https://en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions">this
Wikipedia article</a> about what DNSSEC is.</p>
<p>Please see <a
href="https://github.com/internetstandards/toolbox-wiki/blob/main/DANE-for-SMTP-how-to.md">this
article</a> about what DANE is. Alternatively, see <a
href="https://en.wikipedia.org/wiki/DNS-based_Authentication_of_Named_Entities">this
Wikipedia article</a>.</p>
<p>You can use <a href="https://ssl-tools.net/tlsa-generator">this
tool</a> to generate TLSA DNS records for DANE (select either PKIX-EE or
DANE-EE).</p>
<p>You can enable enforcing DNSSEC and/or DANA in the (advanced) account
and identity settings (since version 1.2149).</p>
<p>Note that only some email providers support DANE and that only a
limited number of DNS servers support DNSSEC (January 2024: ~30%), which
is required for DANE. Most private DNS providers support DNSSEC, though.
You can configure private DNS in the Android network settings (since
Android 9). To be sure that private DNS is being used, better configure
a host name like <em>dns.google</em>,
<em>1dot1dot1dot1.cloudflare-dns.com</em> or <em>dns.quad9.net</em>. An
alternative is using Certificate Transparency, see the previous FAQ.</p>
<p>Some email providers known to support DANE for client-to-server
traffic:</p>
<ul>
<li><a href="https://disroot.org/">Disroot.org</a></li>
<li><a href="https://email.freenet.de/">Freenet.de</a></li>
<li><a href="https://mailbox.org/">Mailbox.org</a></li>
<li><a href="https://posteo.de/">Posteo.de</a></li>
</ul>
<p>This is not a complete and exhaustive list.</p>
<p>Please see <a
href="https://www.zivver.com/blog/why-cisos-and-security-professionals-can-no-longer-rely-on-regular-email-for-the-sharing-of-personal-information">this
article</a> about why DANE is important.</p>
<p><br></p>
<h2>
<a name="get-support"></a>Get support
</h2>
<p>🌎 <a
href="https://translate.google.com/translate?sl=en&amp;u=https%3A%2F%2Fm66b.github.io%2FFairEmail%2F%23get-support">Google
Translate</a></p>
<p>FairEmail is supported on Android smartphones and tablets and
ChromeOS only.</p>
<p>There is support only if the app was downloaded via one of the <a
href="https://github.com/M66B/FairEmail#downloads">supported download
locations</a>.</p>
<p>Only the latest Play store version and latest GitHub release are
supported. The F-Droid build is supported only if the version number is
the same as the version number of the latest GitHub release. This also
means that downgrading is not supported.</p>
<p>There is no support for things that are not directly related to
FairEmail.</p>
<p>There is no support on building and developing things by
yourself.</p>
<p><a name="feature_request"></a></p>
<p>A change will be considered only if more than a few people ask for
it. Changes in the past resulted too often in lots of complaints of
other people.</p>
<p>Requested features should:</p>
<ul>
<li>within the scope of the app</li>
<li>be useful to more than a few people</li>
<li>fit logically and consistently within the app</li>
<li>fit within the philosophy of the app (privacy-oriented,
security-minded)</li>
<li>comply with common standards (IMAP, SMTP, etc.)</li>
<li>comply with the <a
href="https://developer.android.com/docs/quality-guidelines/core-app-quality">Core
app quality guidelines</a></li>
</ul>
<p>Features unrelated to email, including reading newsgroups and reading
RSS feeds, fall outside the scope of the project.</p>
<p>The goal of the design is to be minimalistic (no unnecessary menus,
buttons, etc) and non distracting (no fancy colors, animations, etc).
All displayed things should be useful in one or another way and should
be carefully positioned for easy usage. Fonts, sizes, colors, etc should
be material design whenever possible.</p>
<p>There are requests daily to change the appearance in this or that
way, but the problem is that these requests are more often than not
conflicting. To prevent making other people unhappy, changes in the
appearance always need to clearly and objectively contribute to the
usability of the app to be considered.</p>
<p>A feature will be considered useful to most people if more than 0.1%
of the users request a feature, which in practice means about 500
people.</p>
<p>Features not fulfilling these requirements will likely be rejected.
This is also to keep maintenance and support in the long term feasible.
Please see also this Wikipedia article about <a
href="https://en.wikipedia.org/wiki/Feature_creep">feature
creep</a>.</p>
<p>Note that there are already more features and options in FairEmail
than in any other Android email client.</p>
<p><a name="quick-support"></a></p>
<p><br /></p>
<p>🛟 🛟 🛟 🛟 🛟</p>
<p>🇬🇧 If you have a question, want to request a feature or report a bug,
<strong>please use <a
href="https://contact.faircode.eu/?product=fairemailsupport">this
form</a></strong>.</p>
<p>🇩🇪 Wenn Sie eine Frage haben, eine Funktion anfordern oder einen
Fehler melden möchten, <strong>verwenden Sie bitte <a
href="https://contact.faircode.eu/?product=fairemailsupport">dieses
Formular</a></strong>.</p>
<p>🇫🇷 Si vous avez une question, souhaitez demander une fonctionnalité
ou signaler un bogue, <strong>veuillez utiliser <a
href="https://contact.faircode.eu/?product=fairemailsupport">ce
formulaire</a></strong>.</p>
<p><br /></p>
<p>GitHub issues are disabled due to frequent misusage.</p>
<p><br /></p>
<p>Copyright © 2018-2024 Marcel Bokhorst.</p>