java - Android:使用 Intent 发送电子邮件 - 仅提供电子邮件应用程序不起作用

标签 java android email android-intent

我正在尝试创建一个发送电子邮件的 Intent Activity 。 使用

public void emailSend(View view){
        Intent emailIntent = new Intent(Intent.ACTION_SEND);
        emailIntent.setData(Uri.parse("mailto:"));
        emailIntent.setType("plain/text");
        emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Nächstes Treffen");
        emailIntent.putExtra(Intent.EXTRA_EMAIL,adressListe);
        if (emailIntent.resolveActivity(getPackageManager()) != null){
            startActivity(emailIntent);
        }
    }

给我提供的不仅仅是电子邮件应用程序。 使用

public void emailSend(View view){
        Intent emailIntent = new Intent(Intent.ACTION_SENDTO);
        emailIntent.setData(Uri.parse("mailto:"));
        emailIntent.setType("plain/text");
        emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Nächstes Treffen");
        emailIntent.putExtra(Intent.EXTRA_EMAIL,adressListe);
        if (emailIntent.resolveActivity(getPackageManager()) != null){
            startActivity(emailIntent);
        }
    }

当我点击按钮时没有任何反应。 对于

emailIntent.setType("plain/text");

也试过了

emailIntent.setType("messageage/rfc822");

emailIntent.setType("*/*");

所有结果各不相同,但没有一个只显示电子邮件应用程序。

你知道如何解决这个问题吗?将不胜感激!

谢谢!

最佳答案

当我使用 intent android.content.Intent.ACTION_SENDTO 时,它对我不起作用,因为它显示了很多应用程序,有些应用程序不是电子邮件客户端。我找到了这种方式,它非常适合我。

Intent testIntent = new Intent(Intent.ACTION_VIEW);  
Uri data = Uri.parse("mailto:?subject=" + "text subject" + "&body=" + "text content" + "&to=" + "email@example.com");  
testIntent.setData(data);  
startActivity(testIntent);

关于java - Android:使用 Intent 发送电子邮件 - 仅提供电子邮件应用程序不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41429843/

相关文章:

java - instanceof什么时候返回FALSE?

java - instanceof 和泛型的编译错误

java - 将 map 数组添加到java应用程序

android - 从在线位置加载矢量绘图 android

php - MAC 的 SMTP 服务器 - 有什么建议吗?

java - 如何使用java发送电子邮件

java - onClick 监听器和 onClick on XML 将不起作用

android - 从左到右 curl 页面android

android - centos 中的 PJSIP ndk 配置问题

swift - MFMailComposeResult 常量不能在 Swift 2.3 中编译