我正在捕获relativelayout的绘图缓存并将其保存到文件中。该文件已经过测试,并且存在。使用此文件,我将图像作为电子邮件附件发送,但它无法正常工作。在它之前因为路径不合适而无法找到它之前我修复了它,现在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 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);
答案 0 :(得分:0)
试试这个
Uri.parse(" file://" +文件路径)); 代替 的 Uri.parse(this.getApplicationContext()getFilesDir()+" asdasdasdasdasdas.jpg&#34));