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();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值