MediaAssetManager

概述

提供媒体库资源请求能力的API。

对应的开发指南及样例可参考使用MediaAssetManager请求图片资源

起始版本: 12

汇总

文件

名称 描述
media_access_helper_capi.h 定义与相册管理模块相关的API。
media_asset_base_capi.h 定义了媒体资产管理器的结构和枚举。
media_asset_capi.h 定义与媒体资源相关的API。
media_asset_change_request_capi.h 定义与媒体资产更改请求相关的API。
media_asset_manager_capi.h 定义媒体资产管理器的接口。
moving_photo_capi.h 定义与动态照片相关的API。

结构体

名称 描述
struct MediaLibrary_RequestId 定义请求Id。
struct MediaLibrary_RequestOptions 请求策略模式配置项。

类型定义

名称 描述
typedef struct OH_MediaAssetManager OH_MediaAssetManager 定义媒体资产管理器。
typedef struct OH_MediaAssetChangeRequest OH_MediaAssetChangeRequest 定义媒体资产更改请求。
typedef struct OH_MovingPhoto OH_MovingPhoto 定义动态照片。
typedef struct OH_MediaAsset OH_MediaAsset 定义媒体资产。
typedef struct MediaLibrary_RequestId MediaLibrary_RequestId 定义请求Id。
typedef enum MediaLibrary_ErrorCode MediaLibrary_ErrorCode 媒体库错误代码的枚举。
typedef enum MediaLibrary_DeliveryMode MediaLibrary_DeliveryMode 请求资源分发模式。
typedef struct MediaLibrary_RequestOptions MediaLibrary_RequestOptions 请求策略模式配置项。
typedef enum MediaLibrary_MediaType MediaLibrary_MediaType 媒体类型的枚举。
typedef enum MediaLibrary_MediaSubType MediaLibrary_MediaSubType 媒体资源子类型的枚举。
typedef enum MediaLibrary_ResourceType MediaLibrary_ResourceType 资源类型的枚举。
typedef enum MediaLibrary_ImageFileType MediaLibrary_ImageFileType 图像文件类型的枚举。
typedef enum MediaLibrary_MediaQuality MediaLibrary_MediaQuality 媒体资源质量枚举。
typedef enum MediaLibrary_MediaContentType MediaLibrary_MediaContentType 媒体内容类型的枚举。
typedef void(* OH_MediaLibrary_OnDataPrepared) (int32_t result, MediaLibrary_RequestId requestId) 当所请求的媒体资源准备完成时会触发回调。
typedef void(* OH_MediaLibrary_OnImageDataPrepared) (MediaLibrary_ErrorCode result, MediaLibrary_RequestId requestId, MediaLibrary_MediaQuality mediaQuality, MediaLibrary_MediaContentType type, OH_ImageSourceNative *imageSourceNative) 当请求的图像源准备就绪时调用。
typedef void(* OH_MediaLibrary_OnMovingPhotoDataPrepared) (MediaLibrary_ErrorCode result, MediaLibrary_RequestId requestId, MediaLibrary_MediaQuality mediaQuality, MediaLibrary_MediaContentType type, OH_MovingPhoto *movingPhoto) 当请求的动态照片准备就绪时调用。

枚举

名称 描述
MediaLibrary_ErrorCode {
MEDIA_LIBRARY_OK = 0,
MEDIA_LIBRARY_PERMISSION_DENIED = 201,
MEDIA_LIBRARY_PARAMETER_ERROR = 401,
MEDIA_LIBRARY_NO_SUCH_FILE = 23800101,
MEDIA_LIBRARY_INVALID_DISPLAY_NAME = 23800102,
MEDIA_LIBRARY_INVALID_ASSET_URI = 23800103,
MEDIA_LIBRARY_INVALID_PHOTO_KEY = 23800104,
MEDIA_LIBRARY_OPERATION_NOT_SUPPORTED = 23800201,
MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR = 23800301
}
媒体库错误代码的枚举。
MediaLibrary_DeliveryMode {
MEDIA_LIBRARY_FAST_MODE = 0,
MEDIA_LIBRARY_HIGH_QUALITY_MODE = 1,
MEDIA_LIBRARY_BALANCED_MODE = 2 }
请求资源分发模式。
MediaLibrary_MediaType {
MEDIA_LIBRARY_IMAGE = 1,
MEDIA_LIBRARY_VIDEO = 2 }
媒体类型的枚举。
MediaLibrary_MediaSubType {
MEDIA_LIBRARY_DEFAULT = 0,
MEDIA_LIBRARY_MOVING_PHOTO = 3,
MEDIA_LIBRARY_BURST = 4 }
媒体资源子类型的枚举。
MediaLibrary_ResourceType {
MEDIA_LIBRARY_IMAGE_RESOURCE = 1,
MEDIA_LIBRARY_VIDEO_RESOURCE = 2 }
资源类型的枚举。
MediaLibrary_ImageFileType {
MEDIA_LIBRARY_IMAGE_JPEG = 1 }
图像文件类型的枚举。
MediaLibrary_MediaQuality {
MEDIA_LIBRARY_QUALITY_FAST = 1,
MEDIA_LIBRARY_QUALITY_FULL = 2 }
媒体资源质量枚举。
MediaLibrary_MediaContentType {
MEDIA_LIBRARY_COMPRESSED = 1,
MEDIA_LIBRARY_PICTURE_OBJECT = 2 }
媒体内容类型的枚举。

函数

名称 描述
MediaLibrary_ErrorCode OH_MediaAccessHelper_ApplyChanges (OH_MediaAssetChangeRequest *changeRequest) 发起应用资产或相册的更改请求。
MediaLibrary_ErrorCode OH_MediaAsset_GetUri (OH_MediaAsset *mediaAsset, const char **uri) 获取媒体资产的uri。
MediaLibrary_ErrorCode OH_MediaAsset_GetMediaType (OH_MediaAsset *mediaAsset, MediaLibrary_MediaType *mediaType) 获取媒体资源类型。
MediaLibrary_ErrorCode OH_MediaAsset_GetMediaSubType (OH_MediaAsset *mediaAsset, MediaLibrary_MediaSubType *mediaSubType) 获取媒体资源子类型。
MediaLibrary_ErrorCode OH_MediaAsset_GetDisplayName (OH_MediaAsset *mediaAsset, const char **displayName) 获取媒体资源的显示名称。
MediaLibrary_ErrorCode OH_MediaAsset_GetSize (OH_MediaAsset *mediaAsset, uint32_t *size) 获取媒体资产的文件大小。
MediaLibrary_ErrorCode OH_MediaAsset_GetDateAdded (OH_MediaAsset *mediaAsset, uint32_t *dateAdded) 获取资产添加日期。
MediaLibrary_ErrorCode OH_MediaAsset_GetDateModified (OH_MediaAsset *mediaAsset, uint32_t *dateModified) 获取资产的修改日期。
MediaLibrary_ErrorCode OH_MediaAsset_GetDateTaken (OH_MediaAsset *mediaAsset, uint32_t *dateTaken) 获取资产的拍摄日期。
MediaLibrary_ErrorCode OH_MediaAsset_GetDateAddedMs (OH_MediaAsset *mediaAsset, uint32_t *dateAddedMs) 获取资产的添加时间(毫秒)。
MediaLibrary_ErrorCode OH_MediaAsset_GetDateModifiedMs (OH_MediaAsset *mediaAsset, uint32_t *dateModifiedMs) 获取资产的修改时间(毫秒)。
MediaLibrary_ErrorCode OH_MediaAsset_GetDuration (OH_MediaAsset *mediaAsset, uint32_t *duration) 获取媒体资源的持续时间(毫秒)。
MediaLibrary_ErrorCode OH_MediaAsset_GetWidth (OH_MediaAsset *mediaAsset, uint32_t *width) 获取媒体资源的图像宽度(像素)。
MediaLibrary_ErrorCode OH_MediaAsset_GetHeight (OH_MediaAsset *mediaAsset, uint32_t *height) 获取媒体资源的图像高度(像素)。
MediaLibrary_ErrorCode OH_MediaAsset_GetOrientation (OH_MediaAsset *mediaAsset, uint32_t *orientation) 获取图像的旋转角度,单位为度。
MediaLibrary_ErrorCode OH_MediaAsset_IsFavorite (OH_MediaAsset *mediaAsset, uint32_t *favorite) 获取资产的收藏状态。
MediaLibrary_ErrorCode OH_MediaAsset_GetTitle (OH_MediaAsset *mediaAsset, const char **title) 获取媒体资产的标题。
MediaLibrary_ErrorCode OH_MediaAsset_Release (OH_MediaAsset *mediaAsset) 释放媒体资产
OH_MediaAssetChangeRequest * OH_MediaAssetChangeRequest_Create (OH_MediaAsset *mediaAsset) 创建OH_MediaAssetChangeRequest实例。
MediaLibrary_ErrorCode OH_MediaAssetChangeRequest_AddResourceWithUri (OH_MediaAssetChangeRequest *changeRequest, MediaLibrary_ResourceType resourceType, char *fileUri) 通过文件uri添加资源。
MediaLibrary_ErrorCode OH_MediaAssetChangeRequest_AddResourceWithBuffer (OH_MediaAssetChangeRequest *changeRequest, MediaLibrary_ResourceType resourceType, uint8_t *buffer, uint32_t length) 通过ArrayBuffer数据添加资源。
MediaLibrary_ErrorCode OH_MediaAssetChangeRequest_GetWriteCacheHandler (OH_MediaAssetChangeRequest *changeRequest, int32_t *fd) 获取临时文件写句柄。
MediaLibrary_ErrorCode OH_MediaAssetChangeRequest_SaveCameraPhoto (OH_MediaAssetChangeRequest *changeRequest, MediaLibrary_ImageFileType imageFileType) 保存相机拍摄的照片资源。
MediaLibrary_ErrorCode OH_MediaAssetChangeRequest_DiscardCameraPhoto (OH_MediaAssetChangeRequest *changeRequest) 丢弃相机拍摄的照片资源。
MediaLibrary_ErrorCode OH_MediaAssetChangeRequest_Release (OH_MediaAssetChangeRequest *changeRequest) 释放OH_MediaAssetChangeRequest实例。
OH_MediaAssetManager * OH_MediaAssetManager_Create (void) 创建一个媒体资产管理器。
MediaLibrary_RequestId OH_MediaAssetManager_RequestImageForPath (OH_MediaAssetManager *manager, const char *uri, MediaLibrary_RequestOptions requestOptions, const char *destPath, OH_MediaLibrary_OnDataPrepared callback) 请求具有目标路径的图像资源。
MediaLibrary_RequestId OH_MediaAssetManager_RequestVideoForPath (OH_MediaAssetManager *manager, const char *uri, MediaLibrary_RequestOptions requestOptions, const char *destPath, OH_MediaLibrary_OnDataPrepared callback) 请求具有目标路径的视频资源。
bool OH_MediaAssetManager_CancelRequest (OH_MediaAssetManager *manager, const MediaLibrary_RequestId requestId) 通过请求Id取消请求。
MediaLibrary_ErrorCode OH_MediaAssetManager_RequestMovingPhoto (OH_MediaAssetManager *manager, OH_MediaAsset *mediaAsset, MediaLibrary_RequestOptions requestOptions, MediaLibrary_RequestId *requestId, OH_MediaLibrary_OnMovingPhotoDataPrepared callback) 根据不同的策略模式请求动态照片资源。
MediaLibrary_ErrorCode OH_MediaAssetManager_RequestImage (OH_MediaAssetManager *manager, OH_MediaAsset *mediaAsset, MediaLibrary_RequestOptions requestOptions, MediaLibrary_RequestId *requestId, OH_MediaLibrary_OnImageDataPrepared callback) 根据不同的策略模式请求图像资源。
MediaLibrary_ErrorCode OH_MediaAssetManager_Release (OH_MediaAssetManager *manager) 释放OH_MediaAssetManager实例。
MediaLibrary_ErrorCode OH_MovingPhoto_GetUri (OH_MovingPhoto *movingPhoto, const char **uri) 获取动态照片的uri。
MediaLibrary_ErrorCode OH_MovingPhoto_RequestContentWithUris (OH_MovingPhoto *movingPhoto, char *imageUri, char *videoUri) 同时请求动态照片的图片内容和视频内容,并写入参数指定的对应的uri中。
MediaLibrary_ErrorCode OH_MovingPhoto_RequestContentWithUri (OH_MovingPhoto *movingPhoto, MediaLibrary_ResourceType resourceType, char *uri) 请求指定资源类型的动态照片内容,并写入参数指定的uri中。
MediaLibrary_ErrorCode OH_MovingPhoto_RequestContentWithBuffer (OH_MovingPhoto *movingPhoto, MediaLibrary_ResourceType resourceType, const uint8_t **buffer, uint32_t *size) 请求指定资源类型的动态照片内容,以ArrayBuffer的形式返回。
MediaLibrary_ErrorCode OH_MovingPhoto_Release (OH_MovingPhoto *movingPhoto) Release OH_MovingPhoto实例。

类型定义说明

MediaLibrary_DeliveryMode

typedef enum MediaLibrary_DeliveryMode MediaLibrary_DeliveryMode

描述 请求资源分发模式。

此枚举定义了请求资源的分发模式。

  • 快速分发:不考虑资源质量,直接基于现有资源返回。

  • 高质量分发:返回高质量资源,若没有,则触发生成高质量资源,成功后才返回。

  • 均衡分发:若存在高质量资源,则直接返回高质量资源。 否则,先返回低质量资源,并触发生成高质量资源,成功后再返回一次高质量资源。

起始版本: 12

MediaLibrary_ErrorCode

typedef enum MediaLibrary_ErrorCode MediaLibrary_ErrorCode

描述 媒体库错误代码的枚举。

起始版本: 12

MediaLibrary_ImageFileType

typedef enum MediaLibrary_ImageFileType MediaLibrary_ImageFileType

描述 图像文件类型的枚举。

起始版本: 12

MediaLibrary_MediaContentType

typedef enum MediaLibrary_MediaContentType MediaLibrary_MediaContentType

描述 媒体内容类型的枚举。

起始版本: 12

MediaLibrary_MediaQuality

typedef enum MediaLibrary_MediaQuality MediaLibrary_MediaQuality

描述 媒体资源质量枚举。

此枚举与请求媒体资源时定义的分发模式有关。

  • 快速分发:不考虑资源质量,直接基于现有资源返回。

  • 高质量分发:返回高质量资源,若没有,则触发生成高质量资源,成功后才返回。

  • 均衡分发:若存在高质量资源,则直接返回高质量资源。 否则,先返回低质量资源,并触发生成高质量资源,成功后再返回一次高质量资源。

起始版本: 12

MediaLibrary_MediaSubType

typedef enum MediaLibrary_MediaSubType MediaLibrary_MediaSubType

描述 媒体资源子类型的枚举。

起始版本: 12

MediaLibrary_MediaType

typedef enum MediaLibrary_MediaType MediaLibrary_MediaType

描述 媒体类型的枚举。

起始版本: 12

MediaLibrary_RequestId

typedef struct MediaLibrary_RequestId MediaLibrary_RequestId

描述 定义请求Id。

当请求媒体库资源时,会返回此类型。 请求Id用于取消请求。 如果请求失败,值将全为零,如 "00000000-0000-0000-0000-000000000000"。

起始版本: 12

MediaLibrary_RequestOptions

typedef struct MediaLibrary_RequestOptions MediaLibrary_RequestOptions

描述 请求策略模式配置项。

此结构体为媒体资源请求策略模式配置项。

起始版本: 12

MediaLibrary_ResourceType

typedef enum MediaLibrary_ResourceType MediaLibrary_ResourceType

描述 资源类型的枚举。

起始版本: 12

OH_MediaAsset

typedef struct OH_MediaAsset OH_MediaAsset

描述 定义媒体资产。

此结构体提供了封装文件资源属性的能力。

起始版本: 12

OH_MediaAssetChangeRequest

typedef struct OH_MediaAssetChangeRequest OH_MediaAssetChangeRequest

描述 定义媒体资产更改请求。

此结构体提供了处理媒体资产更改请求的能力。

起始版本: 12

OH_MediaAssetManager

typedef struct OH_MediaAssetManager OH_MediaAssetManager

描述 定义媒体资产管理器。

此结构提供了请求媒体库资源的能力。 如果创建失败,则返回空指针。

起始版本: 12

OH_MediaLibrary_OnDataPrepared

typedef void (*OH_MediaLibrary_OnDataPrepared)(int32_t result, MediaLibrary_RequestId requestId)

描述 当所请求的媒体资源准备完成时会触发回调。

起始版本: 12

参数:

名称 描述
result 请求资源处理的结果。
requestId 请求Id。

OH_MediaLibrary_OnImageDataPrepared

typedef void (*OH_MediaLibrary_OnImageDataPrepared)(MediaLibrary_ErrorCode result, MediaLibrary_RequestId requestId, MediaLibrary_MediaQuality mediaQuality, MediaLibrary_MediaContentType type, OH_ImageSourceNative* imageSourceNative)

描述 当请求的图像源准备就绪时调用。

当所请求的图像源准备就绪时,会调用此函数。

起始版本: 12

参数:

名称 描述
result 处理所请求资源的结果MediaLibrary_ErrorCode
requestId 请求的MediaLibrary_RequestId
mediaQuality 请求源的MediaLibrary_MediaQuality
type 请求源的MediaLibrary_MediaContentType
imageSourceNative 当请求的图像源准备就绪时获取OH_ImageSourceNative

OH_MediaLibrary_OnMovingPhotoDataPrepared

typedef void (*OH_MediaLibrary_OnMovingPhotoDataPrepared)(MediaLibrary_ErrorCode result, MediaLibrary_RequestId requestId, MediaLibrary_MediaQuality mediaQuality, MediaLibrary_MediaContentType type, OH_MovingPhoto* movingPhoto)

描述 当请求的动态照片准备就绪时调用。

当所请求的动态照片准备就绪时,会调用此函数。

起始版本: 13

参数:

名称 描述
result 处理所请求资源的结果MediaLibrary_ErrorCode
requestId 请求的MediaLibrary_RequestId
mediaQuality 请求资源的MediaLibrary_MediaQuality
type 请求资源的MediaLibrary_MediaContentType
movingPhoto 当请求的动态图片准备就绪时获取OH_MovingPhoto

OH_MovingPhoto

typedef struct OH_MovingPhoto OH_MovingPhoto

描述 定义动态照片。

此结构体提供了获取关于动态照片的信息的能力。

起始版本: 13

枚举类型说明

MediaLibrary_DeliveryMode

enum MediaLibrary_DeliveryMode

描述 请求资源分发模式。

此枚举定义了请求资源的分发模式。

  • 快速分发:不考虑资源质量,直接基于现有资源返回。

  • 高质量分发:返回高质量资源,若没有,则触发生成高质量资源,成功后才返回。

  • 均衡分发:若存在高质量资源,则直接返回高质量资源。 否则,先返回低质量资源,并触发生成高质量资源,成功后再返回一次高质量资源。

起始版本: 12

枚举值 描述
MEDIA_LIBRARY_FAST_MODE 快速分发。
MEDIA_LIBRARY_HIGH_QUALITY_MODE 高质量分发。
MEDIA_LIBRARY_BALANCED_MODE 均衡分发。

MediaLibrary_ErrorCode

enum MediaLibrary_ErrorCode

描述 媒体库错误代码的枚举。

起始版本: 12

枚举值 描述
MEDIA_LIBRARY_OK 媒体库结果正常。
MEDIA_LIBRARY_PERMISSION_DENIED 权限被拒绝。
MEDIA_LIBRARY_PARAMETER_ERROR 强制参数未指定,参数类型不正确或参数验证失败。
MEDIA_LIBRARY_NO_SUCH_FILE 文件不存在。
MEDIA_LIBRARY_INVALID_DISPLAY_NAME 显示名称无效。
MEDIA_LIBRARY_INVALID_ASSET_URI 资产uri无效。
MEDIA_LIBRARY_INVALID_PHOTO_KEY PhotoKey无效。
MEDIA_LIBRARY_OPERATION_NOT_SUPPORTED 不支持该操作。
MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR 内部系统错误。 建议重试并检查日志。 可能的原因:
1. 数据库已损坏。
2. 文件系统异常。
3. IPC请求超时。

MediaLibrary_ImageFileType

enum MediaLibrary_ImageFileType

描述 图像文件类型的枚举。

起始版本: 12

枚举值 描述
MEDIA_LIBRARY_IMAGE_JPEG JPEG类型。

MediaLibrary_MediaContentType

enum MediaLibrary_MediaContentType

描述 媒体内容类型的枚举。

起始版本: 12

枚举值 描述
MEDIA_LIBRARY_COMPRESSED 压缩媒体内容类型。
MEDIA_LIBRARY_PICTURE_OBJECT 图片对象媒体内容类型。

MediaLibrary_MediaQuality

enum MediaLibrary_MediaQuality

描述 媒体资源质量枚举。

此枚举与请求媒体资源时定义的分发模式有关。

  • 快速分发:不考虑资源质量,直接基于现有资源返回。

  • 高质量分发:返回高质量资源,若没有,则触发生成高质量资源,成功后才返回。

  • 均衡分发:若存在高质量资源,则直接返回高质量资源。 否则,先返回低质量资源,并触发生成高质量资源,成功后再返回一次高质量资源。

起始版本: 12

枚举值 描述
MEDIA_LIBRARY_QUALITY_FAST 不考虑资源质量,直接返回的现有资源。
MEDIA_LIBRARY_QUALITY_FULL 高质量资源。

MediaLibrary_MediaSubType

enum MediaLibrary_MediaSubType

描述 媒体资源子类型的枚举。

起始版本: 12

枚举值 描述
MEDIA_LIBRARY_DEFAULT 默认照片类型。
MEDIA_LIBRARY_MOVING_PHOTO 动态照片类型。
MEDIA_LIBRARY_BURST 连拍照片类型。

MediaLibrary_MediaType

enum MediaLibrary_MediaType

描述 媒体类型的枚举。

起始版本: 12

枚举值 描述
MEDIA_LIBRARY_IMAGE 图像资产。
MEDIA_LIBRARY_VIDEO 视频资产。

MediaLibrary_ResourceType

enum MediaLibrary_ResourceType

描述 资源类型的枚举。

起始版本: 12

枚举值 描述
MEDIA_LIBRARY_IMAGE_RESOURCE 图像资源。
MEDIA_LIBRARY_VIDEO_RESOURCE 视频资源。

函数说明

OH_MediaAccessHelper_ApplyChanges()

MediaLibrary_ErrorCode OH_MediaAccessHelper_ApplyChanges(OH_MediaAssetChangeRequest* changeRequest)

描述 发起应用资产或相册的更改请求。

起始版本: 12

参数:

名称 描述
changeRequest 变更请求实例OH_MediaAssetChangeRequest

需要权限:

ohos.permission.WRITE_IMAGEVIDEO

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_PERMISSION_DENIED:没有权限。

  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetDateAdded()

ediaLibrary_ErrorCode OH_MediaAsset_GetDateAdded(OH_MediaAsset* mediaAsset, uint32_t* dateAdded)

描述 获取资产添加日期。

起始版本: 13

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
dateAdded 资产添加日期。该值是添加文件时间距1970年1月1日的秒数值。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetDateAddedMs()

MediaLibrary_ErrorCode OH_MediaAsset_GetDateAddedMs(OH_MediaAsset* mediaAsset, uint32_t* dateAddedMs)

描述 获取资产的添加时间(毫秒)。

起始版本: 13

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
dateAddedMs 资产的添加时间(毫秒)。 该值是添加文件时间距1970年1月1日的毫秒数值。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetDateModified()

MediaLibrary_ErrorCode OH_MediaAsset_GetDateModified(OH_MediaAsset* mediaAsset, uint32_t* dateModified)

描述 获取资产的修改日期。

起始版本: 13

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
dateModified 资产的修改日期。该值是修改文件时间距1970年1月1日的秒数值,修改文件名不会改变此值,当文件内容发生修改时才会更新。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetDateModifiedMs()

MediaLibrary_ErrorCode OH_MediaAsset_GetDateModifiedMs(OH_MediaAsset* mediaAsset, uint32_t* dateModifiedMs)

描述 获取资产的修改时间(毫秒)。

起始版本: 12

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
dateModifiedMs 资产的修改时间(毫秒)。该值是修改文件时间距1970年1月1日的毫秒数值,修改文件名不会改变此值,当文件内容发生修改时才会更新。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetDateTaken()

MediaLibrary_ErrorCode OH_MediaAsset_GetDateTaken(OH_MediaAsset* mediaAsset, uint32_t* dateTaken)

描述 获取资产的拍摄日期。

起始版本: 13

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
dateTaken 资产的拍摄日期。该值是文件拍照时间距1970年1月1日的秒数值。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetDisplayName()

MediaLibrary_ErrorCode OH_MediaAsset_GetDisplayName(OH_MediaAsset* mediaAsset, const char** displayName)

描述 获取媒体资源的显示名称。

起始版本: 12

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
displayName 媒体资源的显示名称。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetDuration()

MediaLibrary_ErrorCode OH_MediaAsset_GetDuration(OH_MediaAsset* mediaAsset, uint32_t* duration)

描述 获取媒体资源的持续时间(毫秒)。

起始版本: 13

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
duration 媒体资源的持续时间(毫秒)。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetHeight()

MediaLibrary_ErrorCode OH_MediaAsset_GetHeight(OH_MediaAsset* mediaAsset, uint32_t* height)

描述 获取媒体资源的图像高度(像素)。

起始版本: 12

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
height 媒体资源的图像高度(像素)。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetMediaSubType()

MediaLibrary_ErrorCode OH_MediaAsset_GetMediaSubType(OH_MediaAsset* mediaAsset, MediaLibrary_MediaSubType* mediaSubType)

描述 获取媒体资源子类型。

起始版本: 13

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
mediaSubType 媒体资源子类型。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetMediaType()

MediaLibrary_ErrorCode OH_MediaAsset_GetMediaType(OH_MediaAsset* mediaAsset, MediaLibrary_MediaType* mediaType)

描述 获取媒体资源类型。

起始版本: 13

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
mediaType 媒体资源类型。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetOrientation()

MediaLibrary_ErrorCode OH_MediaAsset_GetOrientation(OH_MediaAsset* mediaAsset, uint32_t* orientation)

描述 获取图像的旋转角度,单位为度。

起始版本: 12

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
orientation 图像的旋转角度,单位为度。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetSize()

MediaLibrary_ErrorCode OH_MediaAsset_GetSize(OH_MediaAsset* mediaAsset, uint32_t* size)

描述 获取媒体资产的文件大小。

起始版本: 12

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
size 媒体资源的文件大小(以字节为单位)。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetTitle()

MediaLibrary_ErrorCode OH_MediaAsset_GetTitle(OH_MediaAsset* mediaAsset, const char** title)

描述 获取媒体资产的标题。

起始版本: 13

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
title 媒体资产的标题。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetUri()

MediaLibrary_ErrorCode OH_MediaAsset_GetUri(OH_MediaAsset* mediaAsset, const char** uri)

描述 获取媒体资产的uri。

起始版本: 12

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
uri 媒体资产的uri。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_GetWidth()

MediaLibrary_ErrorCode OH_MediaAsset_GetWidth(OH_MediaAsset* mediaAsset, uint32_t* width)

描述 获取媒体资源的图像宽度(像素)。

起始版本: 12

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
width 媒体资源的图像宽度(像素)。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_IsFavorite()

MediaLibrary_ErrorCode OH_MediaAsset_IsFavorite(OH_MediaAsset* mediaAsset, uint32_t* favorite)

描述 获取资产的收藏状态。

起始版本: 13

参数:

名称 描述
mediaAsset OH_MediaAsset实例。
favorite 资产的收藏状态。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAsset_Release()

MediaLibrary_ErrorCode OH_MediaAsset_Release(OH_MediaAsset* mediaAsset)

描述 释放媒体资产

起始版本: 12

参数:

名称 描述
mediaAsset OH_MediaAsset实例。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAssetChangeRequest_AddResourceWithBuffer()

MediaLibrary_ErrorCode OH_MediaAssetChangeRequest_AddResourceWithBuffer(OH_MediaAssetChangeRequest* changeRequest, MediaLibrary_ResourceType resourceType, uint8_t* buffer, uint32_t length)

描述 通过ArrayBuffer数据添加资源。

起始版本: 12

参数:

名称 描述
changeRequest OH_MediaAssetChangeRequest实例。
resourceType 要添加的资源的MediaLibrary_ResourceType
buffer 要添加的数据缓冲区。
length 数据缓冲区的长度。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAssetChangeRequest_AddResourceWithUri()

MediaLibrary_ErrorCode OH_MediaAssetChangeRequest_AddResourceWithUri(OH_MediaAssetChangeRequest* changeRequest, MediaLibrary_ResourceType resourceType, char* fileUri)

描述 通过文件uri添加资源。

起始版本: 13

参数:

名称 描述
changeRequest OH_MediaAssetChangeRequest实例。
resourceType 要添加的资源的MediaLibrary_ResourceType
fileUri 文件uri。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_NO_SUCH_FILE:文件不存在。

  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

  • MEDIA_LIBRARY_OPERATION_NOT_SUPPORTED:不支持该操作。

OH_MediaAssetChangeRequest_Create()

OH_MediaAssetChangeRequest* OH_MediaAssetChangeRequest_Create(OH_MediaAsset* mediaAsset)

描述 创建OH_MediaAssetChangeRequest实例。

起始版本: 12

参数:

名称 描述
mediaAsset OH_MediaAsset实例。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAssetChangeRequest_DiscardCameraPhoto()

MediaLibrary_ErrorCode OH_MediaAssetChangeRequest_DiscardCameraPhoto(OH_MediaAssetChangeRequest* changeRequest)

描述 丢弃相机拍摄的照片资源。

起始版本: 12

参数:

名称 描述
changeRequest OH_MediaAssetChangeRequest实例。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

  • MEDIA_LIBRARY_OPERATION_NOT_SUPPORTED:不支持该操作。

OH_MediaAssetChangeRequest_GetWriteCacheHandler()

MediaLibrary_ErrorCode OH_MediaAssetChangeRequest_GetWriteCacheHandler(OH_MediaAssetChangeRequest* changeRequest, int32_t* fd)

描述 获取临时文件写句柄。

起始版本: 13

参数:

名称 描述
changeRequest OH_MediaAssetChangeRequest实例。
fd 临时文件写句柄。

需要权限:

ohos.permission.WRITE_IMAGEVIDEO

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

  • MEDIA_LIBRARY_PERMISSION_DENIED:没有权限。

  • MEDIA_LIBRARY_OPERATION_NOT_SUPPORTED:不支持该操作。

OH_MediaAssetChangeRequest_Release()

MediaLibrary_ErrorCode OH_MediaAssetChangeRequest_Release(OH_MediaAssetChangeRequest* changeRequest)

描述 释放OH_MediaAssetChangeRequest实例。

起始版本: 12

参数:

名称 描述
changeRequest OH_MediaAssetChangeRequest实例。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。

OH_MediaAssetChangeRequest_SaveCameraPhoto()

MediaLibrary_ErrorCode OH_MediaAssetChangeRequest_SaveCameraPhoto(OH_MediaAssetChangeRequest* changeRequest, MediaLibrary_ImageFileType imageFileType)

描述 保存相机拍摄的照片资源。

起始版本: 12

参数:

名称 描述
changeRequest OH_MediaAssetChangeRequest实例。
imageFileType 要保存的照片的MediaLibrary_ImageFileType

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

  • MEDIA_LIBRARY_OPERATION_NOT_SUPPORTED:不支持该操作。

OH_MediaAssetManager_CancelRequest()

bool OH_MediaAssetManager_CancelRequest(OH_MediaAssetManager* manager, const MediaLibrary_RequestId requestId)

描述 通过请求Id取消请求。

起始版本: 12

参数:

名称 描述
manager 指向OH_MediaAssetManager实例的指针。
requestId 待取消的请求Id。

需要权限:

ohos.permission.READ_IMAGEVIDEO

返回:

如果请求成功取消,则返回true;否则返回false。

OH_MediaAssetManager_Create()

OH_MediaAssetManager* OH_MediaAssetManager_Create(void)

描述 创建一个媒体资产管理器。

起始版本: 12

返回:

返回一个指向OH_MediaAssetManager实例的指针。

OH_MediaAssetManager_Release()

MediaLibrary_ErrorCode OH_MediaAssetManager_Release(OH_MediaAssetManager* manager)

描述 释放OH_MediaAssetManager实例。

起始版本: 13

参数:

名称 描述
manager 要释放的OH_MediaAssetManager实例。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。

OH_MediaAssetManager_RequestImage()

MediaLibrary_ErrorCode OH_MediaAssetManager_RequestImage(OH_MediaAssetManager* manager, OH_MediaAsset* mediaAsset, MediaLibrary_RequestOptions requestOptions, MediaLibrary_RequestId* requestId, OH_MediaLibrary_OnImageDataPrepared callback)

描述 根据不同的策略模式请求图像资源。

起始版本: 12

参数:

名称 描述
manager OH_MediaAssetManager实例指针。
mediaAsset 要请求的媒体文件对象的OH_MediaAsset实例。
requestOptions 用于图像请求策略模式的MediaLibrary_RequestOptions
requestId 请求的MediaLibrary_RequestId,出参。
callback 当请求的图像源准备就绪时调用OH_MediaLibrary_OnImageDataPrepared

需要权限:

ohos.permission.READ_IMAGEVIDEO

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_OPERATION_NOT_SUPPORTED:不支持该操作。

  • MEDIA_LIBRARY_PERMISSION_DENIED:没有权限。

  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAssetManager_RequestImageForPath()

MediaLibrary_RequestId OH_MediaAssetManager_RequestImageForPath(OH_MediaAssetManager* manager, const char* uri, MediaLibrary_RequestOptions requestOptions, const char* destPath, OH_MediaLibrary_OnDataPrepared callback)

描述 请求具有目标路径的图像资源。

起始版本: 12

参数:

名称 描述
manager 指向OH_MediaAssetManager实例的指针。
uri 请求的图像资源的uri。
requestOptions 请求策略模式配置项。
destPath 请求资源的目标地址。
callback 媒体资源处理器,当所请求的媒体资源准备完成时会触发回调。

需要权限:

ohos.permission.READ_IMAGEVIDEO

返回:

返回请求Id。

OH_MediaAssetManager_RequestMovingPhoto()

MediaLibrary_ErrorCode OH_MediaAssetManager_RequestMovingPhoto(OH_MediaAssetManager* manager, OH_MediaAsset* mediaAsset, MediaLibrary_RequestOptions requestOptions, MediaLibrary_RequestId* requestId, OH_MediaLibrary_OnMovingPhotoDataPrepared callback)

描述 根据不同的策略模式请求动态照片资源。

起始版本: 13

参数:

名称 描述
manager OH_MediaAssetManager实例指针。
mediaAsset 要请求的媒体文件对象的OH_MediaAsset实例。
requestOptions 用于图像请求策略模式的MediaLibrary_RequestOptions
requestId 请求的MediaLibrary_RequestId,出参。
callback 当请求的动态照片准备就绪时调用OH_MediaLibrary_OnMovingPhotoDataPrepared

需要权限:

ohos.permission.READ_IMAGEVIDEO

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_OPERATION_NOT_SUPPORTED:不支持该操作。

  • MEDIA_LIBRARY_PERMISSION_DENIED:没有权限。

  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MediaAssetManager_RequestVideoForPath()

MediaLibrary_RequestId OH_MediaAssetManager_RequestVideoForPath(OH_MediaAssetManager* manager, const char* uri, MediaLibrary_RequestOptions requestOptions, const char* destPath, OH_MediaLibrary_OnDataPrepared callback)

描述 请求具有目标路径的视频资源。

起始版本: 12

参数:

名称 描述
manager 指向OH_MediaAssetManager实例的指针。
uri 请求的视频资源的uri。
requestOptions 请求策略模式配置项。
destPath 请求资源的目标地址。
callback 媒体资源处理器,当所请求的媒体资源准备完成时会触发回调。

需要权限:

ohos.permission.READ_IMAGEVIDEO

返回:

返回请求Id。

OH_MovingPhoto_GetUri()

MediaLibrary_ErrorCode OH_MovingPhoto_GetUri(OH_MovingPhoto* movingPhoto, const char** uri)

描述 获取动态照片的uri。

起始版本: 13

参数:

名称 描述
movingPhoto OH_MovingPhoto实例。
uri 动态照片的uri。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MovingPhoto_Release()

MediaLibrary_ErrorCode OH_MovingPhoto_Release(OH_MovingPhoto* movingPhoto)

描述 Release OH_MovingPhoto实例。

起始版本: 13

参数:

名称 描述
movingPhoto 要释放的OH_MovingPhoto实例。

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。

OH_MovingPhoto_RequestContentWithBuffer()

MediaLibrary_ErrorCode OH_MovingPhoto_RequestContentWithBuffer(OH_MovingPhoto* movingPhoto, MediaLibrary_ResourceType resourceType, const uint8_t** buffer, uint32_t* size)

描述 请求指定资源类型的动态照片内容,以ArrayBuffer的形式返回。

起始版本: 13

参数:

名称 描述
movingPhoto OH_MovingPhoto实例。
resourceType 指定的资源类型MediaLibrary_ResourceType
buffer 保存目标文件数据的缓冲区。
size 缓冲区的大小。

需要权限:

ohos.permission.READ_IMAGEVIDEO

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_PERMISSION_DENIED:没有权限。

  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MovingPhoto_RequestContentWithUri()

MediaLibrary_ErrorCode OH_MovingPhoto_RequestContentWithUri(OH_MovingPhoto* movingPhoto, MediaLibrary_ResourceType resourceType, char* uri)

描述 请求指定资源类型的动态照片内容,并写入参数指定的uri中。

起始版本: 13

参数:

名称 描述
movingPhoto OH_MovingPhoto实例。
resourceType 指定的资源类型MediaLibrary_ResourceType
uri 保存数据的目标文件uri。

需要权限:

ohos.permission.READ_IMAGEVIDEO

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_PERMISSION_DENIED:没有权限。

  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。

OH_MovingPhoto_RequestContentWithUris()

MediaLibrary_ErrorCode OH_MovingPhoto_RequestContentWithUris(OH_MovingPhoto* movingPhoto, char* imageUri, char* videoUri)

描述 同时请求动态照片的图片内容和视频内容,并写入参数指定的对应的uri中。

起始版本: 13

参数:

名称 描述
movingPhoto OH_MovingPhoto实例。
imageUri 用于保存图像数据的目标文件uri。
videoUri 用于保存视频数据的目标文件uri。

需要权限:

ohos.permission.READ_IMAGEVIDEO

返回:

错误码MediaLibrary_ErrorCode

  • MEDIA_LIBRARY_OK:方法调用成功。

  • MEDIA_LIBRARY_PARAMETER_ERROR:参数错误。 可能的原因:

    1. 未指定强制参数。
    2. 参数类型不正确。
    3. 参数验证失败。
  • MEDIA_LIBRARY_PERMISSION_DENIED:没有权限。

  • MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR:内部系统错误。