HarmonyOS Next中 PhotoViewPicker save保存照片后无法在系统相册看到是怎么回事?

HarmonyOS Next中 PhotoViewPicker save保存照片后无法在系统相册看到是怎么回事?

保持照片功能无法在系统相册看到

阅读 978
2 个回答

博主可以试一下这段代码:

/**
   * 保存ArrayBuffer到图库
   * @param buffer:图片ArrayBuffer
   * @returns
   */
  async saveImage(buffer: ArrayBuffer | string): Promise<void> {
    const context = getContext(this) as common.UIAbilityContext; // 获取getPhotoAccessHelper需要的context
    const helper = photoAccessHelper.getPhotoAccessHelper(context); // 获取相册管理模块的实例
    const uri = await helper.createAsset(photoAccessHelper.PhotoType.IMAGE, 'png'); // 指定待创建的文件类型、后缀和创建选项,创建图片或视频资源
    const file = await fs.open(uri, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE);
    await fs.write(file.fd, buffer);
    await fs.close(file.fd);
  }

在HarmonyOS Next中,使用PhotoViewPicker的save方法保存的照片不会出现在系统相册中,因为它们被保存在文件管理器的特定目录,而不是图库目录。要让照片出现在图库中,可以使用安全控件或手动将照片移动到图库目录。

logo
HarmonyOS
子站问答
访问
宣传栏