data class VideoInfo(
val name: String,
val path: String,
val size: Long,
val duration: Long
)
fun getVideos(context: Context): List<VideoInfo> {
val videos = mutableListOf<VideoInfo>()
// 定義需要查詢的列
val projection = arrayOf(
MediaStore.Video.Media._ID,
MediaStore.Video.Media.DISPLAY_NAME,
MediaStore.Video.Media.DATA,
MediaStore.Video.Media.SIZE,
MediaStore.Video.Media.DURATION,
MediaStore.Video.Media.DATE_MODIFIED
)
// 定義排序方式
val sortOrder = "${MediaStore.Video.Media.DATE_MODIFIED} DESC"
// 執(zhí)行查詢
context.contentResolver.query(
MediaStore.Video.Media.EXTERNAL_CONTENT_URI,
projection,
null,
null,
sortOrder
)?.use { cursor ->
val idColumn = cursor.getColumnIndexOrThrow(MediaStore.Video.Media._ID)
val nameColumn = cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DISPLAY_NAME)
val dataColumn = cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DATA)
val sizeColumn = cursor.getColumnIndexOrThrow(MediaStore.Video.Media.SIZE)
val durationColumn = cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DURATION)
while (cursor.moveToNext()) {
val id = cursor.getLong(idColumn)
val name = cursor.getString(nameColumn)
val path = cursor.getString(dataColumn)
val size = cursor.getLong(sizeColumn)
val duration = cursor.getLong(durationColumn)
val videoInfo = VideoInfo(name, path, size, duration)
videos.add(videoInfo)
}
}
return videos
}
Android MediaStore獲取視頻
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 代碼位置 MediaMetadataRetriever Wrapper 速度對比 左邊的圖片是通過方式1右邊的圖片...
- 前言: Android中視頻或者音頻播放的話獲取到播放進(jìn)度和總時(shí)長是很常見的,最近有個需求需要在視頻不播放時(shí)顯示...
- 一、前言: 1. 代碼一: 就這么幾行代碼還是給我拋了個IllegalArgumentException異常,最后...
- IM軟件發(fā)送視頻文件,需要顯示縮略圖: 效果如下: 更多詳解:喜歡可以加Q群號:913934649,點(diǎn)贊,評論; ...
- 什么是YUV格式 YUV,是一種顏色編碼方法。Y表示明亮度,也就是灰度值。U和V則是色度、濃度,作用是描述影像色彩...