Как сохранить изображение в папку изображений по умолчанию на Android?

У меня есть эта функция, которая сохраняет изображение в папку Internal storage/Android/media на вашем телефоне:

fun getOutputDirectory(): File {
    val mediaDir = externalMediaDirs.firstOrNull()?.let {
        File(it, resources.getString(R.string.app_name)).apply { mkdirs() } }
    return if (mediaDir != null && mediaDir.exists())
        mediaDir else filesDir
}

Я хочу изменить код, чтобы я мог сохранить изображение в папке Images по умолчанию, чтобы, когда пользователь открывает свое приложение «Галерея», он легко мог его увидеть. Как я могу это сделать?


person Bert Hanz    schedule 12.07.2020    source источник
comment
Сохранение в галерее зависит от версии платформы, 29 (Android 10) представляет некоторые новые способы.   -  person Alex Cohn    schedule 12.07.2020
comment
@AlexCohn Что мне передать в качестве параметров? Мой getOutputDirectory не требует никаких параметров, кроме ссылки, которую вы прислали мне как методы, требующие параметров.   -  person Bert Hanz    schedule 12.07.2020
comment
Основное отличие состоит в том, что вы не можете просто вычислить полный путь и использовать файловый API для создания этого файла. Вам нужен ContentResolver, чтобы явным образом зарегистрировать свое изображение в галерее.   -  person Alex Cohn    schedule 13.07.2020