Content Resolver
Example: Insert image to system media gallery
val contentValues = ContentValues().apply { put(MediaStore.Images.Media.DISPLAY_NAME, "ticket_$id.png") put(MediaStore.Images.Media.MIME_TYPE, "image/png") put(MediaStore.Images.Media.RELATIVE_PATH, "${Environment.DIRECTORY_PICTURES}/WSC2022.MA.AM")}val uri = context.contentResolver.insert( MediaStore.Images.Media.EXTERNAL_CONTENT_URI, contentValues)uri?.let { context.contentResolver.openOutputStream(it)?.use { outputStream -> bitmap.compress(Bitmap.CompressFormat.PNG, 100, outputStream) }}