更新记录
1.0.0(2026-01-22)
1.发布新版本android 文件选择器
平台兼容性
uni-app
| Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 |
|---|---|---|---|---|---|---|---|---|
| √ | √ | - | - | - | - | 5.0 | × | × |
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 快应用-华为 | 快应用-联盟 |
|---|---|---|---|---|---|---|---|---|---|---|
| - | - | - | - | - | - | - | - | - | - | - |
uni-app x
| Chrome | Safari | Android | iOS | 鸿蒙 | 微信小程序 |
|---|---|---|---|---|---|
| - | - | 5.0 | × | × | - |
xueqiu-file-selector 文件选择器
一个功能强大的 uni-app 文件选择器插件,支持系统文件选择器和自定义文件浏览器两种模式。
功能特点
- 支持单选/多选文件
- 支持按文件类型筛选(图片、视频、音频、文档等)
- 自定义文件浏览器界面,带复选框,操作更便捷
- 支持文件搜索
- 支持多种排序方式(时间、名称、大小、类型)
- 图片缩略图预览
- 点击预览图片、视频、音频
- 自动扫描 Download 目录及子文件夹
平台支持
| Android | iOS |
|---|---|
| ✅ | ❌ |
兼容性
uni-app 版本要求
| 框架 | 支持 | 说明 |
|---|---|---|
| uni-app | ✅ | 需要 HBuilderX 3.6.0+ (支持 UTS 插件) |
| uni-app x | ✅ | 完全支持 |
Android 版本要求
| 配置项 | 版本 | 说明 |
|---|---|---|
| minSdkVersion | 21 | Android 5.0 (Lollipop) 及以上 |
| targetSdkVersion | 33 | Android 13 |
| compileSdkVersion | 33 | Android 13 |
HBuilderX 版本要求
- 最低版本:HBuilderX 3.6.0+
- 推荐版本:HBuilderX 4.0+ (更好的 UTS 支持)
注意事项
- UTS 插件需要 HBuilderX 3.6.0 及以上版本才能使用
- 由于插件包含 AndroidManifest.xml 权限配置,需要打包自定义基座才能正常运行
- 标准基座无法使用本插件的权限功能
安装方式
将 xueqiu-file-selector 文件夹复制到项目的 uni_modules 目录下。
使用前配置
1. 添加页面配置
在 pages.json 中添加以下页面:
{
"pages": [
// ... 其他页面
{
"path": "pages/file-browser-page",
"style": {
"navigationBarTitleText": "选择文件",
"navigationStyle": "custom"
}
},
{
"path": "pages/video-preview",
"style": {
"navigationBarTitleText": "视频预览",
"navigationStyle": "custom"
}
}
]
}
2. 复制必要页面文件
将以下文件复制到项目 pages 目录:
pages/file-browser-page.vue- 文件浏览器页面pages/video-preview.vue- 视频预览页面
3. 打包自定义基座
由于插件需要存储权限,首次使用需要打包自定义基座:
HBuilderX → 运行 → 运行到手机或模拟器 → 制作自定义调试基座
基础用法
方式一:系统文件选择器
import { selectFiles } from '@/uni_modules/xueqiu-file-selector'
// 单选文件
selectFiles({
multiple: false,
success: (res) => {
console.log('选择的文件:', res.files)
},
fail: (err) => {
console.error('选择失败:', err)
}
})
// 多选文件
selectFiles({
multiple: true,
maxCount: 5,
success: (res) => {
console.log('选择的文件:', res.files)
}
})
// 只选择图片
selectFiles({
fileTypes: ['image/*'],
multiple: true,
success: (res) => {
console.log('选择的图片:', res.files)
}
})
// 只选择视频
selectFiles({
fileTypes: ['video/*'],
success: (res) => {
console.log('选择的视频:', res.files)
}
})
// 选择文档文件
selectFiles({
fileTypes: [
'application/pdf',
'application/msword',
'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
'application/vnd.ms-excel',
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
'text/plain'
],
multiple: true,
success: (res) => {
console.log('选择的文档:', res.files)
}
})
方式二:自定义文件浏览器
自定义文件浏览器提供更好的用户体验,支持复选框直接选择、搜索、排序、预览等功能。
// 打开自定义文件浏览器
uni.navigateTo({
url: '/pages/file-browser-page',
events: {
selectFiles: (data) => {
console.log('选择的文件:', data.files)
// 处理选择的文件
data.files.forEach(file => {
console.log('文件名:', file.name)
console.log('文件路径:', file.path)
console.log('文件大小:', file.size)
console.log('文件类型:', file.type)
})
}
}
})
API 参数说明
selectFiles(options)
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| multiple | boolean | 否 | false | 是否支持多选 |
| maxCount | number | 否 | 9 | 最大选择数量(多选时有效) |
| fileTypes | string[] | 否 | ["/"] | 允许选择的文件类型(MIME类型) |
| sortBy | string | 否 | "date" | 排序方式:name/date/size/type |
| sortOrder | string | 否 | "desc" | 排序顺序:asc/desc |
| success | function | 否 | - | 成功回调 |
| fail | function | 否 | - | 失败回调 |
| complete | function | 否 | - | 完成回调 |
返回结果 FileSelectResult
| 字段 | 类型 | 说明 |
|---|---|---|
| files | FileInfo[] | 选中的文件列表 |
FileInfo 文件信息
| 字段 | 类型 | 说明 |
|---|---|---|
| path | string | 文件路径 |
| name | string | 文件名 |
| size | number | 文件大小(字节) |
| type | string | 文件类型(MIME类型) |
| lastModified | number | 最后修改时间(时间戳) |
自定义文件浏览器功能
文件类型筛选
顶部标签栏支持按类型筛选:
- 全部 - 显示所有文件
- 文档 - 显示 PDF、Word、Excel、TXT 等文档文件
- 图片 - 显示 JPG、PNG、GIF 等图片文件
- 视频 - 显示 MP4、AVI、MKV 等视频文件
- 音频 - 显示 MP3、WAV、FLAC 等音频文件
排序功能
支持四种排序方式:
- 时间 - 按修改时间排序(默认,最新的在前)
- 名称 - 按文件名字母排序
- 大小 - 按文件大小排序
- 类型 - 按文件类型排序
搜索功能
在搜索框输入关键词,点击搜索按钮即可搜索文件名。
预览功能
- 图片:点击缩略图可全屏预览
- 视频:点击图标跳转到视频播放页面
- 音频:点击图标直接播放
选择文件
- 点击文件信息区域或右侧复选框选择/取消选择文件
- 底部显示已选择数量
- 点击"确定"按钮返回选择结果
常见 MIME 类型
图片
image/*- 所有图片image/jpeg- JPG/JPEGimage/png- PNGimage/gif- GIFimage/webp- WebP
视频
video/*- 所有视频video/mp4- MP4video/x-matroska- MKVvideo/quicktime- MOV
音频
audio/*- 所有音频audio/mpeg- MP3audio/wav- WAVaudio/flac- FLAC
文档
application/pdf- PDFapplication/msword- DOCapplication/vnd.openxmlformats-officedocument.wordprocessingml.document- DOCXapplication/vnd.ms-excel- XLSapplication/vnd.openxmlformats-officedocument.spreadsheetml.sheet- XLSXtext/plain- TXT
压缩文件
application/zip- ZIPapplication/x-rar-compressed- RARapplication/x-7z-compressed- 7Z
其他
application/vnd.android.package-archive- APK*/*- 所有文件
权限说明
插件会自动申请以下权限:
Android 12 及以下
READ_EXTERNAL_STORAGE- 读取外部存储
Android 13 及以上
READ_MEDIA_IMAGES- 读取图片READ_MEDIA_VIDEO- 读取视频READ_MEDIA_AUDIO- 读取音频
注意事项
- 首次使用需要打包自定义基座
- 系统文件选择器多选需要长按进入多选模式
- 自定义文件浏览器默认扫描最多 100 个文件
- 自定义文件浏览器会优先显示 Download 目录的文件
- 排序功能对返回结果生效,不影响系统选择器界面
更新日志
v1.0.0
- 初始版本
- 支持系统文件选择器
- 支持自定义文件浏览器
- 支持文件搜索、排序、预览

收藏人数:
购买源码授权版(
试用
使用 HBuilderX 导入示例项目
赞赏(0)
下载 0
赞赏 0
下载 13564612
赞赏 1851
赞赏
京公网安备:11010802035340号