我正在尝试将Android应用中的电子邮件直接发送给收件人。但是,当我单击“发送”时,没有任何反应。没有成功吐司。
我使用了这些类:JSSEProvider,ByteArrayDatasource,MailSender
这是我的主要代码:
Send_mail.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if ("".equals(recipient_mail.getText().toString().trim())) {
Toast.makeText(FirstActivity.this, "Enter Recipent Email ", Toast.LENGTH_SHORT).show();
} else {
new Thread(new Runnable() {
@Override
public void run() {
try {
MailSender sender = new MailSender(sender_mail.getText().toString(),
mail_password.getText().toString());
sender.sendMail(Subject.getText().toString(), Text.getText().toString(),
sender_mail.getText().toString(), recipient_mail.getText().toString());
Toast.makeText(context, "Success!", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
Log.e("SendMail", e.getMessage(), e);
}
}
}).start();
}
}
});
这是我的对话活动:
答案 0 :(得分:1)
您不能在一个线程中显示Toast消息,您需要到达主线程才能实现此目的。因此,用此替换您的吐司消息
runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(FirstActivity.this, "Success!", Toast.LENGTH_SHORT).show();
}
});