如何使用用户的电子邮件ID从应用程序内发送电子邮件(无意图)

时间:2016-02-10 22:53:08

标签: java android email javamail

不重复

我想在不使用任何默认电子邮件应用程序的情况下发送电子邮件,所以我搜索了一下,我使用JavaMail API偶然发现了这个解决方案 -

Sending Email in Android using JavaMail API without using the default/built-in app

但我对这个解决方案几乎没有问题 -

我不想使用静态用户名和密码。而不是我想使用用户的电子邮件ID。但如果我直接要求用户输入他或她的密码,这将不是一个好的设计。

那么,我怎样才能以更好的方式实现这一目标。对不起,如果这听起来太宽泛了。只是寻找想法而非实际代码。

2 个答案:

答案 0 :(得分:2)

请看一下Gmail API Android Quickstart guide。您将能够通过提示帐户选择从Google Play服务获取帐户凭据并使用OAuth2对您的用户进行身份验证

答案 1 :(得分:1)

  

而不是我想使用用户的电子邮件ID

正如Gabe所说,没有"用户的电子邮件ID"在Android中。除此之外,还有一个"电子邮件ID"不足以发送电子邮件。您必须向用户询问他们所有的电子邮件帐户信息(用户名,密码,SMTP服务器等)。除非您正在撰写完整的电子邮件客户端,否则希望没有人会向您提供此信息。

  

如何以更好的方式实现这一目标

使用ACTION_SENDACTION_SENDTO

或者,从您的Web服务器发送电子邮件,您的应用程序告诉Web服务器通过您实现的Web服务API发送哪些消息并且足够安全。然后,您可以使用自己的电子邮件帐户凭据,而无需将其烘焙到应用程序中。