2014-06-12 3 views
4

nexus 5를 4.4.3으로 업데이트했습니다.FileObserver not working 4.4.3

FileBserver가 어떤 디렉토리에서도 작동하지 않습니다. 나는 시도했다 1./data/data/com/whatsapp, 2.sdcard/Movies 그리고 또한 3. "/". 업데이트하기 전에 정상적으로 작동하고있었습니다.

github에서 RecursiveFileObserver를보고 내 fileobserver와 함께 사용했습니다. 둘 다 함께 사용하면 내 FileObserver의 onEvent가 호출되며 이는 상당히 이상합니다. 얼마 후 ANR이 나타납니다.

그럼, 어떻게 여기

안드로이드 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(); 

및 Btw는 RecursiveFileObserver https://github.com/bartoszprzybylski/owncloud-android/blob/master/src/com/owncloud/android/utils/RecursiveFileObserver.java

에 대한 링크되면, FileObserver가 실행되고 서비스

+0

안녕하세요? – pratsJ

답변

0

FileObserver의 인수가 응용 프로그램 내부 저장 장치를 가리키고 있습니다. 따라서 context.getDir/getFilesDir을 사용하여 위치를 지정하십시오. 도움이 될 수 있습니다.

3

FileObserver가 uses-permission android.permission.WRITE_EXTERNAL_STORAGE를 매니페스트에 추가하는 것만으로 KitKat에서 작업 할 수있었습니다. 이 허가가 4.4 버전의 안드로이드에서 필요하게 된 이유는 모르겠다. 아마 외부 저장소를 모니터 할 때만 필요하다. 불행히도이 동작 변경에 대한 설명서 나 정보를 찾을 수 없습니다.