У меня небольшие проблемы с кодом, когда я пытаюсь отправить письмо из приложения в Android Studio.Поскольку я не хочу входить в приложение Gmail, я пытаюсь отправить его прямо из приложения.
Я следил за некоторыми другими людьми здесь, в StackOverflow, но моя проблема, я думаю, имеетздесь нет ответа.
Вот оно:
при запуске этой строки:
transport.sendMessage (mensaje, mensaje.getAllRecipients ());
до этого идет:
if (traceTag! = 0) {Trace.traceEnd (traceTag);}
, который запускается в Looper.java (строка 196).Он застревает там и не отправляет сообщение.
Я оставляю весь код здесь:
открытый класс EnviarPregunta расширяет Activity реализует View.OnClickListener {
public static Session session;
public static Properties properties;
public static Transport transport;
public static MimeMessage mensaje;
// User who sends
public static String direccionCorreo = "EMAIL";
public static String contrasenyaCorreo = "PASSWORD";
// To where?
public static String destinatarioCorreo = "jparzivaldeveloper@gmail.com";
public EditText nombre, pregunta;
public Button enviar;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_enviar_pregunta);
nombre = (EditText) findViewById(R.id.nombre);
pregunta = (EditText) findViewById(R.id.pregunta);
enviar = (Button) findViewById(R.id.botonEnviar);
enviar.setOnClickListener(this);
properties = System.getProperties();
properties.put("mail.smtp.host", "smtp.gmail.com");
properties.put("mail.smtp.socketFactory.port", "465");
properties.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
properties.put("mail.smtp.auth", "true");
properties.put("mail.smtp.port", "465");
//Configuramos la sesión
session = Session.getInstance(properties, null);
}
@Override
public void onClick(View v)
{
switch (v.getId())
{
case R.id.botonEnviar:
try
{
enviar();
}
catch (MessagingException e)
{
Toast.makeText(this, "ALGO FUE MAL", Toast.LENGTH_LONG).show();
}
break;
}
}
public void enviar() throws MessagingException
{
mensaje = new MimeMessage(session);
mensaje.addRecipient(Message.RecipientType.TO, new InternetAddress(destinatarioCorreo));
mensaje.setSubject("Nueva Pregunta del Yo Nunca! -- de " + nombre.getText());
mensaje.setContent(pregunta.getText().toString(), "text/html");
transport = session.getTransport("smtp");
transport.connect("smtp.gmail.com", direccionCorreo, contrasenyaCorreo);
transport.sendMessage(mensaje, mensaje.getAllRecipients());
transport.close();
} }
Большое спасибо за вашпомощь!