Как указать ссылку на картинку из галереи

«Как указать ссылку на картинку из галереи» — вопрос из категории Android компоненты, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для получения ссылки на изображение из галереи используйте Intent.ACTION_PICK или Intent.ACTION_OPEN_DOCUMENT:

val intent = Intent(Intent.ACTION_PICK).apply {
    type = "image/*"
}
startActivityForResult(intent, REQUEST_CODE)

В onActivityResult получите URI изображения:

override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
    if (resultCode == RESULT_OK && requestCode == REQUEST_CODE) {
        val uri = data?.data // Это URI выбранного изображения
    }
}

Для Android 10+ (API 29+) используйте Intent.ACTION_OPEN_DOCUMENT и не забудьте запросить READ_EXTERNAL_STORAGE разрешение. URI может быть временным, для долгосрочного доступа используйте takePersistableUriPermission().