【发布时间】:2010-04-26 11:58:02
【问题描述】:
假设:我从我的 sd 卡中删除了一个项目,然后我卸载了存储卡。
当 Android 重新扫描我的 SD 卡以进行更改时会发生什么?在 MediaStore 中,每一行都有一个 _ID,所以在我删除一个项目后,这个 _ID 会发生什么:
- 它是否保留在 MediaStore 中,它与另一个项目相关联,或者,
- 永久删除?
【问题讨论】:
标签: android mediastore
假设:我从我的 sd 卡中删除了一个项目,然后我卸载了存储卡。
当 Android 重新扫描我的 SD 卡以进行更改时会发生什么?在 MediaStore 中,每一行都有一个 _ID,所以在我删除一个项目后,这个 _ID 会发生什么:
【问题讨论】:
标签: android mediastore
我有同样的问题,找出答案的最佳方法是进行测试。
根据我所看到的,它是这样工作的:
1) id 从 1 开始,当媒体扫描仪添加新图像或视频时,id 增加 1
2) 如果您删除了文件而 mediascanner 还不知道这一点,您将尝试从 mediastore 获取,记录仍然存在
3) 一旦 mediascanner 发现该文件已消失,它将从 mediastore db 中删除记录
4) 已删除记录的 id 不会被使用,因此如果您有 id 为 1,2,3 的三个项目并删除项目 2 并添加一个新项目,则列表将类似于 1,3,4 -所以删除的 id 不会被重用
【讨论】: