0

我有以下代码:

FileOutputStream out = null;

try {
out = new FileOutputStream("/sdcard/tmp/i.jpg");
b.compress(Bitmap.CompressFormat.JPEG, 90, out);
Toast.makeText(getApplicationContext(), "Succeded", Toast.LENGTH_LONG).show();
} catch (Exception e) {
 Toast.makeText(getApplicationContext(), "Failed", Toast.LENGTH_LONG).show();
}

Intent share = new Intent(Intent.ACTION_SEND);

share.setType("image/jpeg");    

share.putExtra(Intent.EXTRA_STREAM, Uri.parse("/sdcard/tmp/i.jpg"));

startActivity(Intent.createChooser(share, "Share image"));

当它被调用时,一切正常。文件被保存并弹出选择器。但是一旦您进入您选择的活动,他们都会弹出一条消息,说我无法添加该图像。除了GMail,它工作正常。那么我到底该怎么做才能解决这个问题呢?

4

1 回答 1

1

我没有看到任何关闭FileOutputStream. 也许这是问题的原因?out.close()保存图像后尝试调用。

更新:

也尝试使用完整的图像路径,即尝试这样做:

share.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///sdcard/tmp/i.jpg"));
于 2010-11-20T19:07:03.343 回答