Android 기기의 특정 프로그램에서 액세스하거나 액세스 및 실패한 파일을 모니터링해야합니다. PC에서 FileMon과 같은 것.Android에서 파일 액세스 모니터링
프로그램을 디 컴파일하는 방법에 대한 제안이 있지만 좀 더 직관적 인 방법을 찾고 있습니다.
감사합니다.
Android 기기의 특정 프로그램에서 액세스하거나 액세스 및 실패한 파일을 모니터링해야합니다. PC에서 FileMon과 같은 것.Android에서 파일 액세스 모니터링
프로그램을 디 컴파일하는 방법에 대한 제안이 있지만 좀 더 직관적 인 방법을 찾고 있습니다.
감사합니다.
당신은 표준 android.os.FileObserver 사용한다,이 파일에 액세스하거나 (본 프로그램 포함) 장치에있는 모든 프로세스에 의해 변경 후 이벤트를 발생하기 위해 (inotify를 사용하여) 파일을 모니터합니다. FileObserver는 추상 클래스입니다. 서브 클래스는 onEvent (int, String) 이벤트 핸들러를 구현해야합니다. 당신이 마음에 베어해야
import android.os.FileObserver;
import android.util.Log;
/**
* SD Card file monitor
*
*/
public class SDCardListener extends FileObserver {
public SDCardListener(String path) {
super(path);
}
@Override
public void onEvent(int event, String path) {
switch(event) {
case FileObserver.ALL_EVENTS:
Log.d("all", "path:"+ path);
break;
case FileObserver.CREATE:
Log.d("Create", "path:"+ path);
break;
}
}
}
SDCardListener listener = new SDCardListener("YOURDIRPATH");
//Start monitoring
listener.startWatching();
// You can try to access the directory here
//Stop monitoring
listener.stopWatching();
한 가지는 당신이에서 그것을 방지하기 위해 파일 관찰자 객체에 대한 유효한 참조를 유지해야한다는 것입니다 : http://developer.android.com/reference/android/os/FileObserver.html
간단한 예를 들어 여기이 링크를 참조하십시오 GC.
감사합니다. 이 작업을 수행 할 수있는 다운로드 가능한 앱이 있습니까? –
빠른 검색만으로 사용자의 요구 사항에 맞는 직접 사용할 수있는 응용 프로그램은 없습니다. 혼자서 글을 써야합니다. – Robin