【问题标题】:How to send audio and image file with email attachment?如何发送带有电子邮件附件的音频和图像文件?
【发布时间】:2014-01-17 12:54:23
【问题描述】:

我正在尝试发送带有声音文件和图像文件附件的电子邮件。我可以附加这两个文件,但是当我尝试发送它时,我收到了弹出消息“不幸的是,Gmail 已停止。”

代码在这里:-

    Intent intent = new Intent(Intent.ACTION_SEND_MULTIPLE);
intent.setType("Audio/mp3");
intent.setType("image/png");

intent.putExtra(Intent.EXTRA_SUBJECT, "Attachment from app");
intent.putExtra(Intent.EXTRA_TEXT, "Sending mp3 file ");

intent.putExtra(Intent.EXTRA_EMAIL,
        new String[] { "xxx@gmail.com" });
ArrayList<Uri> uris = new ArrayList<Uri>();

uris.add(Uri.fromFile(new File(mFileName.getAbsolutePath())));
uris.add(Uri.parse(picturePath.toString()));
//intent .putExtra(Intent.EXTRA_STREAM, Uri.parse(picturePath.toString()));


intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uris);

// startActivity(Intent.createChooser(intent, "Send mail"));
startActivityForResult(Intent.createChooser(intent, "Send mail"),
        EMAIL_REQUEST);

【问题讨论】:

    标签: android android-intent email


    【解决方案1】:

    在做了 google 和 RND 之后,我解决了这个问题。遵循此代码。

    Intent intent = new Intent(Intent.ACTION_SEND_MULTIPLE);
        intent.setType("Audio/mp3");
        intent.setType("image/jpg");
        intent.putExtra(Intent.EXTRA_SUBJECT, "Attachment from app");
        intent.putExtra(Intent.EXTRA_TEXT, "Sending mp3 file ");
                intent.putExtra(Intent.EXTRA_EMAIL,
                new String[] { "xxx@gmail.com" });
        ArrayList<Uri> uris = new ArrayList<Uri>();
                String[] filePaths = new String[]{mFileName.getAbsolutePath(),picturePath.toString()};
        for (String file : filePaths) {
            File fileIn = new File(file);
            Uri u = Uri.fromFile(fileIn);
            uris.add(u);
        }
                intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uris);
                startActivityForResult(Intent.createChooser(intent, "Send mail"),
                EMAIL_REQUEST );
        startActivityForResult(Intent.createChooser(intent, "Send mail"),
                RESULT_LOAD_IMAGE );
    

    【讨论】:

      【解决方案2】:

      发送试试这个代码

      final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND_MULTIPLE);
      emailIntent.setType("plain/text");
      emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL,new String[]{"email"});
      emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "subject");
      emailIntent.putExtra(android.content.Intent.EXTRA_TEXT,"Test");
      //has to be an ArrayList
      ArrayList<Uri> uris = new ArrayList<Uri>();
      //convert from paths to Android friendly Parcelable Uri's
       for (String file : filePaths)
      {
      File fileIn = new File(file);
      Uri u = Uri.fromFile(fileIn);
      uris.add(u);
      }
       emailIntent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uris);
       context.startActivity(emailIntent);
      

      【讨论】:

        【解决方案3】:

        使用 settype 是 *.

        Intent intent = new Intent(Intent.ACTION_SEND_MULTIPLE);
        intent.setType("*/*");
        
        
        intent.putExtra(Intent.EXTRA_SUBJECT, "Attachment from app");
        intent.putExtra(Intent.EXTRA_TEXT, "Sending mp3 file ");
        
        intent.putExtra(Intent.EXTRA_EMAIL,
                new String[] { "xxx@gmail.com" });
        ArrayList<Uri> uris = new ArrayList<Uri>();
        
        uris.add(Uri.fromFile(new File(mFileName.getAbsolutePath())));
        uris.add(Uri.parse(picturePath.toString()));
        //intent .putExtra(Intent.EXTRA_STREAM, Uri.parse(picturePath.toString()));
        
        
        intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uris);
        
        // startActivity(Intent.createChooser(intent, "Send mail"));
        startActivityForResult(Intent.createChooser(intent, "Send mail"),
                EMAIL_REQUEST);
        

        【讨论】:

          【解决方案4】:

          intent.setType("audio/mpeg") 用于 mp3 文件,查看 MIME 类型!

          【讨论】:

          • 这是评论而不是答案
          猜你喜欢
          • 2018-07-24
          • 1970-01-01
          • 1970-01-01
          • 2023-03-22
          • 2018-03-09
          • 1970-01-01
          • 1970-01-01
          • 2012-06-15
          • 2015-09-09
          相关资源
          最近更新 更多