我之前在模拟器上使用我的GMail帐户时已经有了android的电子邮件意图。
几周后我回到了我的代码,并且更改了我以前的模拟器。现在每当我尝试发送电子邮件时,我都会得到臭名昭着的“没有应用程序可以执行此操作”的消息。
我已通过模拟器浏览器登录我的GMail帐户,但无法从Google Play商店下载GMail应用程序(我目前收到一条消息,告诉我之前没有访问过google play soptre)。
这是我的电子邮件意图:
public void onClick(View sendEmailClick) {
emailAdd = setEmailAddress.getText().toString();
emailSub = setEmailSubject.getText().toString();
emailMess = setEmailMessage.getText().toString();
Intent sendEmailIntent = new Intent(Intent.ACTION_SEND);
sendEmailIntent.setType("message/rfc822");
sendEmailIntent.putExtra(Intent.EXTRA_EMAIL,new String[] {emailAdd});
sendEmailIntent.putExtra(Intent.EXTRA_SUBJECT, emailSub);
sendEmailIntent.putExtra(Intent.EXTRA_TEXT, emailMess);
startActivity(Intent.createChooser(sendEmailIntent, "Send mail..."));
finish();
}
如上所述,这是一个非常令人沮丧的问题,我已经让这段代码工作了。我是否必须安装GMail应用程序?
答案 0 :(得分:1)
尝试使用以下代码
Intent sendEmailIntent = new Intent(android.content.Intent.ACTION_SEND);
sendEmailIntent.setType("text/html");
sendEmailIntent.putExtra(android.content.Intent.EXTRA_EMAIL,new String[] {emailAdd});
sendEmailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, emailSub);
sendEmailIntent.putExtra(android.content.Intent.EXTRA_TEXT, emailMess);
startActivity(Intent.createChooser(sendEmailIntent, "Send mail..."));
答案 1 :(得分:0)
对于其他任何收到此错误的人:
您的应用现在应该将Gmail检测为相关的电子邮件应用,以发送您的电子邮件意图。
答案 2 :(得分:0)
模拟器中应该安装了一个电子邮件应用程序。
例如:Gmail
试试这个代码:
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("message/rfc822");
i.putExtra(Intent.EXTRA_EMAIL, new String[] { "xxx@gmail.com" });
i.putExtra(Intent.EXTRA_SUBJECT, "Title");
String message = "Message";
i.putExtra(Intent.EXTRA_TEXT, message);
try {
startActivity(Intent.createChooser(i, "Title"));
} catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(VtuLifeMainActivity.this,
"There are no email clients installed.", Toast.LENGTH_SHORT)
.show();
}