出于某种原因,Gmail即使在其撰写屏幕中显示PNG附件,也不会发送附件。我不明白我在这里做错了什么。
view.setDrawingCacheEnabled(true);
Bitmap b = view.getDrawingCache();
try {
boolean r = b.compress(CompressFormat.PNG, 95, new FileOutputStream(outputFile));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
emailIntent.setType("image/png");
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[]{emailTo});
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject);
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, emailText);
Uri u = Uri.fromFile(outputFile);
emailIntent.putExtra(Intent.EXTRA_STREAM, u);
this.startActivityForResult(emailIntent, 0);
答案 0 :(得分:0)
尝试:
final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
emailIntent.setType("image/png");
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[]{emailTo});
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject);
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, emailText);
emailIntent.putExtra(Uri.fromFile(outputFile);
emailIntent.putExtra(Intent.EXTRA_STREAM, u);
this.startActivityForResult(emailIntent, 0);
答案 1 :(得分:0)
咄。在onActivityResult中我删除了该文件。如果要发送Gmail,则无法执行此操作。想知道是否有办法删除它,除了等待一段时间,只是打击它。
答案 2 :(得分:0)
将您的文件放在Context.getCacheDir()
目录中。
现在,在创建新文件之前,检查现有文件并删除它们,如果它们超过几个小时或更长时间。