HarmonyOS鸿蒙Next中PhotoSelectOptions的isOriginalSupported默认值标注错误

HarmonyOS鸿蒙Next中PhotoSelectOptions的isOriginalSupported默认值标注错误

问题文档:PhotoSelectOptions

cke_7819.png

预期结果: 默认为true

实际结果: 默认为false

复现代码:

import { photoAccessHelper } from '@kit.MediaLibraryKit';
import { BusinessError } from '@kit.BasicServicesKit';

@Entry
@Component
struct Index {
  build() {
    Column() {
      Button('Select')
        .padding(10)
        .fontSize(40)
        .onClick(() => {
          let photoSelectOptions = new photoAccessHelper.PhotoSelectOptions();
          photoSelectOptions.MIMEType = photoAccessHelper.PhotoViewMIMETypes.IMAGE_TYPE;
          // photoSelectOptions.isOriginalSupported = true; // 是否显示选择原图按钮
          let photoViewPicker = new photoAccessHelper.PhotoViewPicker();
          photoViewPicker.select(photoSelectOptions)
            .catch((err: BusinessError) => {
              console.error(`Invoke photoViewPicker.select failed, code is ${err.code}, message is ${err.message}`);
            });
        });
    }
    .width('100%')
    .height('100%')
    .justifyContent(FlexAlign.Center)
    .alignItems(HorizontalAlign.Center);
  }
}

更多关于HarmonyOS鸿蒙Next中PhotoSelectOptions的isOriginalSupported默认值标注错误的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

尊敬的开发者:

您好!感谢您的反馈,我们将尽快修复官网文档。

更多关于HarmonyOS鸿蒙Next中PhotoSelectOptions的isOriginalSupported默认值标注错误的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS Next中,PhotoSelectOptions的isOriginalSupported属性默认值标注为true,但实际行为可能不支持原图选择。该标注错误可能导致开发者预期功能与实际API行为不符,需关注官方文档或代码注释的后续更新。

根据您提供的代码和截图,可以确认当前HarmonyOS Next的API文档中关于PhotoSelectOptions.isOriginalSupported属性的默认值标注确实存在错误。

问题分析:

  1. 文档标注:当前官方API参考中,isOriginalSupported属性的默认值标注为true
  2. 实际行为:如您代码测试所示,在不显式设置photoSelectOptions.isOriginalSupported = true;的情况下,系统相册选择器界面不会显示“原图”选择按钮。这证明该属性的实际默认值为false

结论: 这是一个API参考文档的描述与SDK实际实现不一致的问题。PhotoSelectOptions.isOriginalSupported属性的有效默认值是false。如果您需要在相册选择器中为用户提供选择原图的功能,必须显式地将该属性设置为true

临时解决方案: 在代码中创建PhotoSelectOptions对象后,手动设置isOriginalSupported属性。

let photoSelectOptions = new photoAccessHelper.PhotoSelectOptions();
photoSelectOptions.MIMEType = photoAccessHelper.PhotoViewMIMETypes.IMAGE_TYPE;
photoSelectOptions.isOriginalSupported = true; // 显式设置为true以启用原图选择

建议关注官方文档的后续更新,该处描述预计会被修正。您当前在代码中显式赋值的做法是正确的。

回到顶部