安卓 - 打开带有附件提示的电子邮件意图



一直在试图弄清楚这一点,似乎找不到任何关于如何实现它的线索。

我正在尝试启动一封电子邮件来发送电子邮件,但它也自动打开附件提示,以便用户可以选择要附加到电子邮件的图像。

有谁知道一种方法可以做到这一点?

目前,我正在使用标准的电子邮件发送方式,如下所示:

        Intent emailIntent = new Intent(Intent.ACTION_SEND);
        emailIntent.setType("message/rfc822");
        emailIntent.putExtra(Intent.EXTRA_EMAIL  , new String[]{"test@email.com"});
        emailIntent.putExtra(Intent.EXTRA_SUBJECT, "test");
        try {
            startActivity(emailIntent);
        } catch (android.content.ActivityNotFoundException ex) {
            Toast.makeText(MainActivity.this, "No e-mail client found!", Toast.LENGTH_SHORT).show();
        }
    }

感谢任何帮助。

编辑:

如果这是不可能的,那么有没有办法流式传输相机拍摄的图像(多个)并将它们作为附件添加到意图中?似乎找不到一种方法来使用多个图像来做到这一点,只有一个,这就是我在要求一次拍摄多个图像并通过电子邮件发送它们之前设置应用程序的方式。

编辑2:

使用此方法在进入 onActivityResult 后从相机意图拍摄多张照片。

    if (resultCode == Activity.RESULT_OK) {
            uriList.add(Uri.fromFile(photoFile));
            try {
                Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                photoFile = CreateImageFile();
                takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photoFile));
                resultCode = 9999;
                startActivityForResult(takePictureIntent, CAMERA_REQUEST);
            } catch (Exception e) {
            }           
    }
String Message="<b>Name :</b> "+ed_name.getText().toString()+"<br><br>"+
               "<b>Email : </b>"+ed_email.getText().toString()+"<br><br>"+
               "<b>Mobile Number : </b>"+ed_mobile.getText().toString()+"<br><br>"+
               "<b>City : </b>"+ed_city.getText().toString()+"<br><br>"+
               "<b>Subject : </b>"+ed_subject.getText().toString()+"<br><br>"+
               "<b>Inquiry : </b>"+ed_msg.getText().toString()+"<br><br>";
            Spanned FinalMessage=Html.fromHtml(Message);

            Intent emailIntent = new Intent(Intent.ACTION_SEND);
            emailIntent.setType("message/rfc822");
            emailIntent.putExtra(Intent.EXTRA_EMAIL,new String[]{"test@gmail.com"});
            emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Inquiry By : "+ed_name.getText().toString());
            emailIntent.putExtra(Intent.EXTRA_TEXT,FinalMessage);
            //emailIntent.putExtra(Intent.EXTRA_BCC, new String[] {GlobleVaribles.EmailBCC });
            //emailIntent.putExtra(Intent.EXTRA_CC, new String[] {GlobleVaribles.EmailCC });
            startActivity(Intent.createChooser(emailIntent, "Pick an Email provider"));

相关内容

  • 没有找到相关文章

最新更新