- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
你如何构建一个 Android 应用程序来启动一个 Service
以使用一个 FileObserver
以便当观察到的目录被修改(即用户拍照)时执行一些其他代码.调试时,永远不会触发 onEvent 方法。
这是我的服务中的 onStart 事件。 Toast
触发“My Service Started...”
public final String TAG = "DEBUG";
public static FileObserver observer;
@Override
public void onStart(Intent intent, int startid) {
Log.d(TAG, "onStart");
final String pathToWatch = android.os.Environment.getExternalStorageDirectory().toString() + "/DCIM/Camera/";
Toast.makeText(this, "My Service Started and trying to watch " + pathToWatch, Toast.LENGTH_LONG).show();
observer = new FileObserver(pathToWatch) { // set up a file observer to watch this directory on sd card
@Override
public void onEvent(int event, String file) {
//if(event == FileObserver.CREATE && !file.equals(".probe")){ // check if its a "create" and not equal to .probe because thats created every time camera is launched
Log.d(TAG, "File created [" + pathToWatch + file + "]");
Toast.makeText(getBaseContext(), file + " was saved!", Toast.LENGTH_LONG);
//}
}
};
}
但是在 Toast 之后,如果我拍照,onEvent 永远不会触发。这是由调试决定的。它永远不会达到那个断点,并且 Toast 永远不会触发。
浏览该目录时,新图像会保存在那里。
如何让 FileObserver
在 Service
中工作?
最佳答案
请see这个帖子。我认为您在设置观察者后错过了 observer.startWatching()
调用。
observer = new FileObserver(pathToWatch) { // set up a file observer to watch this directory on sd card
@Override
public void onEvent(int event, String file) {
//if(event == FileObserver.CREATE && !file.equals(".probe")){ // check if its a "create" and not equal to .probe because thats created every time camera is launched
Log.d(TAG, "File created [" + pathToWatch + file + "]");
Toast.makeText(getBaseContext(), file + " was saved!", Toast.LENGTH_LONG).show();
//}
}
};
observer.startWatching(); //START OBSERVING
关于java - 如何从 Android 服务实现 FileObserver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7265906/
我正在使用 FileObserver 来查看 android 中的文件夹。当用户在这个文件夹中修改或创建一个新文件时,FileObserver 应该对这个文件做一些事情。 问题是通过使用子句 File
我有一个目录,用户可以将文件从另一台设备传输到该目录。我有一个 FileObserver 监视那个目录。但我不知道要注意什么。我需要知道文件何时完成传输,以便将其移动到另一个位置。那么我要注意什么事件
我遇到了以下问题: 在我的 Activity 中,我有一个列出外部文件目录内容的 ListView 。我希望列表在内容发生任何变化时立即更新,所以我有: public class FileAdapte
我在 Activity 的 onCreate 函数中声明了 1 个 fileObserver。这是第一次,每当您对文件目录进行任何更改(具体而言,我删除了文件夹)时,观察者都会工作并广播一个 Inte
我正在一个家庭更换应用程序的主要 Activity 中实现一个文件观察器。它会耗尽电池电量吗? 谢谢 最佳答案 FileObserver 不应耗尽电池电量。 FileObserver 监听 iNoti
我需要监控文件夹中的所有文件,当文件打开时(FileObserver.OPEN)我想执行一个方法。问题是有时,FileObserver 实例被 GC 收集,我试过这个: final MyFil
这是我的代码: public class SyncNotifyService extends Service { private final static String TAG = "File
好的,这很简单:我有一个 FileObserver 类来观察带有音乐的文件夹。所以我实现了 onEvent 和所有这些东西,但是当我使用文件管理器将文件移动或粘贴到该文件夹时,我得到的不是 Fil
根据文档, "Each FileObserver instance monitors a single file or directory. If a directory is monitored,
我怀疑我已经知道这个问题的答案了,但我还是想请教专家。 是否可以使用 FileObserver 类来监视对属于其他应用程序的文件的更改(即/data 目录中不属于实现 FileObserver 的应用
在 Android FileObserver 中,当在观察文件夹中创建目录或在该文件夹中删除目录时,我会收到一些奇怪的事件编号,例如 (1073742080, 1073742336)。 对于文件夹的创
在我的 Android 应用程序中,我想检测目录中的事件。这是代码: String path = Environment.getExternalStorageDirectory()
我很想知道是否有比 FileObserver 更好的方法来监视目录的文件更改/创建/删除。 FileObserver 需要持续引用它,这需要持续运行的服务,这很困难,也是一种不好的做法,对吧? 对于如
我想在服务中使用 FileObserver 观察是否在 /storage/emulated/0/DCIM/Camera 中添加了任何文件/文件夹,但它不起作用。如果我的代码有什么问题请告诉我🙏。这是
我需要在一个目录上设置一个 FileObserver。观察期链接到一个长时间运行的 Activity ,长时间运行是因为它有一个包含很多页面的 ViewPager。我没有将 FileObserver
我正在使用 FileObserver观察目录的变化。该过程在 90% 的时间里运行良好,但偶尔会失败。 这是一个 logcat 的工作示例: 04-23 21:12:03.873: V/ItemObs
在我的应用程序中,我有不同的组件,它们使用 FileObservers 监视 sdcard 中的特定文件。所以有两个 File Observer 实例观察一个文件,比如 abc.xml 的所有事件。
我想监控android系统文件的变化 "/sys/class/net/eth0/operstate" 用于监控以太网状态。 我写了一个 File Observer 类,但我没有收到任何事件public
我正在编写一个使用 android 中的 fileobserver 的应用程序。当我以任何方式修改文件(创建等)时,它应该上传。为了实现一个队列并防止使用线程等耗尽内存,我想使用 IntentServ
我现在正在编写 FileObserver 代码。我有以下代码,如果运行它,我将收到 NullPointerException。 public class FileModificationService
我是一名优秀的程序员,十分优秀!