Android does not provide a Java Compatible runtime and so can’t run the
standard JavaMail distribution. Instead, a special version of JavaMail is
available for Android. This special version of JavaMail depends
on a special version of the JavaBeans Activation Framework.
This version is available from the java.net maven repository.
You can try out this version by adding the following to your
build.gradle file for your Android application:
pickFirst 'META-INF/LICENSE.txt' // picks the JavaMail license file
// use whatever the current version is...
One of the standard Java features not supported on Android is SASL. That means
none of the “mail.protocol.sasl.*” properties will have any effect. One of
the main uses of SASL was to enable OAuth2 support. The latest version
of JavaMail includes built-in OAuth2 support that doesn’t require SASL.
See the OAuth2 page for more details.
JavaMail for Android requires at least Android API level 19,
which corresponds to
currently the oldest supported version of Android.