当前位置: 首页 > 知识库问答 >
问题:

从drawable文件夹将图像附加到gmail中

井轶
2023-03-14

我的drawable文件夹中有一些图像,还有这些图像的int数组。现在我试图通过gmail发送电子邮件,并从我的可绘图文件夹中附上一张图像,在Android2.3中一切都很好,但在Android4.0中图像的扩展丢失了。我没有找到任何解决办法。下面是我使用的代码。

Uri imageuri  = Uri.parse("android.resource://MyPackageName/" + SplashActivity.mBitmap_mixed_images[int_image_position]);

            Intent intent = new Intent(Intent.ACTION_SEND); 

               if(imageuri != null){
                intent.putExtra(Intent.EXTRA_STREAM, imageuri);
                intent.putExtra(Intent.EXTRA_SUBJECT, "150+ Reasons to Quit Smoking");
                //intent.putExtra(Intent.EXTRA_TEXT, "www.selftalk.info");
                intent.setType("image/html");
               }else{
                intent.setType("plain/text");
               }
               final PackageManager pm = getPackageManager();
                final List<ResolveInfo> matches = pm.queryIntentActivities(intent, 0);
                ResolveInfo best = null;
                for (final ResolveInfo info : matches)
                  if (info.activityInfo.packageName.endsWith(".gm") ||
                      info.activityInfo.name.toLowerCase().contains("gmail")) best = info;
                if (best != null)
                  intent.setClassName(best.activityInfo.packageName, best.activityInfo.name);
                startActivity(intent);

共有1个答案

薛祯
2023-03-14
private FileOutputStream outStream; 
private File file;
Bitmap bm = BitmapFactory.decodeResource( getResources(), R.drawable.ic_launcher);
        String extStorageDirectory = Environment.getExternalStorageDirectory().toString();

    file = new File(extStorageDirectory, "ic_launcher.PNG");
    try {
        outStream = new FileOutputStream(file);
        bm.compress(Bitmap.CompressFormat.PNG, 100, outStream);
        outStream.flush();
        outStream.close();
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

email = new Intent(Intent.ACTION_SEND);
email.setType("application/octet-stream");
email.putExtra(Intent.EXTRA_EMAIL, new String[] { "" });
email.putExtra(Intent.EXTRA_SUBJECT, "My Subject");
email.putExtra(Intent.EXTRA_TEXT, "");
email.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));
startActivity(Intent.createChooser(email, "Choose an Email client :"));
 类似资料:
  • 当我选择时,会出现一个对话框来选择······ 如何将图像添加到文件夹?

  • 我想从我的android studio drawable文件夹中选择image,现在我有两个名为example.jpg和sue.png的图像。我将数组定义为 我应该如何进一步开放他们作为一个画廊,并让用户从中挑选一个?(如下第二幅图所示)

  • 如何在android项目中将图像动态添加到资源/可绘制文件夹? 我会在android手机上浏览内置的gallery应用程序,并将gallery中的图像添加到Resources/drawable文件夹中。可以这样做吗? 意图=新的意图(意图。ACTION_GET_CONTENT);intent.set类型(“图像/*”);开始活动结果(意图,IMAGE_PICK); 我已经使用了上面的代码从画廊挑选

  • 我有一个程序,它总是将相同的文件附加到GMAIL(撰写 它所做的是: 在Android 6.0之前,它一直工作良好。现在,我在尝试使用它时收到以下错误: 无法附加空文件 Astro文件共享给我同样的错误(可能是旧版本)。 但是,我安装了ES File Explorer,当我执行相同的例程并选择该文件时,我会收到一个对话框,其中显示: 将文件作为 普通Android方式(适用于彩信、Gmail等)

  • 问题内容: 我正在尝试从文件中加载图像而不使用。这些文件夹是: 我想将图像加载到资产文件夹中。我试过了: 我已经尝试过使用字符串路径“ /TestProject/assets/drawIcon.png”,但是什么也没有。我不知道如何加载该图片! 问题答案: 将目录设置为资源目录,然后从“ /drawIcon.png”位置将图像加载为资源: 如果要创建javafx图像: 在这种情况下,也请将该文件夹

  • 问题内容: 有没有办法将图像附加到用PHP创建的html格式的电子邮件中? 我们需要确保在发送给可能在阅读电子邮件时无法访问Internet的客户的电子邮件上带有公司徽标(显然,他们可以下载文件)。 问题答案: 尝试使用PEARMail_Mime软件包,该软件包可以为您嵌入图像。 您需要使用addHTMLImage()方法并传递内容ID(cid),这是一个唯一的文本字符串,您还将在img的src属