覆盖android中的文件删除

时间:2013-09-19 07:05:19

标签: android recycle-bin

是否可以覆盖File.delete()函数?每当我从其他应用程序(不是我的应用程序使用)中删除sdcard中的任何文件时,我需要一个通知,例如此文件将被删除。我试过的示例代码段是,

public class ExtendFile extends File
{
    public ExtendFile(File dir, String name) 
    {
         super(dir, name);
         // TODO Auto-generated constructor stub
    }

    @Override
    public boolean delete() 
    {    
        System.out.println("to be deleted");
        return super.delete();
     }
}  

File file = new File("/mnt/sdcard/tmp.txt");
ExtendFile f = new ExtendFile(file, tempPath);

我在FileObsever的服务类中实现了以上两个语句。 现在我从其他应用程序中删除了tmp.txt文件,但我没有收到任何通知。 如何从其他应用获取通知?有可能吗?

提前致谢

1 个答案:

答案 0 :(得分:3)

不,这是不可能的。这不仅会导致其他应用程序出现问题,还会导致Android操作系统出现问题。

使用FileObserver,您只能看到文件中出现 的内容。你无法影响它。 总结:如果您只想知道“/mnt/sdcard/tmp.txt”发生了什么,那么请使用FileObserver,但不能阻止删除。