1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
import android.content.Context;
import android.os.AsyncTask;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import java.io.IOException;
import java.util.Properties;
public class JavaMailAPI extends AsyncTask<Void, Void, Void> {
private Context context;
private Session session;
private String email, subject, message, nameFilePath;
public JavaMailAPI(Context context, String email, String subject, String message, String nameFilePath) {
this.context = context;
this.email = email;
this.subject = subject;
this.message = message;
this.nameFilePath = nameFilePath;
}
@Override
protected Void doInBackground(Void... voids) {
Properties properties = new Properties();
properties.put("mail.smtp.host", Utils.SMTPSERVER);
properties.put("mail.smtp.socketFactory.port", Utils.PORT);
properties.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
properties.put("mail.smtp.auth", "true");
properties.put("mail.smtp.port", Utils.PORT);
session = Session.getDefaultInstance(properties, new javax.mail.Authenticator(){
protected PasswordAuthentication getPasswordAuthentication(){
return new PasswordAuthentication(Utils.IDENTIFIANT, Utils.PASSWORD);
}
});
MimeMessage mimeMessage = new MimeMessage(session);
try {
mimeMessage.setFrom(new InternetAddress(Utils.EMAIL));
mimeMessage.addRecipients(Message.RecipientType.TO, String.valueOf(new InternetAddress(email)));
mimeMessage.setSubject(subject);
Multipart emailContent = new MimeMultipart();
MimeBodyPart texbody = new MimeBodyPart();
MimeBodyPart csvAttachement = new MimeBodyPart();
csvAttachement.attachFile(nameFilePath);
emailContent.addBodyPart(texbody);
texbody.setText(message);
emailContent.addBodyPart(csvAttachement);
mimeMessage.setContent(emailContent);
Transport.send(mimeMessage);
} catch (MessagingException | IOException e) {
e.printStackTrace();
}
return null;
}
} |
Partager