有谁知道如何把这个电子邮件发送/移动到服务? 这是代码:
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("text/plain");
i.putExtra(Intent.EXTRA_EMAIL , new String[]{"myemail@hotmail.com"});
i.putExtra(Intent.EXTRA_SUBJECT, "subject of email");
i.putExtra(Intent.EXTRA_TEXT , "body of email");
这是我的服务代码(Not Works并给我一些“强制关闭”):
@Override
public void onStart(Intent intent, int startid) {
//Toast.makeText(this, "My Service Started", Toast.LENGTH_LONG).show();
sendEmail();
}
public void sendEmail()
{
Intent i = new Intent(Intent.ACTION_SEND);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.setType("text/plain");
i.putExtra(Intent.EXTRA_EMAIL , new String[]{"myemail@hotmail.com"});
i.putExtra(Intent.EXTRA_SUBJECT, "subject of email");
i.putExtra(Intent.EXTRA_TEXT , "body of email");
try {
getApplication().startActivity(Intent.createChooser(i, "Send mail..."));
} catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(EmailService.this,ex.getMessage(), Toast.LENGTH_SHORT).show();
Toast.makeText(EmailService.this, "There are no email clients installed.", Toast.LENGTH_SHORT).show();
}
}
请帮助解决我的问题..谢谢..
答案 0 :(得分:1)
因为我想通过后台无声地发送电子邮件
通过ACTION_SEND
无法做到这一点。如果您想在没有用户参与的情况下发送电子邮件,则需要集成自己的SMTP库(在某处可以使用JavaMail的Android端口)。
不行,给我一些“强行关闭”
在Eclipse中使用adb logcat
,DDMS或DDMS透视图来检查LogCat并查看与“强制关闭”相关联的堆栈跟踪。
此外,请勿使用getApplication()
,因为您不需要它。