0

我正在捕获相对布局的绘图缓存并将其保存到文件中。该文件已经过测试并且存在。使用此文件,我将图像作为电子邮件附件发送,但它不起作用。之前它曾经说由于路径不正确而无法找到它,但是我修复了它,现在 logcat 中没有错误。这是否是由于缺少权限、无法找到文件或发送 Android 不支持的电子邮件图像附件造成的?

保存图像

    ImagePlace.setDrawingCacheEnabled(true);
    Bitmap picture = ImagePlace.getDrawingCache();
    try {       
    System.out.println(this.getActivity().getApplicationContext().getCacheDir());
picture.compress(CompressFormat.JPEG, 95, new FileOutputStream(new File(this.getActivity().getApplicationContext().getFilesDir(),"asdasdasdasdasdas.jpg")));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch blockm
e.printStackTrace();
}

启动电子邮件 Intent

  Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
  emailIntent.setType("image/*");
  emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Projectile Motion Solution");
  emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, Html.fromHtml(html));
 // emailIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("android.resource://your.package.name/" + R.raw.background));
   emailIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(this.getApplicationContext().getFilesDir()+"asdasdasdasdasdas.jpg"));
  startActivity(emailIntent);  
4

1 回答 1

0

尝试这个

Uri.parse("file://" + 文件路径)); 而不是 Uri.parse(this.getApplicationContext().getFilesDir()+"asdasdasdasdasdas.jpg"));

于 2013-04-27T19:52:16.033 回答