首页 > 移动平台 > 详细

Android使用FileObserver对sdcard文件或文件夹监控

时间:2014-03-06 22:45:30      阅读:567      评论:0      收藏:0      [点我收藏+]

Android系统API提供了FileObserver抽象类(Linux的INotify机制)来监听系统/sdcard中的文件或文件夹,FileObserver类能对sdcard中的文件及文件夹的打开、创建、移动和删除操作进行监控。下面看看代码实现:

bubuko.com,布布扣
bubuko.com,布布扣
package com.orgcent.filelistener;
 
import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.os.FileObserver;
 
public class AndroidFileListenerActivity extends Activity {
private FileObserver mFileObserver;
 
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
 
if(null == mFileObserver) {
mFileObserver = new SDCardFileObserver(Environment.getExternalStorageDirectory().getPath());
mFileObserver.startWatching(); //开始监听
}
}
 
public void onDestory() {
if(null != mFileObserver) mFileObserver.stopWatching(); //停止监听
}
 
static class SDCardFileObserver extends FileObserver {
//mask:指定要监听的事件类型,默认为FileObserver.ALL_EVENTS
public SDCardFileObserver(String path, int mask) {
super(path, mask);
}
bubuko.com,布布扣
bubuko.com,布布扣

 

注意事项:
1、防止FileObserver类的对象被垃圾回收,否则将不能收到文件及文件夹的监听事件了。
2、程序运行在Android模拟器中,使用Eclipse的DDMS中的File视图来对Android模拟器的sdcard中的文件及文件夹进行操作


Android使用FileObserver对sdcard文件或文件夹监控,布布扣,bubuko.com

Android使用FileObserver对sdcard文件或文件夹监控

原文:http://www.cnblogs.com/duanxz/p/3583780.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!