更新记录

1.0.0(2024-12-25) 下载此版本

  • 初始版本发布。

平台兼容性

Vue2 Vue3
×
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 4.36,Android:支持,iOS:不支持,HarmonyNext:不支持 × × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序 鸿蒙元服务
× × × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × × × × × × ×

kux-media-manager

一个获取相册媒体的媒体管理器插件,通过简洁的API即可快速获取相册媒体数据,方便灵活的对接任何UI展示相册文件。

插件特色

  • 简介的API设计
  • 支持获取视频,音频,最近照片视频。本地音乐等
  • 支持获取媒体文件元数据信息
  • 支持生成缩略图

基本用法

import { useMediaManager } from '@/uni_modules/kux-media-manager';

const mediaManager = useMediaManager();

// 获取所有相册媒体
console.log(mediaManager.loadAlbums());
// 获取相册分类名列表
console.log(mediaManager.getAlbumCategories());
// 获取指定分类的媒体数量
console.log(mediaManager.getMediaFileCountForAlbum('weixin'));
// 获取最近媒体数据
console.log(mediaManager.getRecentMedia());
// 获取指定分类下的媒体数据
console.log(mediaManager.getMediaFilesByAlbumName('Camera'));
// 获取本地视频
console.log(mediaManager.getLocalVideos());
// 获取本地音乐列表
console.log(mediaManager.getLocalMusicList());

注意

需要自定义基座才能正常使用该插件

API

isLoading

  • 说明:是否正在获取媒体资源
  • 类型:isLoading(): boolean

getAlbumCategories

  • 说明:获取相册分类名列表
  • 类型:getAlbumCategories(): string[]

getRecentMedia

  • 说明:获取最近媒体数据
  • 类型:getRecentMedia(): KuxLocalMedia[]

loadAlbums

  • 说明:获取相册所有媒体
  • 类型:loadAlbums(): KuxAlbum[]

getMediaFilesByAlbumName

  • 说明:获取指定分类下的媒体数据
  • 类型:getMediaFilesByAlbumName(name: string): KuxLocalMedia[]

getLocalVideos

  • 说明:获取本地视频
  • 类型:getLocalVideos(): KuxLocalVideo[]

generateVideoThumbnail

  • 说明:生成视频缩略图
  • 类型:generateVideoThumbnail(videoPath: string, completion: (thumbPath: string | null) => void): void

generateVideoThumbnailSync

  • 说明:生成视频缩略图【同步版本】
  • 类型:generateVideoThumbnailSync(videoPath: string): Promise<string | null>

getVideoDuration

  • 说明:获取视频时长
  • 类型:getVideoDuration(videoPath: string, completion: (duration: number | null) => void): void

getVideoDurationSync

  • 说明:获取视频时长【同步版本】
  • 类型:getVideoDurationSync(videoPath: string): Promise<number | null>

getLocalMusicList

  • 说明:获取本地音乐列表
  • 类型:getLocalMusicList(): KuxLocalMusic[]

getMediaFileInfo

  • 说明:获取指定路径的媒体文件信息
  • 类型:getMediaFileInfo(fileId: number, completion: (fileInfo: KuxMediaFileInfo) => void): void

getMediaFileInfoSync

  • 说明:获取指定路径的媒体文件信息【同步版本】
  • 类型:getMediaFileInfoSync(fileId: number): Promise<KuxMediaFileInfo>

onError

  • 说明:捕获全局错误
  • 类型:onError(callback: (error: IUniError) => void): void

KuxAlbum 说明

参数名 类型 说明
name string 相册分类名
medias KuxLocalMedia[] 媒体数据集

KuxLocalMedia 说明

参数名 类型 说明
id number 媒体编号
path string 本地路径
contentUri string? content地址,例如:content://media/external/file/1000014710
mediaType number 媒体类型 1-图片 2-视频

KuxLocalVideo 说明

参数名 类型 说明
id number 媒体编号
path string 本地路径
contentUri string? content地址,例如:content://media/external/file/1000014710
thumbPath string? 缩略图路径
duration number? 视频时长

KuxLocalMusic 说明

参数名 类型 说明
id number 媒体编号
path string 本地路径
contentUri string? content地址,例如:content://media/external/file/1000014710
title string 音乐标题
artist string 艺术家信息
album string 音乐专辑
duration number 音乐时长

KuxMediaFileInfo 说明

参数名 类型 说明
id number? 媒体文件编号
displayName string? 展示名称
dateAdded number? 被添加到媒体库的日期和时间,时间戳格式
dateModified number? 最后修改日期和时间,时间戳格式
mimeType string? 文件的MIME类型
size number? 文件的大小
dateTaken number? 拍摄日期和时间,图片和视频类型文件有效,时间戳格式
width number? 图片的宽度,图片类型文件有效
height number? 图片的高度,图片类型文件有效
orientation number? 需要旋转的角度,图片类型文件有效
latitude number? 拍摄时的维度,图片类型文件有效
longitude number? 拍摄时的经度,图片类型文件有效
thumbPath string? 缩略图路径
bucketDisplayName string? 所在的相册名称,图片和视频类型文件有效
bucketId number? 所在的相册ID,图片和视频类型文件有效
duration number? 时长,视频和音频文件有效
resolution string? 视频的分辨率,视频文件有效
description string? 描述信息,图片和视频文件有效
artist string? 艺术家信息,视频和音频文件有效
album string? 专辑信息,视频和音频文件有效
albumArtist string? 专辑的艺术家信息,音频文件有效
composer string? 作曲家,音频文件有效
year number? 年份,音频文件有效
track number? 专辑的曲目编号,音频文件有效
isRingtone number? 是否被设置为铃声,音频文件有效,0-否 1-是
isMusic number? 是否是音乐,音频文件有效,0-否 1-是
isAlarm number? 是否被设置为闹钟铃声,音频文件有效,0-否 1-是
isNotification number? 是否被设置为通知铃声,音频文件有效,0-否 1-是

结语

kux 不生产代码,只做代码的搬运工,致力于提供uts 的 js 生态轮子实现,欢迎各位大佬在插件市场搜索使用 kux 生态插件:https://ext.dcloud.net.cn/search?q=kux

友情推荐

隐私、权限声明

1. 本插件需要申请的系统权限列表:

android.permission.READ_EXTERNAL_STORAGE

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

暂无用户评论。

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问