HarmonyOS photoViewPicker传入RecommendationType不生效

按照官方API说明,在使用PhotoViewPicker时传入RecommendationType,如二维码类型,未在相册中对二维码图片进行筛选。

HarmonyOS
2024-12-25 16:40:59
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
put_get

请试下这个demo,在浏览器下了两个二维码,直接拉起picker后,可以成功跳到了二维码分类的图库:

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

@Entry
@Component
struct ListExample {
  private arr: number[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  /**
   * 选择图片/视频
   * @param maxSelectNumber 选择媒体文件的最大数目
   * @param MIMEType 可选择的媒体文件类型
   * @returns
   */
  public selectPhoto(maxSelectNumber?: number, MIMEType?: picker.PhotoViewMIMETypes): Promise<Array<string>>{
    return new Promise((resolve, reject) => {
      let recommendationOptions: photoAccessHelper.RecommendationOptions = {
        recommendationType: photoAccessHelper.RecommendationType.QR_CODE // 配置枚举类型,不同的枚举值,推荐不同种类的图片
      };
      let photoSelectOptions = new photoAccessHelper.PhotoSelectOptions
      photoSelectOptions.MIMEType = photoAccessHelper.PhotoViewMIMETypes.IMAGE_TYPE;
      photoSelectOptions.maxSelectNumber = maxSelectNumber || 1;
      photoSelectOptions.recommendationOptions = recommendationOptions
      const photoViewPicker = new photoAccessHelper.PhotoViewPicker();
      photoViewPicker.select(photoSelectOptions).then(async (photoSelectResult: picker.PhotoSelectResult) => {
        const selectUris = photoSelectResult.photoUris;
        const base64List: Array<string> = [];
      }).catch((err: BusinessError) => {
        console.error(JSON.stringify(err))
        reject(err)
      })
    })
  }
  build() {
    Column() {
      Button("选择").onClick(() => {
        this.selectPhoto()
      })
    }
    .width('100%')
    .height('100%')
    .backgroundColor(0xDCDCDC)
    .padding({ top: 5 })
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
分享
微博
QQ
微信
回复
2024-12-25 19:27:16


相关问题
HarmonyOS photoViewPicker智能推荐生效
946浏览 • 1回复 待解决
HarmonyOS expandSafeArea生效
1023浏览 • 1回复 待解决
HarmonyOS margin生效
1141浏览 • 1回复 待解决
getContext传入this和传入有什么区别
1198浏览 • 1回复 待解决
HarmonyOS targetSpace生效问题
565浏览 • 1回复 待解决
HarmonyOS @Observed生效问题
1252浏览 • 1回复 待解决
HarmonyOS margin生效问题
734浏览 • 1回复 待解决
abiFilters配置生效
994浏览 • 1回复 待解决
HarmonyOS 单例模式生效
554浏览 • 1回复 待解决
HarmonyOS stack设置圆角生效
664浏览 • 1回复 待解决
HarmonyOS hitTestBehavior.block生效
921浏览 • 1回复 待解决
HarmonyOS Panel 设置 borderRadius 生效
1462浏览 • 1回复 待解决
HarmonyOS Web组件borderRadius生效
735浏览 • 1回复 待解决
HarmonyOS Stack 里 align生效
698浏览 • 1回复 待解决
HarmonyOS Span内边距生效
428浏览 • 1回复 待解决
HarmonyOS 关于onKeyEvent生效问题
1039浏览 • 1回复 待解决
容器组件onVisibleAreaChange生效
2416浏览 • 1回复 待解决
ConstraintSize尺寸设置生效
2870浏览 • 1回复 待解决
HarmonyOS 宽度100%,左右间距生效
413浏览 • 1回复 待解决
HarmonyOS 宽度100% margin左右生效
620浏览 • 1回复 待解决
HarmonyOS 枚举值条件判断生效
549浏览 • 1回复 待解决
HarmonyOS ArkWeb组件加载url生效
711浏览 • 1回复 待解决
HarmonyOS 弹窗封装后open生效
814浏览 • 1回复 待解决
HarmonyOS Badge文本颜色设置生效
780浏览 • 1回复 待解决