【发布时间】:2014-05-06 07:28:12
【问题描述】:
我正在使用 android FileObserver 来检测公共目录中文件的更改,包括重命名。一切正常,但重命名包含目录或其任何父目录不会触发正在观察的文件的 onEvent。我尝试将事件掩码设置为 ALL_EVENTS,但无济于事。实际上,可以重命名目录,这将有效地修改观察到的文件路径,但不会调度任何事件。这是它应该如何工作的吗?我能想到的唯一解决方案是将所有目录上的观察者添加到根目录,但这似乎有点奇怪。
代码如下:
protected class ExternalFileObserver extends FileObserver {
public ExternalFileObserver(String path) {
super(path, ALL_EVENTS);
}
@Override
public void onEvent(int event, String path) {
Log.d("Files", String.format("Change %d for path %s", event, path));
}
【问题讨论】:
标签: android fileobserver