在Android文档,他们说
在API <= 28上,使用VOLUME_EXTERNAL
但是这也需要API级别29,而且它不会将媒体文件保存到MediaStore中。
MediaStore.Audio.Media.IS_PENDING
MediaStore.Video.Media.RELATIVE_PATH
MediaStore.Video.Media.DATE_TAKEN还需要API 29,所以我觉得文档不清楚,或者我遗漏了什么?以及如何将媒体文件保存在Android 10下面。
发布于 2020-09-05 17:34:55
尽管MediaStore.VOLUME_EXTERNAL是在API 29中添加的,但是只要将targetSdkVersion和compileSdkVersion设置为29+,就可以安全地使用它。我已经在API 16上测试了它,这个常量并没有破坏我的应用程序。
但是,如果您认为此警告非常烦人,则可以使用MediaStore.<MediaType>.EXTERNAL_CONTENT_URI。它将返回与MediaStore.<MediaType>.getContentUri(MediaStore.VOLUME_EXTERNAL)相同的值。
例如,MediaStore.Downloads.EXTERNAL_CONTENT_URI将等于MediaStore.Downloads.getContentUri(MediaStore.VOLUME_EXTERNAL),即content://media/external/downloads。
此外,您可以通过@SuppressLint("InlinedApi")忽略此警告。
https://stackoverflow.com/questions/63307501
复制相似问题