2013-03-06 4 views
3

Я пытаюсь прикрепить несколько изображений к электронному письму.Как подключить несколько изображений к электронной почте?

Я пробовал следующий код, но я не знаю, что я делаю неправильно.

Мне нужно вызвать изображения с помощью массива Integer, который вы увидите, и прикрепите их к электронному письму.

Некоторые из класса выглядят следующим образом:

Integer[] images = { 
     R.drawable.image1, 
     R.drawable.image2, 
     R.drawable.image3, 
     R.drawable.image4 }; 

@Override 
public void onClick(View v) { 
    // TODO Auto-generated method stub 
    switch(v.getId()){ 

    case R.id.bSendEmail: 

     Intent emailintent2 = new Intent(android.content.Intent.ACTION_SEND_MULTIPLE); 
     emailintent2.setType("plain/text"); 
     emailintent2.putExtra(Intent.EXTRA_EMAIL, emailaddress2); 
     emailintent2.putExtra(Intent.EXTRA_SUBJECT, corsub); 
     emailintent2.putExtra(Intent.EXTRA_TEXT, message2); 

     ArrayList<Uri> uris = new ArrayList<Uri>(); 

     uris.add(Uri.parse("android.resource://" + getPackageName() + "/" + images[0])); 
     uris.add(Uri.parse("android.resource://" + getPackageName() + "/" + images[1])); 
     uris.add(Uri.parse("android.resource://" + getPackageName() + "/" + images[2])); 
     uris.add(Uri.parse("android.resource://" + getPackageName() + "/" + images[3])); 

     emailintent2.putExtra(Intent.EXTRA_STREAM, uris); 
     startActivity(emailintent2); 

    break; 
+0

Я думаю @DjHack у torReborn есть ответ. Другой ответ: http://stackoverflow.com/questions/2264622/android-multiple-email-attachments-using-intent – Lucy

ответ

1

Плохие новости. Это просто не поддерживается.

Вы задумывались над созданием ZIP-архива вложений и приложением архива?

(Примечание: Даже то, что не работает достаточно хорошо для меня в настоящее время, но многие, кажется, чтобы быть в состоянии жить с ним.)

+0

Почтовый индекс не подходит для меня, мне нужно отправить изображения человеку по электронной почте, и мне это нужно любой человек, получивший электронное письмо, получает изображения с прикрепленными файлами. –

+0

Если ваши адресаты не могут быть обеспокоены открытием ZIP-архива, и если это действительно важно, я бы послал правильно отформатированное многопользовательское сообщение MIME из кода вместо этого через приложения электронной почты. Приложения электронной почты - это боль в спине, когда дело доходит до правильной установки типов MIME для тела и вложений и обработки вложений разумно (не забудьте удалить их через месяц или около того!). Удачи. –

1

использование

emailintent2.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uris); 

вместо

emailintent2.putExtra(Intent.EXTRA_STREAM, uris); 

с использованием файла

private String root = Environment.getExternalStorageDirectory().getPath() 
      + Tags.DIRECTORY_PATH; 

path = new ArrayList<String>(); 

      File f = new File(root); 

      File[] files = f.listFiles(); 

      if (!root.equals(root)) 

      { 

       item.add(root); 

       path.add(root); 

       item.add("../"); 

       path.add(f.getParent()); 
      } 
      for (int i = 0; i < files.length; i++) 

      { 

       File file = files[i]; 

       path.add(file.getPath()); 

       if (file.isDirectory()) 

        item.add(file.getName() + "/"); 

       else 

        item.add(file.getName()); 


    ArrayList<Uri> uris = new ArrayList<Uri>(); 
      for (String file : path) { 
       File fileIn = new File(file); 
       Uri u = Uri.fromFile(fileIn); 
       uris.add(u); 
      } 
+0

Это действительно работает, но мои изображения отправляются без расширения «.png», можете ли вы рассказать мне, как добавить расширение? Спасибо, кстати. –

+0

@RobertoZuniga Пожалуйста, предоставьте нам информацию о том, какие приложения электронной почты вы можете подтвердить, что это работает. SO полна намерений по электронной почте, связанных с «работами», которые работают только с определенными приложениями электронной почты и/или версиями. Спасибо. –

+0

Извините, на мгновение я считаю, что это работает, происходит то, что изображения отправляются без «.png», и если я добавлю его в финал, он получит сообщение об ошибке при попытке отправить электронное письмо. –

Смежные вопросы