鸿蒙(API 12 Beta3版)【使用智能PhotoPicker】Media Library Kit媒体文件管理服务

智能PhotoPicker是基于PhotoPicker的高阶功能,可以从大量图片中根据配置的智能推荐参数,快速筛选出符合条件的图片,并在PhotoPicker中推荐给用户选择。

应用拉起PhotoPicker时,可以配置智能推荐参数。当设备中有满足应用传入的智能推荐参数的图片时,PhotoPicker界面除了展示全量的图片外,还会展示符合条件的推荐图片。

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

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

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

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

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

约束与限制

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

    当设备在灭屏充电时,在电量充足、温度正常的情况下,系统将自动进行图片分析,分析完成后,图库主页的"相册"tab页里将显示分类相册。

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

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

开发方式

开发者可以通过两种方式实现PhotoPicker,拉起系统图库。接下来将分别介绍在这两种方式下,如何配置智能PhotoPicker参数。

  • [调用ArkTS接口photoAccessHelper.PhotoViewPicker实现PhotoPicker]
  • [调用ArkTS组件PhotoPickerComponent实现PhotoPicker]

通过接口实现

前提条件

  • 在配置智能PhotoPicker参数之前,需要参考[PhotoPicker接口的开发指导],实现PhotoPicker。

  • 在配置参数photoAccessHelper.PhotoSelectOptions时,媒体文件类型MIMEType([PhotoViewMIMETypes])需要配置为IMAGE_TYPE或IMAGE_VIDEO_TYPE。

    说明

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

根据特定类型推荐图片

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

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

根据文本信息推荐图片

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

说明

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

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

通过组件实现

前提条件

  • 在配置智能PhotoPicker参数之前,需要参考[PhotoPicker组件的开发指导],实现PhotoPicker。

  • 在配置PhotoPickerComponent的属性pickerOptions时,媒体文件类型MIMEType([PhotoViewMIMETypes])需要配置为IMAGE_TYPE或IMAGE_VIDEO_TYPE。

    说明

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

根据特定类型推荐图片

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

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

根据文本信息推荐图片

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

说明

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

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

最后呢

很多开发朋友不知道需要学习那些鸿蒙技术?鸿蒙开发岗位需要掌握那些核心技术点?为此鸿蒙的开发学习必须要系统性的进行。

而网上有关鸿蒙的开发资料非常的少,假如你想学好鸿蒙的应用开发与系统底层开发。你可以参考这份资料,少走很多弯路,节省没必要的麻烦。由两位前阿里高级研发工程师联合打造的《鸿蒙NEXT星河版OpenHarmony开发文档 》里面内容包含了(ArkTS、ArkUI开发组件、Stage模型、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、Harmony南向开发、鸿蒙项目实战等等)鸿蒙(Harmony NEXT)技术知识点

如果你是一名Android、Java、前端等等开发人员,想要转入鸿蒙方向发展。可以直接领取这份资料辅助你的学习。下面是鸿蒙开发的学习路线图。

针对鸿蒙成长路线打造的鸿蒙学习文档。话不多说,我们直接看详细鸿蒙(OpenHarmony )手册(共计1236页)与鸿蒙(OpenHarmony )开发入门视频,帮助大家在技术的道路上更进一步。

  • 《鸿蒙 (OpenHarmony)开发学习视频》
  • 《鸿蒙生态应用开发V2.0白皮书》
  • 《鸿蒙 (OpenHarmony)开发基础到实战手册》
  • OpenHarmony北向、南向开发环境搭建
  • 《鸿蒙开发基础》
  • 《鸿蒙开发进阶》
  • 《鸿蒙开发实战》

总结

鸿蒙---作为国家主力推送的国产操作系统。部分的高校已经取消了安卓课程,从而开设鸿蒙课程;企业纷纷跟进启动了鸿蒙研发。

并且鸿蒙是完全具备无与伦比的机遇和潜力的;预计到年底将有 5,000 款的应用完成原生鸿蒙开发,未来将会支持 50 万款的应用。那么这么多的应用需要开发,也就意味着需要有更多的鸿蒙人才。鸿蒙开发工程师也将会迎来爆发式的增长,学习鸿蒙势在必行! 自↓↓↓拿

相关推荐
dawn8 小时前
鸿蒙ArkTS中的获取网络数据
华为·harmonyos
桃花键神8 小时前
鸿蒙5.0时代:原生鸿蒙应用市场引领开发者服务新篇章
华为·harmonyos
鸿蒙自习室8 小时前
鸿蒙多线程开发——并发模型对比(Actor与内存共享)
华为·harmonyos
MediaTea9 小时前
Pr 视频过渡:沉浸式视频 - VR 色度泄漏
音视频·vr
JavaPub-rodert10 小时前
鸿蒙生态崛起:开发者的机遇与挑战
华为·harmonyos
LNTON羚通10 小时前
算法定制LiteAIServer摄像机实时接入分析平台烟火检测算法的主要功能
音视频·视频监控
帅比九日12 小时前
【HarmonyOS Next】封装一个网络请求模块
前端·harmonyos
yilylong13 小时前
鸿蒙(Harmony)实现滑块验证码
华为·harmonyos·鸿蒙
baby_hua13 小时前
HarmonyOS第一课——DevEco Studio的使用
华为·harmonyos
HarmonyOS_SDK14 小时前
融合虚拟与现实,AR Engine为用户提供沉浸式交互体验
harmonyos