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)
.
我正在尝试通过这种方法将图像从内部存储复制到外部存储:
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)
.