我们假设:我从SD卡中删除了一个项目,然后我卸下了存储卡。
当Android重新扫描我的SD卡以进行更改时会发生什么?在MediaStore中,每一行都有一个_ID所以在我删除一个项目后,这个_ID会发生什么:
答案 0 :(得分:1)
我有同样的问题,找出答案的最佳方法是进行测试。
基于我所看到的,它的工作原理如下:
1)当媒体扫描仪添加新图像或视频时,id从1开始并递增1
2)如果您删除该文件且mediascanner尚不知道该文件并且您将尝试从mediastore获取,则该记录仍将存在
3)一旦mediascanner看到该文件消失,它将从mediastore db
中删除该记录4)将不会使用已移除记录的ID,因此如果您有三个带有ID 1,2,3和drop item 2的项目并添加一个新项目,则该列表将显示为1,3,4 - 所以删除的ID不会被重用