0

假设:我从我的 SD 卡中删除了一个项目,然后我卸载了存储卡。

当 Android 重新扫描我的 SD 卡以进行更改时会发生什么?在 MediaStore 中,每一行都有一个 _ID,所以在我删除一个项目后,这个 _ID 会发生什么:

  • 它是否保留在 MediaStore 中,是否与另一个项目相关联,或者,
  • 它被永久删除?
4

1 回答 1

1

我有同样的问题,找出答案的最好方法是做测试。

根据我所看到的,它是这样工作的:

1) id 从 1 开始,当媒体扫描仪添加新图像或视频时递增 1

2)如果您删除文件并且 mediascanner 还不知道,您将尝试从 mediastore 获取,记录仍然存在

3) 一旦 mediascanner 发现该文件消失,它将从 mediastore db 中删除记录

4) 将不会使用已删除记录的 id,因此如果您有 id 为 1、2、3 的三个项目并删除项目 2 并添加一个新项目,则列表将类似于 1、3、4 - 所以删除的 id不会被重复使用

于 2011-01-30T15:51:36.950 回答