HarmonyOS cameraPicker设置自定义存储路径无效

代码如下,尝试使用缓存路径替换pickerProfile.saveUri = filePath,但是执行code返回-1,执行失败。如何设置才能指定自定义缓存路径?

async takePhoto() {
  try {
    // Configure to launch the rear camera
    let pickerProfile: cameraPicker.PickerProfile = { cameraPosition: this.cameraPosition[1] };
    let filePath = getContext(this).cacheDir + '/' + UUIDUtil.get16UUID() + '.jpeg'
    let resultFile = fs.openSync(filePath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE)
    pickerProfile.saveUri = filePath
    let pickerResult: cameraPicker.PickerResult = await cameraPicker.pick(getContext(this),
      [this.mediaType[0]], pickerProfile);
    if (pickerResult.resultCode != 0 || !pickerResult.resultUri.length) {
      return
    }
    this.addPhotoFromUri(pickerResult.resultUri)
  } catch (error) {
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
HarmonyOS
2025-01-09 17:50:07
839浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
zxjiu
let filesDir: string | undefined = instance.context?.filesDir;
let currentTime: number = new Date().getTime();
this.tempUri = fileuri.getUriFromPath(filesDir + '/' + currentTime + ".jpg");
const file: fs.File = await fs.open(this.tempUri, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE);
  • 1.
  • 2.
  • 3.
  • 4.

用fs接口将uri转一下。

分享
微博
QQ
微信
回复
2025-01-09 20:31:57
相关问题
HarmonyOS 自定义dialog open无效
966浏览 • 1回复 待解决
HarmonyOS 如何添加自定义的资源路径
671浏览 • 1回复 待解决
注册的自定义字体在 webview 中无效
3019浏览 • 1回复 待解决
HarmonyOS 自定义设置动态壁纸
957浏览 • 1回复 待解决
HarmonyOS WebView设置自定义UserAgent
1053浏览 • 1回复 待解决
HarmonyOS 如何设置自定义字体
1593浏览 • 1回复 待解决
HarmonyOS 如何设置自定义弹窗透明
901浏览 • 1回复 待解决
HarmonyOS 应用设置语言-自定义首页
660浏览 • 1回复 待解决
如何设置自定义弹窗位置
2806浏览 • 1回复 待解决
HarmonyOS Radio设置自定义单选样式
908浏览 • 1回复 待解决
HarmonyOS Video组件能否设置自定义header
1075浏览 • 1回复 待解决
HarmonyOS 全局设置自定义字体的方法
774浏览 • 1回复 待解决
HarmonyOS 自定义Popup arrow颜色怎么设置
592浏览 • 1回复 待解决
基于自定义键盘设置光标位置
1359浏览 • 1回复 待解决