我想使用 MediaStore.MediaColumns.DATA 将厨房中的所有图片加载到我的应用程序中,但它已被弃用。那么,加载它们的另一种方法是什么?
我现在使用此代码,但正如我所说,它已被弃用:
fun getAllShownImagesPath(activity: Activity): MutableList<String> {
val uri: Uri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI
val cursor: Cursor?
val columnIndexData: Int
val listOfAllImages: MutableList<String> = mutableListOf()
val projection = arrayOf(MediaStore.MediaColumns.DATA)
var absolutePathOfImage: String
cursor = activity.contentResolver.query(uri, projection, null, null, null)
if (cursor != null) {
columnIndexData = cursor.getColumnIndexOrThrow(MediaStore.MediaColumns.DATA)
while (cursor.moveToNext()) {
absolutePathOfImage = cursor.getString(columnIndexData)
listOfAllImages.add(absolutePathOfImage)
}
cursor.close()
}
return listOfAllImages
}
Run Code Online (Sandbox Code Playgroud)