我使用Android Studio和这个库;https://github.com/yesidlazaro/GmailBackground .
我正在尝试从我的android应用程序发送电子邮件。但是每当我尝试从Gmail帐户发送电子邮件时,它都不起作用。因为谷歌将我的应用程序固定为“不太安全的应用程序”并阻止它。
我不得不从gmail的安全设置中允许不太安全的应用程序。但我不想这样做。我如何解决这个问题?使我的应用程序不成为不安全的应用程序?谢谢
请按照以下步骤操作
1、转到gmail 2。设置3。安全4。启用不太安全的应用程序
>
下载jar文件并粘贴到libs文件夹:下载链接
创建SendMail。Java语言
public class SendMail extends AsyncTask<Void,Void,Void> {
private Context context;
private Session session;
//Information to send email
private String email;
private String subject;
private String message;
private static int SPLASH_TIME_OUT = 3000;
//Send button
//Progressdialog to show while sending email
private ProgressDialog progressDialog;
//Class Constructor
public SendMail(Context context, String email, String subject, String message){
//Initializing variables
this.context = context;
this.email = email;
this.subject = subject;
this.message = message;
}
@Override
protected void onPreExecute() {
super.onPreExecute();
//Showing progress dialog while sending email
progressDialog = ProgressDialog.show(context,"Sending message","Please wait...",false,false);
}
@Override
protected void onPostExecute(Void aVoid) {
super.onPostExecute(aVoid);
//Dismissing the progress dialog
progressDialog.dismiss();
//Showing a success message
Toast.makeText(context,"Message Sent",Toast.LENGTH_LONG).show();
}
@Override
protected Void doInBackground(Void... params) {
//Creating properties
Properties props = new Properties();
//Configuring properties for gmail
//If you are not using gmail you may need to change the values
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.socketFactory.port", "465");
props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.port", "465");
//Creating a new session
session = Session.getDefaultInstance(props,
new javax.mail.Authenticator() {
//Authenticating the password
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("abc@gmail.com", "password");
}
});
try {
//Creating MimeMessage object
MimeMessage mm = new MimeMessage(session);
//Setting sender address
mm.setFrom(new InternetAddress("abc@gmail.com"));
//Adding receiver
mm.addRecipient(Message.RecipientType.TO, new InternetAddress(email));
//Adding subject
mm.setSubject(subject);
//Adding message
mm.setText(message);
//Sending email
Transport.send(mm);
} catch (MessagingException e) {
e.printStackTrace();
}
return null;
}}
然后在你的主要活动中。java:
//Creating SendMail object
SendMail sm = new SendMail(this, email_id, fullname, message);
//Executing sendmail to send email
sm.execute();
使用此链接启用不太安全的应用程序
我正在尝试使用Java向Gmail帐户发送邮件,代码如下。我似乎做的每件事都是正确的,但我收到了身份验证失败的消息。谷歌想让我打开“不太安全的应用”功能来实现传输。 有没有一种方法可以让Gmail对Java满意,并且不会出现“打开不太安全的应用程序”的错误? 错误: 代码: 我已经做了研究,所以据我所知,代码不是问题所在,只是没有看到一个解决方案,用于不太安全的应用程序消息。 参考文献: 参考文献
所以我遇到了这个不太安全的应用程序 我想知道是否有其他选择?我需要能够通过我的应用程序阅读电子邮件和下载附件,而无需用户自己这么做,因此Gmail API在我看来并不好。 如果不启用此选项,我也找不到任何其他访问gmail收件箱的选项。。。谢谢你的时间。
我正在用asp.netC#开发一个注册表。单击提交按钮时,我想从我的gmail帐户向注册客户的gmail帐户发送一封电子邮件。但是当我尝试时,安全邮件以“ 您好******,我们最近阻止了您登录Google帐户的尝试[jijosanthigiri@gmail.com]. 登录尝试详细信息日期 “我的代码是: 我在google上搜索了错误,但没有一个完美的解决方案可以在不输入客户的gmail帐户的情
我正在尝试使用php邮件从我的gmail帐户发送邮件。 我知道,为了使用php邮件程序发送邮件,我们需要从gmail帐户设置中启用“不太安全的应用程序”。 还有一个选项,在不启用“不太安全的应用程序”的情况下,我们可以通过启用两步验证从不太安全的应用程序发送邮件来使用“应用程序密码”。 但问题是使用“应用程序密码”,我无法发送来自php的邮件,邮件中出现用户名和密码不被接受的错误。 我搜索发现,我
我想使用python 3.4脚本从我的gmail地址发送邮件。我使用以下代码: 如果我在我的gmail帐户中“允许不太安全的应用”,脚本就可以正常工作。然而,如果我禁用“不太安全的应用程序”,它将不起作用(我收到一封来自谷歌的警告电子邮件,其中“登录尝试被阻止”)。我想修改我的代码,以便能够在不启用此功能的情况下发送邮件。 我看了所有关于类似问题的问答,但没有找到任何有用的答案或方法。有人对此有解
我正在用Android开发一个应用程序。我不知道如何从应用程序发送电子邮件?