当前位置: 首页 > news >正文

uniapp选择相册

在这里插入图片描述

概述

一款针对Android平台下的图片选择器,支持从相册获取图片、视频、音频&拍照,支持裁剪(单图or多图裁剪)、压缩、主题自定义配置等功能,支持动态获取权限&适配Android 5.0+系统的开源图片选择框架。
支持Uniapp和Uniapp X下的Vue2、VUe3编译,支持所有Android主流操作系统,兼容行可靠稳定

功能说明

下载源码

一. 参数说明

参数默认值说明
selectMimeType0全部0 图片1 视频1 硬盘3
language0系统默认 -1; 简体中文 0; 繁体 1; 英语 2; 韩语 3; 德语 4; 法语 5; 日语 6; 越语 7; 西班牙语 8; 葡萄牙语 9; 阿拉伯语 10; 俄语 11; 捷克 12; 哈萨克斯坦 13;
isCompresstrue是否压缩
isCropfalse是否剪切
isCameraIntercepttrue是否拦截相机按钮
isCameraForegroundServicetrue是否在前台运行
isDisplayCameratrue是否显示相机
isPageStrategytrue是否开启分页策略
maxSelectNum9最大选择数量
minSelectNum0最小选择数量
isVideoPauseResumePlaytrue视频支持暂停与播放
isQuickCapturetrue使用系统摄像机录制后,是否支持使用系统播放器立即播放视频
isPreviewAudiotrue是否支持音频预览
isPreviewImagetrue是否支持预览图片
isPreviewVideotrue是否支持预览视频
isPreviewFullScreenModetrue是否支持全屏预览
isEmptyResultReturntrue是否支持未选择返回
isWithSelectVideoImagetrue是否支持视频图片同选
isSelectZoomAnimtrue选择缩略图缩放效果
isOpenClickSoundtrue是否开启点击音效
isCameraAroundStatetrue是否开启相机前后切换
isCameraRotateImagetrue拍照是否纠正旋转图片
isGiftrue是否显示gif文件
isWebptrue是否显示webp文件
isBmptrue是否显示bmp文件
isMaxSelectEnabledMasktrue达到最大选择数是否开启禁选蒙层
isSyncCovertrueisPageModel模式下是否强制同步封面,默认false
isAutomaticTitleRecyclerToptrue点击相册标题是否快速回到第一项
isAutoVideoPlaytrue预览视频是否自动播放
isLoopAutoVideoPlaytrue预览视频是否循环播放
isFilterSizeDurationtrue是否过滤图片或音视频大小时长为0的资源
isFastSlidingSelecttrue是否快速滑动选择
isDirectReturnSingletrue是否直接返回单选
isPageSyncAlbumCounttrue分页模式下设置过滤条件后是否同步专辑下资源的数量
isUseSystemVideoPlayertrue是否使用系统自带的视频播放器

二. 返回数据说明

返回数据数据类型说明
compressedboolean是否压缩
compressPathsrtring压缩路径;设置了isCompress;时返回;
fileNamesrtring文件名
maxSelectEnabledMaskboolean是否有最大数量限制
numint文件数量
bucketIdint
mimeTypesrtring文件类型
durationint文件时长
cropResultAspectRatioint剪切宽高比
pathsrtring原图path,但在Android Q版本上返回的是content:// Uri类型
checkedboolean是否选中
realPathsrtring绝对路径
idint
toSandboxPathboolean是否使用自定义输出路径
sandboxPathsrtring自定义输出路径
chooseModelint
widthint宽度
heightint高度
originalboolean是否开启原图
availablePathsrtring
cutboolean是否剪切
cutPathsrtring裁剪后path,设置了isCrop返回
cropImageWidthint剪切宽度
cropImageHeightint剪切高度
parentFolderNamestring
sizeint文件大小
cropOffsetXint图片X轴偏移量
cropOffsetYint图片Y轴偏移量
galleryEnabledMaskboolean
editorImageboolean是否编辑
cameraSourceboolean是否原图
positionint位置
dateAddedTimedate文件添加时间

三.注意事项

从应用市场下载插件导入自己项目后,要先制作自定义插件后,才可以运行使用插件需在 Android 5.0 版本及以上方可正常使用尽量使用 HBuilderX 4.0+ 以上的最新版本,以便更好在uni-app和uni-app x中使用uts插件

2.完整代码示例

<template><view><button @click="openPicture()">打开相册</button><uni-grid :column="4" :highlight="true"><uni-grid-item v-for="(result, index) in resultList" :index="index" :key="index"><view style="background-color: #fff; display: flex; justify-content: center; align-items: center;"><image :src="result.path" mode="aspectFit" :style="{'width': imageSize + 'px', 'height': imageSize + 'px'}"></image></view></uni-grid-item></uni-grid><view style="margin: 10px;"> 返回值:</view><scroll-view scroll-x="true" style="margin:20px; 0px "><y-json-view :json="resultList" closed /></scroll-view></view>
</template><script>import {open} from '@/uni_modules/pic-selector'const modal = uni.requireNativePlugin('modal');export default {data() {return {imageSize:uni.getSystemInfoSync().windowWidth/4-10,resultList:[// {//     "compressed": true,//是否压缩//     "compressPath": "",//压缩路径;设置了isCompress;时返回;//     "fileName": "",//文件名//     "maxSelectEnabledMask": false,//     "num": 1,//文件数量//     "bucketId": -643270046,//     "mimeType": "image/jpeg",//文件类型//     "duration": 0,//文件时长//     "cropResultAspectRatio": 1,//     "path": "",//原图path,但在Android Q版本上返回的是content:// Uri类型//     "checked": false,//     "realPath": "",//绝对路径//     "id": 13043,//     "toSandboxPath": true,//是否使用自定义输出路径//     "sandboxPath": "",//自定义输出路径//     "chooseModel": 0,//     "width": 1134,//宽度//     "height": 1780,//高度//     "original": false,//是否开启原图//     "availablePath": "",//     "cut": true,//是否剪切//     "cutPath": "",//裁剪后path,设置了isCrop返回//     "cropImageWidth": 567,//剪切宽度//     "cropImageHeight": 567,//剪切高度//     "parentFolderName": "WeiXin",//     "size": 392774,//文件大小//     "cropOffsetX": 0,//图片X轴偏移量//     "cropOffsetY": 162,//图片Y轴偏移量//     "galleryEnabledMask": false,//     "editorImage": false,//     "cameraSource": false,//     "position": 1,//     "dateAddedTime": 1749993134// }]}},methods: {openPicture(){let _this = thislet params = {selectMimeType:0,//全部0 图片1 视频1 硬盘3language:0, //system Language -1; 简体中文  0; 繁体 1; 英语 2;  韩语 3; 德语 4; 法语 5; 日语 6; 越语 7;  西班牙语 8; 葡萄牙语 9; 阿拉伯语 10; 俄语 11; 捷克 12; 哈萨克斯坦 13;isCompress:true,//是否压缩isCrop:false,//是否剪切isCameraIntercept :true,//是否拦截相机按钮isCameraForegroundService:true,//是否在前台运行isDisplayCamera:true,//是否显示相机isPageStrategy:true,//是否开启分页策略maxSelectNum:99,//最大选择数量minSelectNum:0,//最小选择数量isVideoPauseResumePlay:true,//视频支持暂停与播放isQuickCapture:true,//使用系统摄像机录制后,是否支持使用系统播放器立即播放视频isPreviewAudio:true,//是否支持音频预览isPreviewImage:true,//是否支持预览图片isPreviewVideo:true,//是否支持预览视频isPreviewFullScreenMode:true,//是否支持全屏预览isEmptyResultReturn:true,//是否支持未选择返回isWithSelectVideoImage:true,//是否支持视频图片同选isSelectZoomAnim:true, //选择缩略图缩放效果isOpenClickSound:true,//是否开启点击音效isCameraAroundState:true,//是否开启相机前后切换isCameraRotateImage:true,//拍照是否纠正旋转图片isGif:true,//是否显示gif文件isWebp:true, //是否显示webp文件isBmp:true,//是否显示bmp文件isMaxSelectEnabledMask:true,//达到最大选择数是否开启禁选蒙层isSyncCover:true, //isPageModel模式下是否强制同步封面,默认falseisAutomaticTitleRecyclerTop:true,//点击相册标题是否快速回到第一项isAutoVideoPlay:true,//预览视频是否自动播放isLoopAutoVideoPlay:true,//预览视频是否循环播放isFilterSizeDuration:true,//是否过滤图片或音视频大小时长为0的资源isFastSlidingSelect:true,//是否快速滑动选择isDirectReturnSingle:true,//是否直接返回单选isPageSyncAlbumCount:true,//分页模式下设置过滤条件后是否同步专辑下资源的数量isUseSystemVideoPlayer:true,//是否使用系统自带的视频播放器}open(params,{onResult(result){if(result){_this.resultList = JSON.parse(result)console.log('onResult--->>',result)modal.toast({ message: _this.resultList, duration: 1.5 });}},onCancel(){console.log('onCancel--->>',result)}})}}}
</script><style>
</style>

长期维护,持续更新,对付费用户提供终身免费技术支持

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.lqws.cn/news/603685.html

相关文章:

  • 【读代码】百度开源大模型:ERNIE项目解析
  • web开发,旅游景点管理系统推荐算法版本demo,基于asp.net,mvc,c#,sql server
  • 【算法】动态规划 斐波那契类型: 740. 删除并获得点数
  • [面试] 手写题-防抖,节流
  • Vue 安装使用教程
  • 小白成长之路-Mysql数据库基础(二)
  • uniapp内置蓝牙打印
  • jQuery UI 安装使用教程
  • Leetcode力扣解题记录--第49题(map)
  • 电源芯片之DCDC初探索ING
  • 数据结构:递归:组合数(Combination formula)
  • 深度学习常见的激活函数
  • 2025年7月最新英雄联盟战绩自动查询工具
  • [创业之路-458]:企业经营层 - 蓝海战略 - 重构价值曲线、整合产业要素、创造新需求
  • 技术学习_人工智能_1_神经网络是如何实现的?
  • 设计模式精讲 Day 22:模板方法模式(Template Method Pattern)
  • 在 Docker 容器中使用内网穿透
  • 论文阅读:BLIPv1 2022.2
  • 使用 StatsD 向 TDengine 写入
  • Python应用指南:利用高德地图API获取公交+地铁可达圈(三)
  • 黑马python(二十三)
  • 【王阳明代数集合代数基础】文化资本理论实体意气感知评定亲疏情感偏序集,实例《临江仙》讲解情感分析之数据结构的演变
  • LL面试题11
  • 【Python】numpy数组常用数据处理(测试代码+api例程)
  • Git 运行.sh文件
  • 2025 推理技术风向标:DeepSeek-R1 揭示大模型从 “记忆” 到 “思考” 的进化路径
  • 基于SpringBoot + HTML 的网上书店系统
  • JavaEE线程概念
  • Yolov7训练自己的数据集和ONNX/TRT部署
  • MongoDB 常用增删改查方法及示例