是否可以重写 File.delete() 函数?每当我从其他应用程序(不由我的应用程序使用)删除 SD 卡中的任何文件时,我需要一个通知,例如该文件将被删除。我尝试过的示例代码片段是,
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();
}
}
and
File file = new File("/mnt/sdcard/tmp.txt");
ExtendFile f = new ExtendFile(file, tempPath);
我在服务类中实现了上述两条语句文件观察器 http://developer.android.com/reference/android/os/FileObserver.html。
现在我从其他应用程序中删除了 tmp.txt 文件,但我没有收到任何通知。
如何获取其他应用程序的通知?可能还是不可能?
提前致谢
不,这是不可能的。这不仅会导致其他应用程序出现问题,还会导致 Android 操作系统出现问题。
使用 FileObserver 你只能看到什么has发生在一个文件上。你无法影响它。
总结:如果您只想知道“/mnt/sdcard/tmp.txt”发生了什么,那么请使用 FileObserver,但您无法阻止删除。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)