0

我需要能够跟踪添加/删除文档到 android 文件系统。我所说的Documents是指 word、excel、powerpoint 和 pdf 等文件。我知道ContentProvidersContentObservers。就's 而言,我看到我可以为媒体文件类型ContentObserver设置一个,即AudioVideoPhotos。但是,我没有看到可以告诉我有关文档类型的信息。ContentObserver

一种可能性是我ContentObserver为所有文件(包括媒体)安装了一个,但我担心它会对性能产生什么影响。我问是因为我看到人们已经在抱怨 android 扫描整个文件系统以查找媒体文件的更改。我已经意识到人们用来让 android 从更改中跳过某些文件夹的.nomediaContentObserver解决方法。

我正在寻找两个答案:

  1. 有没有更有效的方法来实现我想要的,而无需查看所有文件的更改?类似于 Documents 的东西ContentObserver

  2. 另一件事是,当我在 Android 设备上打开“我的文件”时,我会在其他媒体类型中看到顶层的Documents条目。有谁知道这是如何实现的?

4

1 回答 1

1

我需要能够跟踪添加/删除文档到 android 文件系统。

为什么这符合用户的利益?记住:你不重要;你的用户是。

我知道 ContentProviders 和 ContentObservers。

请注意,这些仅在您的应用因其他原因在内存中时才有效。

我看到我可以为媒体文件类型(即音频、视频和照片)设置 ContentObserver。但是,我没有看到可以告诉我有关文档类型的信息。

正确,因为 Android 中没有“文档类型”。这是你自己的发明。您可以很容易地引用“Snicklefritz 类型”,定义为“第 18 个字节为 0x4F 的文件”。

有没有更有效的方法来实现我想要的,而无需查看所有文件的更改?

并不真地。欢迎您使用FileObserver来监视对文件或目录的更改,但这仅适用于该文件或该目录,而不是整个文件系统。

当我在安卓设备上打开“我的文件”时

Android 中没有“我的文件”。在您的特定 Android 设备上可能有这样的东西,运行您的特定固件。

于 2013-04-03T13:14:37.673 回答