如何使用第三方库中的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##数码相机##

相关推荐
福兮说10 小时前
设计稿是 #4A7C6F,页面量出来是 #4B7C6F:HEX、HSL、透明度、canvas 来回转的七个坑
前端·javascript·css·canvas
郑州光合科技余经理10 小时前
海外版外卖加盟:总站与分站配送规则怎么分开管
java·开发语言·前端·后端·uni-app·php·ai编程
小呆呆66611 小时前
副业搞起来,小说,漫画,漫剧的成本优化思路
前端·后端·面试
Dovis(誓平步青云)11 小时前
浇水提醒刚弹出又消失,植物状态别只存一个百分比
开发语言·前端·javascript·pdf·ecmascript·电脑
码艺-Alimjan12 小时前
Vben Admin 新增维吾尔语 Vben-Modal的关键坑之一
前端·javascript·vue.js
可乐鸡翅yeah_12 小时前
hls.js 手动自定义 http 请求 loader,修改请求头实战
开发语言·前端·javascript·网络协议·http·ecmascript·m3u8在线
IT_陈寒13 小时前
Vite静态资源导入这个坑我帮你们踩过了
前端·人工智能·后端
广州华水科技13 小时前
大坝安全监测解决方案:单北斗GNSS形变监测系统应用与维护
前端
yivifu14 小时前
中文古籍电子书注释集成
前端·javascript·python·beautifulsoup·epub
默_笙14 小时前
🛴 从散件到整机:DeepAgents 与 Agent 身上预留的那些"插槽"(前置介绍)
前端·javascript