我正在尝试(没有运气)为音频和图像更新MediaStore的条目。我正在使用这样的东西:
ContentValues values = new ContentValues();
values.put(MediaStore.Audio.Media.TITLE, title);
values.put(MediaStore.Audio.Media.YEAR, year);
resolver.update(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, values, MediaStore.Audio.Media._ID + "= ?", new String[] { String.valueOf(id) })
上面的代码段可以在API16-> API28上正常使用。
不过,在API29上它不起作用。在日志或消息上不会显示任何错误。我正在API29仿真器上尝试上面的代码。我不确定此问题是否与使用仿真器有关。
我非常感谢能为我指明正确方向的任何信息。
最佳答案
https://stackoverflow.com/a/60152702/786656为我工作。
您需要调用一次update
,并将IS_PENDING
标志设置为1。然后再次调用update
,并使用所需的已修改值并将IS_PENDING
标志设置为0。
关于java - 更新MediaStore上的条目在Android Q/API29上不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56891562/