如何使用第三方库中的picker_utils (API12) PickerUtil类

1. 安装依赖

css 复制代码
ohpm i @pura/picker_utils

2.在使用的页面导入模块

javascript 复制代码
import { CameraOptions, PickerUtil } from '@pura/picker_utils';
import { image } from '@kit.ImageKit';
import { camera, cameraPicker } from '@kit.CameraKit';
import { BusinessError } from '@kit.BasicServicesKit';

3.拍照(需要有拍照权限)

javascript 复制代码
let options: CameraOptions = {
  mediaTypes: [cameraPicker.PickerMediaType.PHOTO],
  cameraPosition: camera.CameraPosition.CAMERA_POSITION_BACK
}
PickerUtil.camera(options).then((result) => {
  this.uriStr = `调用相机,返回uri:\n${result.resultUri}`;
}).catch((err: BusinessError) => {
  this.uriStr = `调用相机,异常:\n${JSON.stringify(err)}`;
});
  • 特点:无需配置参数,直接调用系统相机,返回照片 URI。
  • 场景:快速拍照并保存,适用于简单拍照需求。

4.选择单张 / 多张图片

javascript 复制代码
PickerUtil.selectPhoto().then((uris) => {
  this.uriStr = `调用相册,返回uris:\n${uris.join('\n')}`;
}).catch((err: BusinessError) => {
  this.uriStr = `调用相册,异常:\n${JSON.stringify(err)}`;
})
  • 特点:打开系统相册,支持多选,返回 URI 数组。
  • 场景:图片上传、图片编辑等需要用户选择现有图片的场景。

5.选择单个或多个文件

javascript 复制代码
let options: picker.DocumentSelectOptions = {
  maxSelectNumber: 9, //选择媒体文件数量的最大值,默认9。
  selectMode: picker.DocumentSelectMode.FILE, //支持选择的资源类型,默认文件
}
PickerUtil.selectDocument(options).then((uris) => {
  this.uriStr = `调用文件管理,返回uris:\n${uris.join('\n')}`
}).catch((err: BusinessError) => {
  this.uriStr = `调用文件管理,异常:\n${JSON.stringify(err)}`
});

注:剩下更详细的可去参考原第三方SDk

本文档所使用类的源地址链接

​entry/src/main/ets/pages/utils/PickerUtilPage.ets · 桃花镇童长老/harmony-utils - Gitee.com​

本文档所介绍的第三方库源地址链接​OpenHarmony三方库中心仓​

##三方SDK##数码相机##

相关推荐
夏幻灵1 小时前
HTML5里最常用的十大标签
前端·html·html5
Mr Xu_1 小时前
Vue 3 中 watch 的使用详解:监听响应式数据变化的利器
前端·javascript·vue.js
未来龙皇小蓝1 小时前
RBAC前端架构-01:项目初始化
前端·架构
程序员agions1 小时前
2026年,微前端终于“死“了
前端·状态模式
万岳科技系统开发1 小时前
食堂采购系统源码库存扣减算法与并发控制实现详解
java·前端·数据库·算法
程序员猫哥_1 小时前
HTML 生成网页工具推荐:从手写代码到 AI 自动生成网页的进化路径
前端·人工智能·html
龙飞051 小时前
Systemd -systemctl - journalctl 速查表:服务管理 + 日志排障
linux·运维·前端·chrome·systemctl·journalctl
我爱加班、、2 小时前
Websocket能携带token过去后端吗
前端·后端·websocket
AAA阿giao2 小时前
从零拆解一个 React + TypeScript 的 TodoList:模块化、数据流与工程实践
前端·react.js·ui·typescript·前端框架
杨超越luckly2 小时前
HTML应用指南:利用GET请求获取中国500强企业名单,揭秘企业增长、分化与转型的新常态
前端·数据库·html·可视化·中国500强