Android - 外部存储中保存的图像没有出现在图库中

Android - Saved image in external storage doesn't appear in gallery

我正在尝试通过这种方法将图像从内部存储复制到外部存储:

private val externalStorage = context.getExternalFilesDir(Environment.DIRECTORY_PICTURES)

override fun savePhotoToExternalStorage(file: File) {
    val toFile = File(externalStorage, file.name)
    file.copyTo(toFile, true)
    MediaScannerConnection.scanFile(context, arrayOf(toFile.path), null, null)
}

我看到图片保存在路径 /storage/emulated/0/Android/data/pl.renesans.renesans/files/Pictures/image.jpg 中,我可以在我的 phone 中找到它的文件,但它没有出现在图库中。我究竟做错了什么?我使用了错误的路径来保存此图像,或者我以错误的方式使用了 MediaScannerConnection.scanFile()?

MediaStore 不收集有关应用特定文件夹中文件的信息。

因此没有来自 getExternalFilesdir() 的信息。

图库应用依赖于 MediaStore。

在 Android 下面的 Q 你可以使用 getExternalStorageDirectory() 等等。

Environment.getExternalPublicDirectory(Environment.DIRECTORY_PICTURES).