如何将图片保存到文件?

时间:2010-03-16 00:39:27

标签: android file camera save

我正在尝试使用标准的Intent来拍照,然后允许批准或重拍。然后我想将图片保存到文件中。

这是我正在使用的意图:

Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE );

startActivityForResult( intent, 22 );

documentation说:

  

调用者可以传递额外的EXTRA_OUTPUT来控制它的位置   图像将被写入。如果EXTRA_OUTPUT不存在,那么a   小型图像作为额外字段中的Bitmap对象返回。如果   存在EXTRA_OUTPUT,然后是全尺寸图像   写入EXTRA_OUTPUT的Uri值。

我没有传递额外的输出,我希望在传递到onActivityResult()的Intent的额外字段中获取一个Bitmap对象(对于此请求)。那么你在哪里/如何提取它? Intent有一个getExtras(),但它返回一个Bundle,而Bundle想要一个关键字符串给你一些东西。

你在Intent上调用什么来提取位图?

2 个答案:

答案 0 :(得分:3)

尝试调用getExtras().get("data")并将结果转换为Bitmap

See here for an example

答案 1 :(得分:0)

在相关说明中,如果您在使用intent.putExtra("crop", "true")拍摄照片后出现“裁剪”活动,则会从getExtras().get("action")获取裁剪后的URI。

我意识到你现在已经解决了这个问题,只是想确保没有人试图将这个用于庄稼而感到困惑。

参考:app-for-android LolCat活动。