Android Intents:使用内置的应用程序选择器通过电子邮件或短信发送消息

时间:2016-09-11 15:38:35

标签: android android-intent

目标:当用户点击Send to...按钮时,我希望android打开一个可以发送消息的应用列表(电子邮件,短信等)。用户选择一个。该应用程序打开时已经输入了短信。

以下是我尝试实现的代码:

 Intent intent = new Intent(Intent.ACTION_SEND);
 intent.setType("text/plain");
 intent.putExtra(Intent.EXTRA_TEXT, outputTextView.getText());
 if (intent.resolveActivity(getPackageManager()) != null) {
     startActivity(intent);

问题:运行时,会正确显示可用应用列表(Gmail,环聊,Messenger,保留,翻译等)。如果我选择GMail,它工作正常。 但是:如果我选择环聊,保留,翻译或任何其他建议的应用,我的文字就不会显示在那些内容中。

我错过了什么?

1 个答案:

答案 0 :(得分:1)

试试此代码

Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND);
        shareIntent.setType("text/plain");
        shareIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Try this code for Sharing!");
        shareIntent.putExtra(android.content.Intent.EXTRA_TEXT, "I'm trying to share data....");

        Intent chooserIntent = Intent.createChooser(shareIntent, "Share with");
        chooserIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        startActivity(chooserIntent);