我正在创建一个应用程序,其中有一个 Gmail 按钮,当用户单击 Gmail 时,它会使用内置的 gmail 客户端向特定的收件人发送邮件,但是当用户单击 gmail 按钮时,它会打开一个所有的列表安装在设备中的客户端,例如远足、驱动器、电子邮件、gmail 等,用户要求选择。
这是我的代码
protected void sendEmail() {
Log.i("Send email", "");
String[] TO = {""};
String[] CC = {""};
Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.setType("message/rfc822"); //should i have to change this line of code
emailIntent.putExtra(Intent.EXTRA_EMAIL, TO);
emailIntent.putExtra(Intent.EXTRA_CC, CC);
emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Your subject"); //message subject
emailIntent.putExtra(Intent.EXTRA_TEXT, "Email message goes here"); //message content
try {
startActivity(Intent.createChooser(emailIntent,"Send mail..."));
finish();
Log.i("Finished sending email.", "");
}
catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(MailSenderActivity.this, "There is no email client installed.", Toast.LENGTH_SHORT).show();
}
}
我想要的是当用户点击 Gmail 按钮时,它只会打开内置的 Gmail 和电子邮件客户端,而不会加息等等。我怎样才能实现这一点(通过改变类型或什么?)。我尝试了很多方法,但都是徒劳的。