【发布时间】:2015-05-10 20:18:21
【问题描述】:
我正在尝试构建一个简单的 android 应用程序来使用 android 意图属性发送电子邮件。我使用按钮的 onClicklistener 来触发意图函数来调用电子邮件客户端,但由于某种原因它不起作用。我所看到的当我单击按钮时,代码底部会显示 Toast 消息。没有提示询问电子邮件客户端或任何内容。
buttonSend.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if ( mu.isInternetAvailable(SendMessage.this) ==true)
{
Log.i("START ONCLICK","");
String to = emailid.getText().toString();
String subject = textSubject.getText().toString();
String driverId1=driverid.getText().toString();
String message = textMessage.getText().toString();
SharedPreferences spmail = SendMessage.this.getSharedPreferences("email", MODE_WORLD_READABLE);
driver_mail=spmail.getString("email","");
Log.i("SEND MAIL id is","DRIVERID "+driver_mail);
Intent email = new Intent(Intent.ACTION_SENDTO);
//need this to prompts email client only
email.setType("message/rfc822");
email.setData(Uri.parse("mailto:"));
String[] to1={"info@ZapaTaxi.com"};
email.putExtra(Intent.EXTRA_EMAIL, to1);
email.putExtra(Intent.EXTRA_SUBJECT, subject);
email.putExtra(Intent.EXTRA_TEXT, message);
startActivity(Intent.createChooser(email, "Choose an Email client :"));
Toast.makeText(SendMessage.this, "E-mail succesfully sent!!!!!", Toast.LENGTH_SHORT).show();
Intent it1=new Intent(SendMessage.this,Home.class);
startActivity(it1);
}
}
【问题讨论】:
-
您是否尝试过相同的代码,但没有任何参数,例如 .setData 和 .putExtra 代码?
-
试试这个:email.setData(Uri.parse("mailto:info@ZapaTaxi.com"));
-
我尝试了你的两种解决方案都没有改变。问题是 logcat 中没有警告或错误来识别问题,请帮助大家。
-
谢谢大家,问题已解决。看来我们不能在一个方法中编写多个 startActivity 函数。
标签: android email android-intent