【问题标题】:FileObserver not Working android 4.4.3FileObserver 不工作 android 4.4.3
【发布时间】:2014-06-12 12:41:14
【问题描述】:

将 nexus 5 更新到 4.4.3。

Fileobserver 不适用于任何目录。我试过了 1./数据/数据/com/whatsapp, 2.sdcard/电影还有 3.“/”。 在更新之前它工作正常。

我在 github 上看到了 RecursiveFileObserver,并将它与我的 fileobserver 一起使用。当两者一起使用时,我的 FileObserver 的 onEvent 会被调用,这很奇怪。一段时间后会弹出 ANR。

那么,如何在 android 4.4.3 中使用 fileobserver

这是我的代码

FileObserver observer = new FileObserver("/data/data/com.whatsapp/databases") {  
     public void onEvent(int event, String file) {
         Log.i("ASH", "path VSLLED");
       Log.i("ASH", "path AXCCESSED     " + file);
      }
    };
    observer.startWatching();

以及 RecursiveFileObserver 的链接 https://github.com/bartoszprzybylski/owncloud-android/blob/master/src/com/owncloud/android/utils/RecursiveFileObserver.java

顺便说一句,FileObserver 正在服务上运行

【问题讨论】:

  • 嘿,这方面有什么进展吗?

标签: android service fileobserver


【解决方案1】:

我只能通过将 uses-permission android.permission.WRITE_EXTERNAL_STORAGE 添加到清单中来让 FileObserver 在 KitKat 上工作。我不知道为什么从 4.4 版本的 Android 开始需要此权限,并且可能仅在您要监视外部存储时才需要。不幸的是,我找不到任何有关此行为更改的文档或信息。

【讨论】:

    【解决方案2】:

    FileObserver 的参数指向应用程序内部存储。因此,使用 context.getDir/getFilesDir 给出位置。它可能会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-31
      • 1970-01-01
      • 2016-07-14
      • 1970-01-01
      • 1970-01-01
      • 2017-11-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多