跳到主要内容

使用PhotoPicker推荐图片

应用在调用PhotoPicker接口时,如果配置了PhotoPicker图片推荐参数,当设备中有满足图片推荐参数的图片,且设备中的图片已经分析完成时,PhotoPicker界面除了展示全量的图片外,还会展示符合条件的推荐图片供用户参考选择,从而缩短用户筛选图片的时间。

  • 选择特定类型(RecommendationType)的图片,如身份证、银行卡、驾驶证、行驶证、二维码等。当有符合应用指定类型的图片传入时,将显示对应的图片推荐页。

    以指定图片类型为二维码为例,PhotoPicker界面上将出现“二维码”的Tab页,展示图库中的二维码图片。

  • 在图文编辑时选择图片,系统可以根据应用传入的文本信息,提取出时间、地点、事物或活动,并根据提取的信息,推荐对应的图片展示在PhotoPicker中。

    举例说明,如设置的推荐参数文本是“国庆节,带着女儿去了上海野生动物园,看到了凶猛的大象,漂亮的火烈鸟,还有她心心念念的大熊猫,小家伙可开心了。”

    而且手机中有相应的图片,图片分析完成时,会在“推荐”的Tab页中展示出时间是国庆节,地点是上海野生动物园的大熊猫、火烈鸟、大象的图片。

约束与限制

  • PhotoPicker推荐图片的功能依赖于图片分析的结果,只有在媒体库中的图片分析完成后,系统才会进行推荐。

    当设备在灭屏充电时,在电量充足、温度正常的情况下,系统将自动进行图片分析。

    如果图片带有地理位置信息,设备需要联网才可以正常解析图片中的位置信息。

  • 当前仅支持推荐图片类型的文件。

开发方式

前提条件

开发者可以通过两种方式实现PhotoPicker,拉起系统图库。请选择其中一种方式,实现PhotoPicker。

  • 当MIMEType配置为IMAGE_TYPE或IMAGE_VIDEO_TYPE,并在后续步骤中配置了推荐参数,将根据参数推荐图片类型的文件。页签“全部”下展示的文件类型与MIMEType配置项一致。
  • 当MIMEType配置为其他类型,推荐不生效。正常展示PhotoPicker筛选的全部照片。

接下来将以通过PhotoPickerComponent为例,指导开发者如何配置PhotoPicker推荐参数,从而实现PhotoPicker推荐图片。

根据特定类型推荐图片

当需要推荐特定类型的图片,如身份证、银行卡、驾驶证、行驶证、二维码等,可通过配置RecommendationOptions.recommendationType,指定推荐的图片类型。支持的图片类型可参考RecommendationType

let recommendationOptions: photoAccessHelper.RecommendationOptions = {
recommendationType: photoAccessHelper.RecommendationType.QR_CODE // 配置枚举类型,不同的枚举值,推荐不同种类的图片
};
this.pickerOptions.recommendationOptions = recommendationOptions;// 将推荐参数赋值给 pickerOptions.recommendationOptions

当前示例以通过Picker组件实现推荐图片为例。

如果使用Picker接口,需要将推荐参数赋值给 photoSelectOptions.recommendationOptions。

根据文本信息推荐图片

当需要在图文编辑时,根据文本信息推荐图片,可通过配置RecommendationOptions.textContextInfo。

如果RecommendationOptions同时配置了recommendationType和textContextInfo,仅textContextInfo生效。

let textInfo: photoAccessHelper.TextContextInfo = {
text: '国庆节,带着女儿去了上海野生动物园,看到了凶猛的大象,漂亮的火烈鸟,还有她心心念念的大熊猫,小家伙可开心了。'
};
let recommendationOptions: photoAccessHelper.RecommendationOptions = {
textContextInfo: textInfo
};
this.pickerOptions.recommendationOptions = recommendationOptions;// 将推荐参数赋值给 pickerOptions.recommendationOptions

当前示例以通过Picker组件实现推荐图片为例。

如果使用Picker接口,需要将推荐参数赋值给 photoSelectOptions.recommendationOptions。

示例代码