使用javamail发送邮件,无需用户和密码

时间:2014-02-06 12:17:35

标签: android email passwords send

我按照这篇文章Sending Email in Android using JavaMail API without using the default/built-in app发送了没有意图的邮件。它工作正常。但我的问题是你是否可以发送邮件而无需输入你的用户名和密码?感谢

1 个答案:

答案 0 :(得分:1)

不,你不能

从代码中可以看出,usernamepassword用于登录该邮件ID,然后Email ID用于发送电子邮件

GMailSender有一个构造函数,它接受用户名和密码,用于创建登录会话,如代码

session = Session.getDefaultInstance(props, this); 

完成登录后,您就像通常在浏览器中一样从该邮件ID发送电子邮件

替代

现在,如果您想发送电子邮件,那么您可以像在此一样发送Android中的意图

    Intent email = new Intent(Intent.ACTION_SEND);
    email.putExtra(Intent.EXTRA_EMAIL, new String[]{"youremail@gmail.com"});          
    email.putExtra(Intent.EXTRA_SUBJECT, "subject");
    email.putExtra(Intent.EXTRA_TEXT, "message");
    email.setType("message/rfc822");
    startActivity(Intent.createChooser(email, "Choose an Email client"));

但是这会弹出用户选择要发送电子邮件的客户端

如果您甚至不想使用此功能,那么我建议您创建自己的webserver并向HTTP请求通过服务器发送电子邮件