For the first option, neither the standard AOSP email application nor the Gmail application behave this way. They do not return any other information if the letter was sent, saved as a draft or generally discarded.
Even if they did, the user could install another email application, and you would not have a guarantee that he would play well. And even if all email applications behave in this way, the user could edit the subject, body or "to" field, so he does not even guarantee that the "email you sent" was sent.
As for the second option , email applications usually do not export content providers. For example, the manifest for the AOSP email application shows that permission com.android.email.permission.ACCESS_PROVIDER has protectionLevel of signature , which means only applications signed by the same party (Google in this case) can access them.
Gmail used to have a content provider (via permission com.google.android.gm.permission.READ_GMAIL ), but this has been changed a long time ago (around Android 2.2, according to the comments of this answer also have protectionLevel="signature" ) and now only provides label information (see documentation ).
Given the risks of confidentiality, I would say that it is unlikely that other email clients will expose content providers to the email itself.
Depending on your actual use case, an alternative third option would be to send these emails without user interaction (such as JavaMail or a similar library). This will work, for example, if you use these emails as a way to communicate with the backend (although if so, the http message will be much more suitable).
source share