bogongjie 发表于 2013-1-30 04:01:36

android FileObserver

前面講過了,contentObserver能夠對一些數據和對setting中的設置進行監聽.
這次講一下對文件的監聽,使用fileobserver來對文件進行監聽.
當對某個文件夾下的文件,或者是具体的某個文件進行操作,像,增加,刪除,修改的時候通過使用fileobserver監聽來通知下一步要進行的操作.
首先要定義一個類繼承fileobserver,然後對onevent方法進行重寫.如下:
 
public class FileListener extends FileObserver {    public android.os.Handler handlera;public FileListener(String path, Handler handler) {    super(path);handlera = handler;}    @Override    public void onEvent(int event, String path) {int index = 0;switch(event) {case FileObserver.MODIFY:index = FILE_MODIFY;break;}if(path != null){if(path.equals("action.txt") && index != 0){Log.d("Modify", "path "+path);//Log.i(">>>>>>>>>>>>>>>>>>>>>>>>>>>>The index value is: ",String.valueOf(index));handlera.sendEmptyMessage(index);}}}    }  
這個類定義完成後,要讓這個類開始進行監聽,它和前面說的contentobserver方法不一樣,contentobserver需要進行註冊,而這個中需要執行startwatching.
之後在oncreat方法中執行下面兩條語句:
 
 
fileListener = new FileListener("/mnt/sdcard", mFileMsgHandler);fileListener.startWatching();
页: [1]
查看完整版本: android FileObserver