wx.chooseMedia

拍摄或从手机相册中选择图片或视频。

注意事项

  • iOS SDK 版本需要 ≥ 1.0.18
  • Android SDK 版本需要 ≥ 1.0.10
  • 使用该接口能力之前,需在微信开发者工具 project.miniapp.json 中勾选「Media SDK 」
  • 使用该接口能力之前,需在微信开发者工具 project.miniapp.json 中配置「隐私信息访问许可描述」的相册读取、摄像头以及麦克风的许可描述。即,该接口需获得相册读取、摄像头以及麦克风权限才可以调用。
  • 补充:如果 Android 的 targetsdkversion 配了 33 及以上需在 project.miniapp.json 中新增下方这三个权限描述(如果你的开发者工具打开后没有下方三个配置,请将开发者工具升级到最新的 nightly 版)

参数

Object object

属性类型默认值必填说明
countnumber9最多可以选择的文件个数,基础库2.25.0前,最多可支持9个文件,2.25.0及以后最多可支持20个文件
mediaTypeArray.<string>['image', 'video']文件类型
合法值说明
image只能拍摄图片或从相册选择图片
video只能拍摄视频或从相册选择视频
mix可以出现视频和图片,但是不可以同时选视频和图片
sourceTypeArray.<string>['album', 'camera']图片和视频选择的来源
合法值说明
album从相册选择
camera使用相机拍摄
maxDurationnumber10拍摄视频最长拍摄时间,单位秒。时间范围为 3s 至 60s 之间。不限制相册。
sizeTypeArray.<string>['original', 'compressed']是否压缩所选文件,仅对 mediaType 为 image 时有效
camerastring'back'仅在 sourceType 为 camera 时生效,使用前置或后置摄像头
合法值说明
back使用后置摄像头
front使用前置摄像头
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数(调用成功、失败都会执行)

object.success 回调函数

参数
Object res
属性类型说明
tempFilesArray.<Object>本地临时文件列表
结构属性类型说明
tempFilePathstring本地临时文件路径 (本地路径)
sizenumber本地临时文件大小,单位 B
durationnumber视频的时间长度
heightnumber视频的高度
widthnumber视频的宽度
thumbTempFilePathstring视频缩略图临时文件路径
fileTypestring文件类型
合法值说明
image图片
video视频
typestring文件类型,有效值有 image 、video、mix

示例代码

wx.chooseMedia({
  count: 9,
  mediaType: ['image','video'],
  sourceType: ['album', 'camera'],
  maxDuration: 30,
  camera: 'back',
  success(res) {
    console.log(res.tempFiles[0].tempFilePath)
    console.log(res.tempFiles[0].size)
  }
})