更新记录
1.0.0(2026-01-10)
快捷获取手机媒体文件包括视频,图片,支持分页,自动缓存,支持返回缩略图
平台兼容性
uni-app(3.91)
| Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 |
|---|---|---|---|---|---|---|---|---|
| √ | √ | - | - | √ | - | 5.0 | - | - |
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 快应用-华为 | 快应用-联盟 |
|---|---|---|---|---|---|---|---|---|---|---|
| - | - | - | - | - | - | - | - | - | - | - |
uni-app x(3.91)
| Chrome | Safari | Android | iOS | 鸿蒙 | 微信小程序 |
|---|---|---|---|---|---|
| - | - | 5.0 | - | - | - |
获取手机媒体文件,支持分页,自动缓存,支持返回缩略图
- 支持单独搜索图片,视频或者一并查询
- 自动生成缩略图并缓存在应用下目录,保存的目录为应用缓存目录/cache_thumbnails;缩略图仅生成一份,后续访问同一份文件只会返回已经生成的缩略图
- 响应包含文件名称、创建时间、大小、文件路径,缩略图路径,视频时长
uniapp使用示例
<script lang="ts" setup>
import { ref } from 'vue'
import { getMedias, clearThumbnailCache } from "@/uni_modules/mrctx-media-plugin"
const mediaList = ref([])
const test1 = async () =>{
const page = 1
const pageSize = 10
const type = 'all'
// console.log(test())
getMedias({
page, //当前页,必须为number类型,必填
pageSize, // 页大小,必须为number类型,必填
type, // 查询的文件类型,类型有'image' | 'video' | 'all'中的一个,如果传all,将根据pageSize的一半来分别查询视频和图片,最后降序排序返回
success: (res) =>{
console.log('调用成功=>', res)
// 响应示例
//{
//"page": 1, 当前页码
//"pageSize": 10, 页大小
//"type": "all", 查询的类型
//"data": [
//{
//"id": 1000024067, 文件id
//"name": "V20251227-201826.mp4", 文件名称
//"thumbnail": 缩略图路径"/storage/emulated/0/Android/data/io.dcloud.HBuilder/cache/cache_thumbnails/media_plugin_V20251227-201826_-1539686654_1768026021585.jpg",
//"size": 1290358663, 文件大小 单位 KB
//"uri": "/storage/emulated/0/DCIM/Video/V20251227-201826.mp4",
//"duration": 228.987, 视频时长 单位:秒
//"type": "video", 文件类型
//"date": 1766838135000 创建时间
//},
//]
}
mediaList.value = res.data
},
fail: (err) =>{
console.log('调用失败=>', err)
// 具体异常信息请看下方异常信息章节
},
complete: (res) =>{
console.log("函数调用完成=>", res)
}
})
}
const test2 = async () =>{
const res = await clearThumbnailCache()
uni.showModal({
title: '提示',
content: JSON.stringify(res)
})
}
</script>
错误信息
[1001, 'The page parameter needs to be of type number'],
[1002, 'The pageSzie parameter needs to be of type number'],
[1003, "The type parameter should be one of 'image', 'video', or 'all' and must be a string"],
[1011, '没有相册读取权限']
// 插件会判断有没有该权限,使用分区存储,不再需要外部存储权限
// 但继续检查 MANAGE_EXTERNAL_STORAGE权限
// 但经过测试,检查该权限返回false时仍可以正常将缩略图缓存在缓存目录
// 其他版本的系统仍正常判断
[1012, '没有文件读取权限']
[1090, error] // 内部函数执行错误,会在stackTrace返回堆栈信息
异常信息
{
"errSubject": "mrctx-media-plugin",
"stackTrace": [],
"message": "",
"errMsg": "没有相册读取权限",
"suppressedExceptions": [],
"name": "Error",
"errCode": 1011
}
支持
后续持续更新,将支持IOS,鸿蒙等系统!
将更新更多功能~

收藏人数:
购买普通授权版(
试用
赞赏(0)
下载 0
赞赏 0
下载 13174912
赞赏 1843
赞赏
京公网安备:11010802035340号