android电子邮件与身体中的图像

时间:2014-02-11 09:48:48

标签: android image email

我想将图片放入我的电子邮件正文中 我做了这个

代码:

protected void sendEmail() {
      Log.i("Send email", "");

      String[] TO = {"tets@gmail.com"};

      Intent emailIntent = new Intent(Intent.ACTION_SEND_MULTIPLE);
      emailIntent.setData(Uri.parse("mailto:"));
      emailIntent.setType("text/plain");


      emailIntent.putExtra(Intent.EXTRA_EMAIL, TO);
      emailIntent.putExtra(Intent.EXTRA_CC, CC);
      emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Your subject");
      emailIntent.putExtra(Intent.EXTRA_TEXT, "Email message goes here");
      Spanned spanned_str_Caution = Html.fromHtml(str_Caution);
      String text=tv_viewinfo.getText()+""+spanned_str_Caution;
      emailIntent.putExtra(Intent.EXTRA_TEXT, text);


      try {
          emailIntent.setType("image/png");


          int id = getResources().getIdentifier(listimgname.get(0),
                    "drawable", getPackageName());//my image gets like this 



          emailIntent.putExtra(Intent.EXTRA_STREAM, id);
         startActivity(Intent.createChooser(emailIntent, "Send mail..."));
         finish();
         Log.i("Finished sending email...", "");
      } catch (android.content.ActivityNotFoundException ex) {
         Toast.makeText(View_FoodInfoActivity.this, 
         "There is no email client installed.", Toast.LENGTH_SHORT).show();
      }
      catch (Exception e) {
           Toast.makeText(View_FoodInfoActivity.this, 
                     e.getMessage(), Toast.LENGTH_LONG).show();
    }

怎么可能?我想要从drawable文件夹中的图像,并希望在电子邮件正文中显示... 提前谢谢

1 个答案:

答案 0 :(得分:0)

尝试下面的代码...您必须从drawable文件夹中获取图像并将其存储到SD卡,并从SD卡中将图像附加到邮件中,如下面的代码:

Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND); 
emailIntent.setType("application/image");
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[]{strEmail}); 
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT,"Test Subject"); 
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "From My App"); 
emailIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///mnt/sdcard/Myimage.jpeg"));
startActivity(Intent.createChooser(emailIntent, "Send mail..."));