`
bogongjie
  • 浏览: 235965 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

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();
分享到:
评论

相关推荐

    Android FileObserver检测文件变化demo

    Android FileObserver 检测文件变化demo,Android FileObserver 检测文件其实也是基于linux的inotify实现的,是从linux内核2.6.13开始加进来的,不过FileObserver检测的文件还是有局限的,似乎只能检测到SD卡的文件...

    android 7.1 FileObserver 使用demo以及apk签名为系统app的工具

    在Android开发中,FileObserver是Android提供的一种机制,用于监控文件系统的特定目录或文件的变更。这个机制允许开发者监听文件的创建、删除、修改等事件,对于需要实时响应文件变化的应用场景非常有用。例如,当你...

    FileObserver的使用方式,监测camera文件夹,android4.1

    在Android系统中,`FileObserver`是一个非常实用的类,用于监视文件系统中的特定文件或目录的变化。这个类是Android SDK的一部分,可以帮助开发者实时监控指定路径下的文件或目录的创建、删除、修改等操作。在标题...

    Android文件目录监控技术总结

    Android文件目录监控技术总结,使用FileObserver进行监听,循环遍历……

    RxFileObserver:适用于Android FileObserver类的简单React式API

    Android的周围的React性包装器 下载 Gradle: compile ' com.github.phajduk:rxfileobserver:0.1.0 ' 例子 订阅在外部存储目录中执行的任何文件系统更改: File sdCard = Environment . ...

    Android创建文件实现对文件监听示例

    为了实现这一需求,Android提供了`FileObserver`类,用于监控文件系统的变化。这个类在`android.os`包下,是用于观察文件系统事件的抽象类。`FileObserver`需要注册一个文件或目录,并且需要指定感兴趣的事件。一旦...

    Android代码-Android学习

    record pcm raw audio in Android using AudioRecord classCalendarOps: Android calendar operations FileObserver: Android FileObserver APITabMenu: A customized tab-based menuYACamRecorder: A video ...

    android 监听SD卡文件变化的实现代码

    实现这一功能,主要依赖于Android API提供的FileObserver抽象类,这个类是基于Linux的INotify机制。 FileObserver类能够监控指定路径下的文件或目录的变化,例如文件或目录被打开、创建、移动或删除等操作。下面将...

    使用FileObserver监听SD卡下文件变动的小栗子~

    `FileObserver`是Android提供的一种轻量级机制,用于监视指定目录下的文件系统事件。下面,我们将深入探讨如何使用`FileObserver`来监听SD卡上的文件变动。 首先,了解`FileObserver`的基本用法。创建一个`...

    android 实时监听读取微信最新消息

    2. **文件监控**:Android没有提供直接监听文件变化的API,但可以通过FileObserver类来实现对特定文件或目录的监控。你需要创建一个FileObserver实例,设置观察的路径为微信的本地消息存储目录,并重写onEvent方法来...

    Android 拍照、截图事件监听实现源码

    在Android开发中,有时我们需要对用户的拍照和截图行为进行监听,以便进行特定的功能处理或数据同步。本教程将深入探讨如何实现这一功能,主要通过监听系统中的media文件夹来捕获拍照和截图事件。 首先,Android...

    android实现类似相册功能

    `FileObserver`类可以监视特定文件或目录的变化,并在发生变更时触发回调。 通过以上知识点的整合和实现,就能在Android上构建出一个功能完备、性能优秀的相册应用。`JoyImageView`可能是项目中用到的一个自定义的...

    Android 实时文件夹

    1. 文件系统监控:在Android中,可以使用`FileObserver`类来监听指定文件或目录的变化。通过创建FileObserver实例并设置观察路径,然后重写`onEvent()`方法,当指定路径发生创建、删除、修改等事件时,这个方法会被...

    Android系统文件监听技术的研究.pdf

    本文主要探讨了在Android操作系统上如何通过FileObserver技术实现文件监听,以及如何解决监听过程中无法获取访问文件对象的问题。FileObserver是Android提供的一种用于监视文件或目录变化的机制,它可以检测到文件或...

    Android文件共享

    2. **监听接口**:根据服务类型,可能需要监听文件系统的变化(例如,使用FileObserver)或网络连接(如HTTP服务器)。 3. **文件操作**:当有文件请求时,服务类应能处理读取、写入、删除等操作。对于网络共享,...

    安卓Android源码——SDCardSample.rar

    - 使用 `FileObserver` 类可以监听 SD 卡上特定文件或目录的变化,以便在文件添加、修改或删除时做出响应。 综上所述,SDCardSample 示例项目涵盖了 Android 中与 SD 卡交互的多个核心知识点,包括权限管理、文件...

    android截图事件监听的原理与实现

    首先,监听截屏图片所在目录的变化,主要是利用Android系统提供的FileObserver工具类。FileObserver允许开发者监听文件系统中文件或目录的变化事件,比如创建、删除、修改等。在实现时,我们通常会关注截屏图片存放...

    android外部存储文件操作,实现对sdcard上的文件进行操作

    在Android系统中,外部存储设备通常指的是SD卡或者内置的外部存储空间,它为应用程序提供了扩展存储能力,以便存储较大的用户数据、媒体文件等。本文将深入探讨如何在Android应用中进行外部存储文件操作,特别是在SD...

Global site tag (gtag.js) - Google Analytics