android - 覆盖android中的文件删除

标签 android recycle-bin

是否可以重写 File.delete() 函数?每当我从其他应用程序(不由我的应用程序使用)删除 SD 卡中的任何文件时,我需要一个通知,例如该文件将被删除。我尝试过的示例代码 fragment 是,

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 文件,但我没有收到任何通知。 如何获取其他应用程序的通知?可不可以?

提前致谢

最佳答案

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

使用 FileObserver,您只能查看文件发生了什么。你无法影响它。 结论:如果您只想知道“/mnt/sdcard/tmp.txt”发生了什么,那么使用 FileObserver,但您无法阻止删除。

关于android - 覆盖android中的文件删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18888231/

相关文章:

c++ - 在 Qt 中将文件移动到垃圾箱/回收站

c# - 如何获得回收站的路径?

Android:DialogPreference 颜色/样式?

javascript - 定期从 Google Drive Trash 中删除特定类型的所有文件

powershell - 使用 Powershell V2 清空回收站

ios - “tmp”目录在 iOS 中太大

java - 如何访问警报对话框的 onclick 监听器中的非最终变量而不使其成为最终变量

javascript - PhoneGap 应用性能评估

android - 如何在Android中的G+登录按钮中心设置textview

android - ImageSwitcher 从 url 加载图片