A TCompose Request Permissions library for both Jetpack Compose for android, to request permissions in a simple way
Media Picker is available on mavenCentral()
.
implementation("io.github.the-best-is-best:media-picker:1.0.2")
- No permissions are requested by the library itself. You need to request the permissions before using the library.
- You can use the [Compose Request Permissions]
val imagePicker = TMediaPicker.PickSingleMedia().apply {
Init(MimeType.Image.All, onMediaPicked = { uri ->
Log.d("MediaPicker", "Image URI: $uri")
path = uri.path ?: ""
})
}
...
ElevatedButton(onClick = {
imagePicker.pickMedia()
}) {
Text("Pick Image")
}
...
val imagePicker = TMediaPicker.PickMultiMedia().apply {
Init(MimeType.Image.All, onMediaPicked = { uriList ->
Log.d("MediaPicker", "Image URI: $uriList")
path = uriList.map { it.path ?: "" }
})
}
...
ElevatedButton(onClick = {
imagePicker.pickMedia()
}) {
Text("Pick Image")
}
...
- for pick single media
FilePickerUI(
onMediaPicked = {
Log.d("MediaPicker", "Image URI: $it")
value = "Image Picked"
},
mimeType = MimeType.Image.All,
shape = MaterialTheme.shapes.small,
value = value,
placeholder = {
Text("Select Image")
},
)
- for pick multi media
MultiFilePickerUI(
onMediaPicked = {
Log.d("MediaPicker", "Image URI: $it")
value = "${it.count()} Image Picked"
},
mimeType = MimeType.Image.All,
shape = MaterialTheme.shapes.small,
value = value,
placeholder = {
Text("Select Image")
},
)
Image
Video
Audio
Files
All
Custom