props.put("mail.smtp.connectiontimeout", "5000");
props.put("mail.smtp.timeout", "5000");
try
{
//Set the host smtp address
Properties props = new Properties();
if (Integer.parseInt(port) == 465) // SSL
{
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.socketFactory.port", port);
props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.socketFactory.fallback", "true");
}
else
{
props.put("mail.smtp.starttls.enable", "true");
}
props.put("mail.smtp.connectiontimeout", "5000");
props.put("mail.smtp.timeout", "5000");
Session mailSession = Session.getInstance(props);
mailSession.setDebug(false);
Transport transport = mailSession.getTransport("smtp");
MimeMessage message = new MimeMessage(mailSession);
message.setSubject(subject);
message.setContent(messageString, "text/plain");
message.addRecipient(Message.RecipientType.TO, new InternetAddress(recipients));
message.setFrom(new InternetAddress(recipients));
transport.connect(host, Integer.parseInt(port), username, password);
transport.sendMessage(message, message.getRecipients(Message.RecipientType.TO));
transport.close();
} catch (Exception e)
{
return lastError;
}
More info on javamail options
https://javamail.java.net/nonav/docs/api/com/sun/mail/smtp/package-summary.html
Hi but if i want to cancel or stop email and tell to user try later what i need to do?? because i have a problem whit slow conexions , if iput timeout the aplication die (in android)
Probably you didn\'t have the \"try {} catch {}\" around your email sending functions ?