MediaStore - BUCKET_DISPLAY_NAME 仅存在于 API 29+ 上?

fer*_*ral 11 android mediastore android-10.0

我打算查询 MediaStore.Images.Media.BUCKET_DISPLAY_NAME 字段,但 Android Studio 表示它仅适用于 API 29+。此外,Android 文档也有同样的说法。

但是,当他们使用相同的字段时,我发现了 2017 年的StackOverflow 帖子

我在这里缺少什么?

谢谢你。

编辑:我也在 Android 9.0 模拟器上试过它,它工作得很好。

fer*_*ral 10

查看API 差异和当前MediaStore 源时,我们可以看到,直到 Android 10(API 29),BUCKET_DISPLAY_NAMEMediaStore.Images.ImageColumns. 在 API 29 上,此属性已移至MediaStore.MediaColumnsMediaStore.Images.ImageColumns实现),但常量的实际值是相同的。

所以看起来它只是简单地移动到父界面,但它的值是一样的。

  • 谢谢!我们遇到了类似的情况,将“MediaStore.Images.ImageColumns.ORIENTATION”更改为“MediaStore.MediaColumns.ORIENTATION”。您找到任何干净的解决方案吗? (2认同)