如何删除刚刚在android程序中拍摄的照片

时间:2010-10-14 15:10:54

标签: android file camera delete-file

我编写了一个程序,使用Intent进行图像捕获,以便使用手机中的应用程序获取照片。 使用MediaStore.EXTRA_OUTPUT,我得到一个图像的URI,转换为路径会产生类似“/ external / images / media / NN”的内容,其中NN是照片的编号。

现在,在我的程序中,在我阅读并操作图像后,我想删除该图像。

我该怎么做?

(File image = new File(path); image.delete(); // returns false, so doesn't work)

2 个答案:

答案 0 :(得分:1)

感谢您的回答。

我决定阅读这个答案,Problems saving a photo to a file

对我而言,它适用于Hero,即使在该代码中的注释中,Snore表示Hero表现不同。 现在我在“/sdcard/image.tmp”中获取图像,我可以将其删除。 我认为这是最好的解决方案,因为我认为尝试让相机应用程序在我的应用程序目录中编写是一个麻烦。

再次感谢。

答案 1 :(得分:0)

您是否可能无法在应用中请求WRITE_EXTERNAL_STORAGE权限?这会导致删除失败。 (相机无论如何都能写,因为它是一个具有自己权限的独立应用。)

也可能(但不太可能)媒体文件夹只能由相机应用程序写入,在这种情况下,您需要在调用相机的意图的额外EXTRA_OUTPUT中指定不同的所需目标,以便文件将写入您的应用程序目录。实际上,您可能希望这样做,以避免使用私有资源混淆全局空间,即使您要立即删除它们。