Code: Select all
def addToMediaStore(): Uri? {
val filename = "image_" + Clock.System.now().format(filenameDateFormat) + ".jpg"
val values = ContentValues()
values.put(MediaStore.Images.Media.IS_PENDING, true)
values.put(MediaStore.MediaColumns.DISPLAY_NAME, filename)
values.put(MediaStore.MediaColumns.MIME_TYPE, "image/jpg")
values.put(
MediaStore.MediaColumns.RELATIVE_PATH, Environment.DIRECTORY_PICTURES + "/MyApplication"
)
values.put(MediaStore.Images.Media.IS_PENDING, 1)
val mediaStoreUri: Uri? =
contentResolver.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values)
if (mediaStoreUri != null) {
copyUri(tempUri, mediaStoreUri)
values.put(MediaStore.Images.Media.IS_PENDING, false)
contentResolver.update(mediaStoreUri, values, null, null)
}
return mediaStoreUri
}
< /code>
Später versuche ich, eine Bitmap aus derselben Datei aus dem Mediastore < /p>
zu erstellenval stream = LocalContext.current.contentResolver.openInputStream(mediaStoreUri)
val bm = BitmapFactory.decodeStream(stream)
< /code>
Ich erhalte jedoch die Ausnahme: < /p>
java.io.FileNotFoundException: No content provider: /external/images/media/1000009242