HarmonyOS 鸿蒙Next JS开发camera拍摄的照片拷贝到internal://cache/里报错 call fail callback fail, code: 202, data: illegal uri:xxxxxxxx

HarmonyOS 鸿蒙Next JS开发camera拍摄的照片拷贝到internal://cache/里报错 call fail callback fail, code: 202, data: illegal uri:xxxxxxxx 这是拍照的代码,拍摄成功会输出照片路径

##拍照成功路径==>file:///data/data/com.example.http/files/cache_images/IMG_20220916_215355047.jpg

var camera_take = this;
var camera = this.$element('camera');
camera.takePhoto({
    quality:'high',
    success(result){
        console.info('##-------------拍照成功回调------'+result)
        camera_take.src = result.uri
        console.log("##拍照成功路径==>"+camera_take.src);
    },
    fail(result){
        console.info('##-------------拍照失败回调------'+result)
    },
    complete(result){
        console.info('##-------------拍照结束回调------'+result)
    }
})

这是拷贝的代码,

file.copy({
    srcUri: this.src,
    dstUri: 'internal://cache/photo_copy.jpg',
    success: function(uri) {
        console.log('call success callback success');
    },
    fail: function(data, code) {
        console.error('call fail callback fail, code: ' + code + ', data: ' + data);
    },
});

运行后报错

app Log: call fail callback fail, code: 202, data: illegal uri:file:///data/data/com.example.http/files/cache_images/IMG_20220916_215355047.jpg

意思就是照片的路径不合法,但是照片的路径是不能自定义的,怎么才能实现将拍摄的照片拷贝到临时目录里面呢?


更多关于HarmonyOS 鸿蒙Next JS开发camera拍摄的照片拷贝到internal://cache/里报错 call fail callback fail, code: 202, data: illegal uri:xxxxxxxx的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

楼主你好,关于相机URI问题,推荐你参考这个帖子https://developer.huawei.com/consumer/cn/forum/topic/0201760737427700865?fid=26

更多关于HarmonyOS 鸿蒙Next JS开发camera拍摄的照片拷贝到internal://cache/里报错 call fail callback fail, code: 202, data: illegal uri:xxxxxxxx的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


针对您提到的HarmonyOS鸿蒙系统中使用Next JS开发时,尝试将camera拍摄的照片拷贝到internal://cache/目录遇到报错的问题,错误代码为202,提示“illegal uri”,这通常意味着提供的URI不合法或不被系统支持。

在鸿蒙系统中,文件访问权限和URI格式有特定要求。对于internal://cache/这样的URI,它可能不是一个有效的目标路径用于文件操作,尤其是在涉及相机等敏感数据时。鸿蒙系统可能限制了直接访问或写入某些内部缓存目录的方式。

解决此问题的直接方法是检查并确保目标URI格式正确且被系统支持。通常,鸿蒙系统推荐使用其文件系统API来处理文件操作,这些API会提供合适的路径和权限管理机制。

您可以尝试以下步骤:

  • 确认目标路径是否符合鸿蒙的文件系统规范。
  • 使用鸿蒙提供的API(如FileIO等)进行文件操作,而非直接使用URI。
  • 检查应用是否有足够的权限访问目标目录。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部