Tengo problemas con JavaMail en aplicacion Android...
Publicado por JuanC (1 intervención) el 12/06/2012 22:36:06
Hola a todos.
Estoy aprendiendo a programar en JAVA para hacer aplicaciones para Android y estoy haciendo un programa que envie un correo por SMTP, configurando la cuenta previamente. Estoy utilizando las librerias de mail.jar, activation.jar, additionnal.jar en mi proyecto android en Eclipse, el código esta sin errores de syntaxis y a la hora de ejecutarlo, tanto en el telefono como en el emulador de Android, se bloquea el programa y se cierra, esto no pasa si pongo el mismo código en un proyecto JAVA en eclipse, en el proyecto java funciona perfectamente y la cuestion es, que quiero que, al precionar un boton en la pantalla del telefono se envie el correo.
Si alguien me puede orientar con mi problema se lo agradezco.
Este es el código que estoy utilizando:
import java.util.Properties;
import android.app.Activity;
import android.os.Bundle;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
try
{
// Propiedades de la conexión
Properties props = new Properties();
props.put("mail.smtp.host", "smtp.live.com");
props.setProperty("mail.smtp.starttls.enable", "true");
props.setProperty("mail.smtp.port", "25");
props.setProperty("mail.smtp.user", "[email protected]");
props.setProperty("mail.smtp.auth", "true");
// Preparamos la sesion
Session session = Session.getDefaultInstance(props);
session.setDebug(true);
// Construimos el mensaje
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress("[email protected]"));
message.addRecipient(
Message.RecipientType.TO,
new InternetAddress("[email protected]"));
message.setSubject("Hola");
message.setText(
"Mensaje de prueba con JavaMail "+"Si recibiste este mensaje quiere decir que funciona...");
// Lo enviamos.
Transport t = session.getTransport("smtp");
t.connect("[email protected]", "54056727b");
t.sendMessage(message, message.getAllRecipients());
// Cierre.
t.close();
}
catch (Exception e)
{
e.printStackTrace();
}
});
}
}
}
}
Estoy aprendiendo a programar en JAVA para hacer aplicaciones para Android y estoy haciendo un programa que envie un correo por SMTP, configurando la cuenta previamente. Estoy utilizando las librerias de mail.jar, activation.jar, additionnal.jar en mi proyecto android en Eclipse, el código esta sin errores de syntaxis y a la hora de ejecutarlo, tanto en el telefono como en el emulador de Android, se bloquea el programa y se cierra, esto no pasa si pongo el mismo código en un proyecto JAVA en eclipse, en el proyecto java funciona perfectamente y la cuestion es, que quiero que, al precionar un boton en la pantalla del telefono se envie el correo.
Si alguien me puede orientar con mi problema se lo agradezco.
Este es el código que estoy utilizando:
import java.util.Properties;
import android.app.Activity;
import android.os.Bundle;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
try
{
// Propiedades de la conexión
Properties props = new Properties();
props.put("mail.smtp.host", "smtp.live.com");
props.setProperty("mail.smtp.starttls.enable", "true");
props.setProperty("mail.smtp.port", "25");
props.setProperty("mail.smtp.user", "[email protected]");
props.setProperty("mail.smtp.auth", "true");
// Preparamos la sesion
Session session = Session.getDefaultInstance(props);
session.setDebug(true);
// Construimos el mensaje
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress("[email protected]"));
message.addRecipient(
Message.RecipientType.TO,
new InternetAddress("[email protected]"));
message.setSubject("Hola");
message.setText(
"Mensaje de prueba con JavaMail "+"Si recibiste este mensaje quiere decir que funciona...");
// Lo enviamos.
Transport t = session.getTransport("smtp");
t.connect("[email protected]", "54056727b");
t.sendMessage(message, message.getAllRecipients());
// Cierre.
t.close();
}
catch (Exception e)
{
e.printStackTrace();
}
});
}
}
}
}
Valora esta pregunta


0