>

Fórum

Fórum da RL System, voltado para analistas, programadores etc. Tudo sobre linguagem de programação e desenvolvimento Full Stack: Banco de Dados, Android, C#, Java, .NET, PHP, Node, Javascript, TypeScript, Front, HTML e muito mais.



Envio de email utilizando Classe Service


Boa Tarde,

Gostaria de saber se você poderia me ajudar, estou tentando enviar um email dentro da minha aplicação utilizando uma classe service. Achei alguma coisa mais nada funciona, teria como você me ajudar?

Vai o código anexo.

Intent gmail = new Intent(Intent.ACTION_SEND);
gmail.setClassName("com.google.android.gm","com.google.android.gm.ComposeActivityGmail");
gmail.putExtra(Intent.EXTRA_EMAIL, new String[] { "xxxxxxxx@gmail.com" });
gmail.setData(Uri.parse("xxxxxxxx@gmail.com"));
gmail.putExtra(Intent.EXTRA_SUBJECT, "Notificação CELULAR");
gmail.setType("plain/text");
gmail.putExtra(Intent.EXTRA_TEXT, "hi android jack!");
startService(gmail);


String emailaddress[] = { emailAdd };
Intent emailIntent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts("gm", "xxxxxx@gmail.com", null));
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, emailaddress.toString());
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "subjet");
emailIntent.setType("plain/text");
emailIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, mensagemEmail.toString());
startService(emailIntent);



6 Respostas


Ola jean

eu tenho um codigo aki p passar email
mas é no click do botao
ai vc so faz implementar
com service...

ta aki o codigo.......

public void onClick(View arg0) {
Properties props = new Properties();
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");

javax.mail.Session session = javax.mail.Session.getDefaultInstance(props, new javax.mail.Authenticator() {
protected javax.mail.PasswordAuthentication getPasswordAuthentication() {
return new javax.mail.PasswordAuthentication("seu email", "sua senha");
}
});

try {
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress("xx@gmail.com"));
message.setRecipients(MimeMessage.RecipientType.TO, InternetAddress.parse("email pra quem vc qr passar"));
message.setSubject("Testing Subject");
message.setContent("Sua messagem", "text/html; charset=utf-8");
Transport.send(message);

} catch (MessagingException e) {
throw new RuntimeException(e);
}
}
});




Bom Dia André acho que eu acabei não sendo muito claro e nem me referi a qual tecnologia que eu estou falando, mas, o que eu queria mesmo e enviar email de dentro do Android sem precisar usar um Activity, mas uma classe Service.




Intent itEmail = new Intent(Intent.ACTION_SEND);
itEmail.setType( "image/jpg");
itEmail.putExtra(Intent.EXTRA_SUBJECT, titulo);
itEmail.putExtra(Intent.EXTRA_TEXT, corpo);
itEmail.putExtra(Intent.EXTRA_EMAIL, destinatario);
itEmail.putExtra(Intent.EXTRA_STREAM, Uri.parse(anexo));

activity.startActivity(Intent.createChooser(itEmail,"Enviando o e-mail..."));




Este código que enviei antes vai funcionar, mas estou tentando enviar um e-mail com mais de 1 anexo e não consegui ainda.
Se vc conseguir post no tópico.
Abraço.




Pessoal eu preciso de um envio de email com uma classe implementada por Service, usando Activity eu já consegui, mais o que eu não queria é ter de abrir a tela para escolher qual o envio, eu gostaria de fazer direto de dentro do código.




ola jean,

vc chegou a ver o nosso curso de android on line
la ensina a como implementar uma service..........