harmony 鸿蒙开发准备

  • 2025-06-12
  • 浏览 (6)

开发准备

应用需要先获取相册管理模块实例,才能访问和修改相册中的媒体数据信息。相册管理模块涉及用户个人数据信息,应用需向用户申请相册管理模块读写权限,才能保证功能的正常运行。在使用相册管理模块相关接口时,如无其他注明则默认在工程代码的pages/index.ets或者其他自创的ets文件中使用。

获取相册管理模块实例

应用需要使用应用上下文Context通过接口getPhotoAccessHelper,获取相册管理模块实例,用于访问和修改相册中的媒体数据信息,如图片和视频。

开发步骤

  1. 导入photoAccessHelper模块以使用相册管理模块相关接口。
  2. 通过getContext获取应用上下文。
  3. 获取相册管理模块实例。
import { photoAccessHelper } from '@kit.MediaLibraryKit';
import { common } from '@kit.AbilityKit';

// 此处获取的photoAccessHelper实例为全局对象,后续文档中使用到的地方默认为使用此处获取的对象,如未添加此段代码报未定义的错误请自行添加。
// 请在组件内获取context,确保this.getUiContext().getHostContext()返回结果为UIAbilityContext
let context: Context = this.getUIContext().getHostContext() as common.UIAbilityContext;
let phAccessHelper = photoAccessHelper.getPhotoAccessHelper(context);

申请相册管理模块功能相关权限

相册管理模块的读写操作需要相应权限,在申请权限前,请保证符合权限使用的基本原则。涉及的权限如下表。

权限名 说明 授权方式
ohos.permission.READ_IMAGEVIDEO 允许应用读取媒体库的图片和视频媒体文件信息。 user_grant
ohos.permission.WRITE_IMAGEVIDEO 允许应用读写媒体库的图片和视频媒体文件信息。 user_grant

以上权限的授权方式均为user_grant(用户授权),即开发者在module.json5文件中配置对应的权限后,需要使用接口abilityAccessCtrl.requestPermissionsFromUser去校验当前用户是否已授权。如果已授权,应用可以直接访问/操作目标对象;否则需要弹框向用户申请授权。

开发步骤 1. 上述权限均为受控权限,申请前需要额外申请ACL白名单,请参考声明ACL权限 2. 在配置文件module.json5中声明权限。 3. 向用户申请授权

说明:

即使用户曾经授予权限,应用在调用受此权限保护的接口前,也应该先检查是否有权限。不能把之前授予的状态持久化,因为用户在动态授予后还可以通过“设置”取消应用的权限。

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Media Library Kit(媒体文件管理服务)

harmony 鸿蒙使用MovingPhotoView播放动态照片

harmony 鸿蒙访问和管理动态照片资源

harmony 鸿蒙媒体资源变更通知相关指导

harmony 鸿蒙Media Library Kit 简介

harmony 鸿蒙使用Picker选择媒体库资源

harmony 鸿蒙媒体资源使用指导

harmony 鸿蒙保存媒体库资源

harmony 鸿蒙系统相册资源使用指导

harmony 鸿蒙用户相册资源使用指导

0  赞