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) {
  }
}
HarmonyOS
2025-01-09 17:50:07
浏览
收藏 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);

用fs接口将uri转一下。

分享
微博
QQ
微信
回复
2025-01-09 20:31:57
相关问题
HarmonyOS 自定义dialog open无效
1235浏览 • 1回复 待解决
HarmonyOS 如何添加自定义的资源路径
960浏览 • 1回复 待解决
HarmonyOS 如何设置自定义字体
1907浏览 • 1回复 待解决
HarmonyOS WebView设置自定义UserAgent
1460浏览 • 1回复 待解决
注册的自定义字体在 webview 中无效
3565浏览 • 1回复 待解决
HarmonyOS 自定义设置动态壁纸
1347浏览 • 1回复 待解决
HarmonyOS 如何设置自定义弹窗透明
1328浏览 • 1回复 待解决
HarmonyOS 应用设置语言-自定义首页
913浏览 • 1回复 待解决
如何设置自定义弹窗位置
3121浏览 • 1回复 待解决
HarmonyOS button文字怎么自定义设置位置
1157浏览 • 1回复 待解决
HarmonyOS 自定义Popup arrow颜色怎么设置
885浏览 • 1回复 待解决
如何设置自定义组件height缺省
2641浏览 • 1回复 待解决
自定义弹窗自定义转场动画
2421浏览 • 1回复 待解决
HarmonyOS 全局设置自定义字体的方法
1320浏览 • 1回复 待解决
HarmonyOS Radio设置自定义单选样式
1346浏览 • 1回复 待解决