对SD卡中的文件与文件夹进行监控-成都快上网建站

对SD卡中的文件与文件夹进行监控

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

网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、小程序设计、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了离石免费建站欢迎大家使用!

    

//设置所要监控的文件或文件夹
mFileObserver = new SDCardFileObserver(Environment.getExternalStorageDirectory().getPath());
//开始监听
mFileObserver.startWatching();

static class SDCardFileObserver extends FileObserver {
    //mask:指定要监听的事件类型,默认为FileObserver.ALL_EVENTS
    public SDCardFileObserver(String path, int mask) {
        super(path, mask);
    }

    public SDCardFileObserver(String path) {
        super(path);
    }

    @Override
    public void onEvent(int event, String path) {
        final int action = event & FileObserver.ALL_EVENTS;
        switch (action) {
            case FileObserver.ACCESS:
                System.out.println("event: 文件或目录被访问, path: " + path);
                break;

            case FileObserver.DELETE:
                System.out.println("event: 文件或目录被删除, path: " + path);
                break;

            case FileObserver.OPEN:
                System.out.println("event: 文件或目录被打开, path: " + path);
                break;

            case FileObserver.MODIFY:
                System.out.println("event: 文件或目录被修改, path: " + path);
                break;
        }
    }
}

当前标题:对SD卡中的文件与文件夹进行监控
文章分享:http://kswjz.com/article/giiggi.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流