Android中的FileObserver

一炒辉、概述

android.os包下面的FileObserver是一個用于監(jiān)聽文件訪問創(chuàng)建修改刪除移動等操作的監(jiān)聽器着裹,基于Linux的INotfy
FileObserver是個抽象類贷笛,必須要繼承它才能使用钉嘹,每個FileObserver監(jiān)聽一個單獨的文件或者文件夾助被,如果監(jiān)聽的是一個文件夾蜕煌,那么文件夾下所有文件或者級聯(lián)子目錄的改變都會觸發(fā)監(jiān)聽事件派阱。

二、監(jiān)聽的事件類型

  • ACCESS
    即文件被訪問
  • MODIFY
    文件被修改
  • ATTRIB
    文件被修改屬性斜纪,如chmod贫母,chown,touch等
  • CLOSE_WRITE
    可寫文件被CLOSE
  • CLOSE_NOWRITE
    不可寫文件被CLOSE
  • OPEN
    文件被打開
  • MOVED_FROM
    文件被移走
  • MOVED_TO
    文件被移進(jìn)
  • CREATE
    創(chuàng)建文件夾
  • DELETE
    文件被刪除
  • DELETESELF
    自刪除盒刚,即一顆各執(zhí)行文件在執(zhí)行時刪除自己
  • CLOSE
    文件被關(guān)閉腺劣,等同于(IN_CLOSE_WRITE|IN_CLOSE_NOWRITE)
  • ALLEVENTS
    包括上面的所有事件

上面所有的靜態(tài)變量都是FileObserver的靜態(tài)屬性

三、例

  • 創(chuàng)建目錄監(jiān)聽器
public class SDCardListener extends FileObserver(){
    public SDCardListener(String path){
        super(path);
    }
    @override
    public onEvent(int event,String path){
        switch(event){
            case FileObserver.ALLEVENTS:
                Log.d("all","path:"+path);
                break;
            case FileObserver.CREATE:
                break;
        }
    }
}
  • 給目錄設(shè)置監(jiān)聽器
SDCardListener listener = new SDCardListener("目錄")因块;

//開始監(jiān)聽
listener.startWatching();
/**
*在這里做一些操作橘原,比如創(chuàng)建目錄什么的
**/
//停止監(jiān)聽
listener.stopWatching();

四、注意事項

FileObserver對象必須保持一個引用涡上,確保不被垃圾回收器回收掉趾断,否則就不會觸發(fā)事件,這里可以考慮使用Service服務(wù)吓懈。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末歼冰,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子耻警,更是在濱河造成了極大的恐慌隔嫡,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,542評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件甘穿,死亡現(xiàn)場離奇詭異腮恩,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)温兼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評論 3 394
  • 文/潘曉璐 我一進(jìn)店門秸滴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人募判,你說我怎么就攤上這事荡含。” “怎么了届垫?”我有些...
    開封第一講書人閱讀 163,912評論 0 354
  • 文/不壞的土叔 我叫張陵释液,是天一觀的道長。 經(jīng)常有香客問我装处,道長误债,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,449評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮寝蹈,結(jié)果婚禮上李命,老公的妹妹穿的比我還像新娘。我一直安慰自己箫老,他們只是感情好封字,可當(dāng)我...
    茶點故事閱讀 67,500評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著槽惫,像睡著了一般周叮。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上界斜,一...
    開封第一講書人閱讀 51,370評論 1 302
  • 那天仿耽,我揣著相機(jī)與錄音,去河邊找鬼各薇。 笑死项贺,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的峭判。 我是一名探鬼主播开缎,決...
    沈念sama閱讀 40,193評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼林螃!你這毒婦竟也來了奕删?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,074評論 0 276
  • 序言:老撾萬榮一對情侶失蹤疗认,失蹤者是張志新(化名)和其女友劉穎完残,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體横漏,經(jīng)...
    沈念sama閱讀 45,505評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡谨设,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,722評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了缎浇。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片扎拣。...
    茶點故事閱讀 39,841評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖素跺,靈堂內(nèi)的尸體忽然破棺而出二蓝,到底是詐尸還是另有隱情,我是刑警寧澤指厌,帶...
    沈念sama閱讀 35,569評論 5 345
  • 正文 年R本政府宣布刊愚,位于F島的核電站,受9級特大地震影響仑乌,放射性物質(zhì)發(fā)生泄漏百拓。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,168評論 3 328
  • 文/蒙蒙 一晰甚、第九天 我趴在偏房一處隱蔽的房頂上張望衙传。 院中可真熱鬧,春花似錦厕九、人聲如沸蓖捶。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽俊鱼。三九已至,卻和暖如春畅买,著一層夾襖步出監(jiān)牢的瞬間并闲,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評論 1 269
  • 我被黑心中介騙來泰國打工谷羞, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留帝火,地道東北人。 一個月前我還...
    沈念sama閱讀 47,962評論 2 370
  • 正文 我出身青樓湃缎,卻偏偏與公主長得像犀填,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子嗓违,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,781評論 2 354

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理九巡,服務(wù)發(fā)現(xiàn),斷路器蹂季,智...
    卡卡羅2017閱讀 134,656評論 18 139
  • https://nodejs.org/api/documentation.html 工具模塊 Assert 測試 ...
    KeKeMars閱讀 6,331評論 0 6
  • ¥開啟¥ 【iAPP實現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程冕广,因...
    小菜c閱讀 6,409評論 0 17
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,810評論 6 342
  • 汗水 掛滿脊梁 淚水 滑過臉頰 日出而作,日落而息 似乎永未變 父親 沉默不話 鄉(xiāng)親們說他嗜酒如命 可我 很...
    春城一粟閱讀 154評論 0 3