日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android监听SD卡文件变化

發布時間:2025/7/14 Android 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android监听SD卡文件变化 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天再一次使用到FileObserver,上一次使用還是很久之前了。總結一下FileObserver里留的一些“坑”

1、FileObserver只能監聽一個目錄下的“一級”子文件,也就是說FileObserver不支持監測一個目錄下嵌套子目錄的文件; 2、關于FileObserver中的onEvent(int event, String path)函數。其中event在使用過程中發現總是一個很大的數,這與api中定義的1,2,4...512常量不相符。需要將event & FileObserver.ALL_EVENTS,才能得到sdk中定義的常量。究其原因,貌似event中的高位附帶了一些信息; 3、經過試驗發現如果監聽的目錄被刪除了,FileObserver就沒有作用了。即使后來再創建一個同樣的目錄。我要的效果是監聽一個目錄下的文件,如果這個文件被刪除了就重新生成一個該文件,在調試中發現第一次刪除整個目錄后能重新生成,但是之后再刪除就不起作用了(刪除單個文件應該沒有問題)。應該就是提到的這個原因。有一個解決方法就是通過handler方式,異步線程重新生成了文件后通知service,再重啟對該目錄的監測即可。 4、可以指定要針對文件的哪些操作動作進行監聽:比如 static final int mask = (FileObserver.CREATE |? FileObserver.DELETE |? FileObserver.DELETE_SELF | FileObserver.MODIFY | FileObserver.MOVED_FROM | FileObserver.MOVED_TO | FileObserver.MOVE_SELF);? public PathFileObserver(String root){ super(root, mask); ... ... }

總結

以上是生活随笔為你收集整理的Android监听SD卡文件变化的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。