harmony 鸿蒙Pasteboard

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

Pasteboard

概述

系统剪贴板支持复制和粘贴多种类型的数据。可以使用此模块接口操作纯文本、HTML、URI、像素图片等类型的数据。

起始版本: 13

汇总

文件

名称 描述
oh_pasteboard.h 提供访问系统剪贴板的接口、数据结构、枚举类型。
oh_pasteboard_err_code.h 声明剪贴板框架错误码信息。

类型定义

名称 描述
typedef enum Pasteboard_NotifyType Pasteboard_NotifyType 剪贴板的数据变更类型。
typedef void(* Pasteboard_Notify) (void *context, Pasteboard_NotifyType type) 定义剪贴板内容变更时触发的回调函数。
typedef void(* Pasteboard_Finalize) (void *context) 定义用于释放上下文的回调函数,剪贴板数据变更观察者对象销毁时触发。
typedef struct OH_PasteboardObserver OH_PasteboardObserver 定义剪贴板数据变更观察者。
typedef struct OH_Pasteboard OH_Pasteboard 定义剪贴板对象,用以操作系统剪贴板。
typedef enum PASTEBOARD_ErrCode PASTEBOARD_ErrCode 错误码信息。
typedef enum Pasteboard_FileConflictOptions Pasteboard_FileConflictOptions 定义文件拷贝冲突时的选项。
typedef enum Pasteboard_ProgressIndicator Pasteboard_ProgressIndicator 定义进度条指示选项,可选择是否采用系统默认进度显示。
typedef struct Pasteboard_ProgressInfo Pasteboard_ProgressInfo 定义进度上报的数据结构。且仅当进度指示选项Pasteboard_ProgressIndicator设置为PASTEBOARD_NONE时才会上报此信息。
typedef void (* OH_Pasteboard_ProgressListener)(Pasteboard_ProgressInfo* progressInfo) 定义获取进度数据的回调函数,当选择不使用系统默认进度显示时,可设置该项获取粘贴过程的进度。
typedef struct Pasteboard_GetDataParams Pasteboard_GetDataParams 获取剪贴板数据支持进度提示时需要设置的参数,包含进度条指示选项、目标文件路径、文件冲突选项等。

枚举

名称 描述
Pasteboard_NotifyType { NOTIFY_LOCAL_DATA_CHANGE = 1, NOTIFY_REMOTE_DATA_CHANGE = 2 } 剪贴板的数据变更类型。
PASTEBOARD_ErrCode {
ERR_OK = 0, ERR_PERMISSION_ERROR = 201, ERR_INVALID_PARAMETER = 401, ERR_DEVICE_NOT_SUPPORTED = 801,
ERR_INNER_ERROR = 12900000, ERR_BUSY = 12900003, ERR_PASTEBOARD_COPY_FILE_ERROR = 12900007, ERR_PASTEBOARD_PROGRESS_START_ERROR = 12900008, ERR_PASTEBOARD_PROGRESS_ABNORMAL = 12900009, ERR_PASTEBOARD_GET_DATA_FAILED = 12900010, ERR_BUSY_PROCESSING = 27787277, ERR_COPY_FORBIDDEN = 27787278
}
错误码信息。
Pasteboard_FileConflictOptions { PASTEBOARD_OVERWRITE = 0, PASTEBOARD_SKIP = 1} 拷贝文件文件冲突时的选项。
Pasteboard_ProgressIndicator { PASTEBOARD_NONE = 0, PASTEBOARD_DEFAULT = 1 } 从剪贴板获取数据时的进度条类型。

函数

名称 描述
OH_PasteboardObserver * OH_PasteboardObserver_Create () 创建一个剪贴板数据变更观察者OH_PasteboardObserver指针及实例对象。
int OH_PasteboardObserver_Destroy (OH_PasteboardObserver *observer) 销毁剪贴板数据变更观察者OH_PasteboardObserver指针指向的实例对象。
int OH_PasteboardObserver_SetData (OH_PasteboardObserver *observer, void *context, const Pasteboard_Notify callback, const Pasteboard_Finalize finalize) 向剪贴板数据变更观察者设置回调函数。
OH_Pasteboard * OH_Pasteboard_Create () 创建剪贴板OH_Pasteboard指针及实例对象。
void OH_Pasteboard_Destroy (OH_Pasteboard *pasteboard) 销毁剪贴板OH_Pasteboard实例对象。
int OH_Pasteboard_Subscribe (OH_Pasteboard *pasteboard, int type, const OH_PasteboardObserver *observer) 订阅剪贴板的数据变更事件。
int OH_Pasteboard_Unsubscribe (OH_Pasteboard *pasteboard, int type, const OH_PasteboardObserver *observer) 取消对剪贴板数据变更事件的订阅。
bool OH_Pasteboard_IsRemoteData (OH_Pasteboard *pasteboard) 判断剪贴板中的数据是否来自远端设备。
int OH_Pasteboard_GetDataSource (OH_Pasteboard *pasteboard, char *source, unsigned int len) 获取剪贴板中数据的数据源。
bool OH_Pasteboard_HasType (OH_Pasteboard *pasteboard, const char *type) 判断剪贴板中是否有指定类型的数据。
bool OH_Pasteboard_HasData (OH_Pasteboard *pasteboard) 判断剪贴板中是否有数据。
OH_UdmfData * OH_Pasteboard_GetData (OH_Pasteboard *pasteboard, int *status) 获取剪贴板中的数据。
int OH_Pasteboard_SetData (OH_Pasteboard *pasteboard, OH_UdmfData *data) 将统一数据对象数据写入剪贴板。
int OH_Pasteboard_ClearData (OH_Pasteboard *pasteboard) 清空剪贴板中的数据。
char ** OH_Pasteboard_GetMimeTypes (OH_Pasteboard *pasteboard, unsigned int *count) 获取剪贴板中的MIME类型。
Pasteboard_GetDataParams *OH_Pasteboard_GetDataParams_Create(void) 创建剪贴板Pasteboard_GetDataParams指针及实例对象。
void OH_Pasteboard_GetDataParams_Destroy(Pasteboard_GetDataParams* params) 销毁剪贴板Pasteboard_GetDataParams实例对象。
void OH_Pasteboard_GetDataParams_SetProgressIndicator(Pasteboard_GetDataParams* params, Pasteboard_ProgressIndicator progressIndicator) 向剪贴板Pasteboard_GetDataParams设置进度条指示选项,可选择是否采用系统默认进度显示。
void OH_Pasteboard_GetDataParams_SetDestUri(Pasteboard_GetDataParams* params, const char* destUri, uint32_t destUriLen) 向剪贴板Pasteboard_GetDataParams设置目标路径。
void OH_Pasteboard_GetDataParams_SetFileConflictOptions(Pasteboard_GetDataParams* params, Pasteboard_FileConflictOptions option) 向剪贴板Pasteboard_GetDataParams设置文件拷贝冲突选项。
void OH_Pasteboard_GetDataParams_SetProgressListener(Pasteboard_GetDataParams* params, const OH_Pasteboard_ProgressListener listener) 向剪贴板Pasteboard_GetDataParams设置进度上报回调函数。
int OH_Pasteboard_ProgressInfo_GetProgress(Pasteboard_ProgressInfo* progressInfo) 通过Pasteboard_ProgressInfo获取粘贴进度。
void OH_Pasteboard_ProgressCancel(Pasteboard_GetDataParams* params) 通过Pasteboard_GetDataParams取消正在进行的拷贝粘贴任务。
OH_UdmfData* OH_Pasteboard_GetDataWithProgress(OH_Pasteboard* pasteboard, Pasteboard_GetDataParams* params, int* status) 获取剪贴板的数据以及粘贴进度,不支持对文件夹的拷贝。
uint32_t OH_Pasteboard_GetChangeCount (OH_Pasteboard *pasteboard) 获取剪贴板内容的变化次数。

类型定义说明

OH_Pasteboard

typedef struct OH_Pasteboard OH_Pasteboard

描述:

定义剪贴板对象,用以操作系统剪贴板。

起始版本: 13

OH_PasteboardObserver

typedef struct OH_PasteboardObserver OH_PasteboardObserver

描述:

定义剪贴板数据变更观察者。

起始版本: 13

PASTEBOARD_ErrCode

typedef enum PASTEBOARD_ErrCode PASTEBOARD_ErrCode

描述:

错误码信息。

起始版本: 13

Pasteboard_Finalize

typedef void(* Pasteboard_Finalize) (void *context)

描述:

定义用于释放上下文的回调函数,剪贴板数据变更观察者对象销毁时触发。

起始版本: 13

参数:

名称 描述
context 要释放的上下文指针。

Pasteboard_Notify

typedef void(* Pasteboard_Notify) (void *context, Pasteboard_NotifyType type)

描述:

定义剪贴板内容变更时触发的回调函数。

起始版本: 13

参数:

名称 描述
context 上下文信息,由函数OH_PasteboardObserver_SetData传入。
type 数据变更的类型。详见:Pasteboard_NotifyType

Pasteboard_NotifyType

typedef enum Pasteboard_NotifyType Pasteboard_NotifyType

描述:

剪贴板的数据变更类型。

起始版本: 13

Pasteboard_FileConflictOptions

typedef enum Pasteboard_FileConflictOptions Pasteboard_FileConflictOptions

描述:

定义文件拷贝冲突时的选项,默认为PASTEBOARD_OVERWRITE。

起始版本: 15

Pasteboard_ProgressIndicator

typedef enum Pasteboard_ProgressIndicator Pasteboard_ProgressIndicator

描述:

定义进度条指示选项,可选择是否采用系统默认进度显示。

起始版本: 15

Pasteboard_ProgressInfo

typedef struct Pasteboard_ProgressInfo Pasteboard_ProgressInfo

描述:

定义进度上报的数据结构,且仅当进度指示选项Pasteboard_ProgressIndicator设置为NONE时才会上报此信息。

起始版本: 15

OH_Pasteboard_ProgressListener

typedef void (*OH_Pasteboard_ProgressListener)(Pasteboard_ProgressInfo* progressInfo);

描述:

用于在不使用系统默认进度显示时,通知应用拷贝粘贴任务进度。

起始版本: 15

参数:

名称 类型 描述
progressInfo Pasteboard_ProgressInfo 定义进度上报的数据结构,且仅当进度指示选项Pasteboard_ProgressIndicator设置为NONE时才会上报此信息。

Pasteboard_GetDataParams

typedef struct Pasteboard_GetDataParams Pasteboard_GetDataParams;

描述:

获取剪贴板数据支持进度提示时需要设置的参数,包含进度条指示选项、目标文件路径、文件冲突选项等。

起始版本: 15

枚举类型说明

PASTEBOARD_ErrCode

enum PASTEBOARD_ErrCode

描述:

错误码信息。

起始版本: 13

枚举值 描述
ERR_OK 执行成功。
ERR_PERMISSION_ERROR 权限校验失败。
ERR_INVALID_PARAMETER 非法参数。
ERR_DEVICE_NOT_SUPPORTED 设备能力不支持。
ERR_INNER_ERROR 内部错误。
ERR_BUSY 系统忙。
ERR_PASTEBOARD_COPY_FILE_ERROR 文件拷贝失败。
ERR_PASTEBOARD_PROGRESS_START_ERROR 当应用使用系统提供的进度条时,创建进度条失败。
ERR_PASTEBOARD_PROGRESS_ABNORMAL 当应用不使用剪贴板提供的进度条时,进度上报异常。
ERR_PASTEBOARD_GET_DATA_FAILED 获取粘贴数据失败。

Pasteboard_NotifyType

enum Pasteboard_NotifyType

描述:

剪贴板的数据变更类型。

起始版本: 13

枚举值 描述
NOTIFY_LOCAL_DATA_CHANGE 本地设备剪贴板数据变更。
NOTIFY_REMOTE_DATA_CHANGE 组网内的非本地设备剪贴板数据变更。

Pasteboard_FileConflictOptions

enum Pasteboard_FileConflictOptions

描述:

定义拷贝文件冲突时的选项。

起始版本: 15

枚举值 描述
PASTEBOARD_OVERWRITE 目标路径存在同文件名时覆盖。
PASTEBOARD_SKIP 目标路径存在同文件名时跳过,若设置SKIP,应用获取到的粘贴数据不包含跳过文件。

Pasteboard_ProgressIndicator

enum Pasteboard_ProgressIndicator

描述:

定义进度条指示选项,可选择是否采用系统默认进度显示。

起始版本: 15

枚举值 描述
PASTEBOARD_NONE 不采用系统默认进度显示。
PASTEBOARD_DEFAULT 采用系统默认进度显示。

函数说明

OH_Pasteboard_ClearData()

int OH_Pasteboard_ClearData (OH_Pasteboard * pasteboard)

描述:

清空剪贴板中的数据。

起始版本: 13

参数:

名称 描述
pasteboard 表示指向剪贴板OH_Pasteboard实例的指针。

返回:

返回执行的错误码。错误码定义详见PASTEBOARD_ErrCode。 若返回ERR_OK,表示指向成功。 若返回ERR_INVALID_PARAMETER,表示传入了无效参数。

参见:

OH_Pasteboard

PASTEBOARD_ErrCode

OH_Pasteboard_Create()

OH_Pasteboard* OH_Pasteboard_Create ()

描述:

创建剪贴板OH_Pasteboard指针及实例对象。

起始版本: 13

返回:

执行成功则返回一个指向剪贴板OH_Pasteboard实例对象的指针,否则返回nullptr。

参见:

OH_Pasteboard

OH_Pasteboard_Destroy()

void OH_Pasteboard_Destroy (OH_Pasteboard * pasteboard)

描述:

销毁剪贴板OH_Pasteboard实例对象。

起始版本: 13

参数:

名称 描述
pasteboard 表示指向剪贴板OH_Pasteboard实例的指针。

参见:

OH_Pasteboard

OH_Pasteboard_GetData()

OH_UdmfData* OH_Pasteboard_GetData (OH_Pasteboard * pasteboard, int * status )

描述:

获取剪贴板中的数据。

起始版本: 13

参数:

名称 描述
pasteboard 表示指向剪贴板OH_Pasteboard实例的指针。
status 该参数是输出参数,表示执行的错误码。错误码定义详见PASTEBOARD_ErrCode

返回:

执行成功时返回统一数据对象OH_UdmfData实例的指针。否则返回空指针。

参见:

OH_Pasteboard

OH_UdmfData

PASTEBOARD_ErrCode

OH_Pasteboard_GetDataSource()

int OH_Pasteboard_GetDataSource (OH_Pasteboard * pasteboard, char * source, unsigned int len )

描述:

获取剪贴板中数据的数据源。

起始版本: 13

参数:

名称 描述
pasteboard 表示指向剪贴板OH_Pasteboard实例的指针。
source 表示用于存放剪贴板数据数据源实例的指针,开发者需在调用接口前申请指针指向的内存。
len 表示source指针对应的内存长度,当内存长度不足时调用接口会失败,建议长度:128。

返回:

返回执行的错误码。错误码定义详见PASTEBOARD_ErrCode。 若返回ERR_OK,表示指向成功。 若返回ERR_INVALID_PARAMETER,表示传入了无效参数。

参见:

OH_Pasteboard

PASTEBOARD_ErrCode

OH_Pasteboard_HasData()

bool OH_Pasteboard_HasData (OH_Pasteboard * pasteboard)

描述:

判断剪贴板中是否有数据。

起始版本: 13

参数:

名称 描述
pasteboard 表示指向剪贴板OH_Pasteboard实例的指针。

返回:

返回剪贴板中是否有数据。返回true表示剪贴板中有数据,返回false表示剪贴板中没有数据。

参见:

OH_Pasteboard

OH_Pasteboard_HasType()

bool OH_Pasteboard_HasType (OH_Pasteboard * pasteboard, const char * type )

描述:

判断剪贴板中是否有指定类型的数据。

起始版本: 13

参数:

名称 描述
pasteboard 表示指向剪贴板OH_Pasteboard实例的指针。
type 表示要检查的数据类型。包含剪贴板基础数据类型与自定义数据类型,其中剪贴板基础数据类型有:"text/plain""text/html""text/uri""text/want""pixelMap"

返回:

返回剪贴板中是否有指定类型的数据。返回true表示剪贴板中包含指定类型的数据,返回false表示剪贴板中没有指定类型的数据。

示例:

OH_Pasteboard* pasteboard = OH_Pasteboard_Create();
bool hasType = OH_Pasteboard_HasType(pasteboard, "text/plain");
OH_Pasteboard_Destory(pasteboard);

参见:

OH_Pasteboard

OH_Pasteboard_IsRemoteData()

bool OH_Pasteboard_IsRemoteData (OH_Pasteboard * pasteboard)

描述:

判断剪贴板中的数据是否来自远端设备。

起始版本: 13

参数:

名称 描述
pasteboard 表示指向剪贴板OH_Pasteboard实例的指针。

返回:

返回剪贴板中的数据是否来自远端设备。返回true表示剪贴板中的数据来自远端设备,返回false表示剪贴板中数据来自本端设备。

参见:

OH_Pasteboard

OH_Pasteboard_SetData()

int OH_Pasteboard_SetData (OH_Pasteboard * pasteboard, OH_UdmfData * data )

描述:

将统一数据对象数据写入剪贴板。

起始版本: 13

参数:

名称 描述
pasteboard 表示指向剪贴板OH_Pasteboard实例的指针。
data 表示指向统一数据对象OH_UdmfData实例的指针。

返回:

返回执行的错误码。错误码定义详见PASTEBOARD_ErrCode。 若返回ERR_OK,表示指向成功。 若返回ERR_INVALID_PARAMETER,表示传入了无效参数。

参见:

OH_Pasteboard

OH_UdmfData

PASTEBOARD_ErrCode

OH_Pasteboard_Subscribe()

int OH_Pasteboard_Subscribe (OH_Pasteboard * pasteboard, int type, const OH_PasteboardObserver * observer )

描述:

订阅剪贴板的数据变更事件。

起始版本: 13

参数:

名称 描述
pasteboard 表示指向剪贴板OH_Pasteboard实例的指针。
type 表示订阅的剪贴板数据变更类型,详见:Pasteboard_NotifyType
observer 表示指向剪贴板数据变更观察者OH_PasteboardObserver实例的指针。 它指定了剪贴板数据变更时触发的回调函数,详见:OH_PasteboardObserver

返回:

返回执行的错误码。错误码定义详见PASTEBOARD_ErrCode。 若返回ERR_OK,表示指向成功。 若返回ERR_INVALID_PARAMETER,表示传入了无效参数。

参见:

OH_Pasteboard

OH_PasteboardObserver

Pasteboard_NotifyType

PASTEBOARD_ErrCode

OH_Pasteboard_Unsubscribe()

int OH_Pasteboard_Unsubscribe (OH_Pasteboard * pasteboard, int type, const OH_PasteboardObserver * observer )

描述:

取消对剪贴板数据变更事件的订阅。

起始版本: 13

参数:

名称 描述
pasteboard 表示指向剪贴板OH_Pasteboard实例的指针。
type 表示订阅的剪贴板数据变更类型,详见:Pasteboard_NotifyType
observer 表示指向剪贴板数据变更观察者OH_PasteboardObserver实例的指针。 它指定了剪贴板数据变更时触发的回调函数,详见:OH_PasteboardObserver

返回:

返回执行的错误码。错误码定义详见PASTEBOARD_ErrCode。 若返回ERR_OK,表示指向成功。 若返回ERR_INVALID_PARAMETER,表示传入了无效参数。

参见:

OH_Pasteboard

OH_PasteboardObserver

Pasteboard_NotifyType

PASTEBOARD_ErrCode

OH_PasteboardObserver_Create()

OH_PasteboardObserver* OH_PasteboardObserver_Create ()

描述:

创建一个剪贴板数据变更观察者OH_PasteboardObserver指针及实例对象。

起始版本: 13

返回:

执行成功时返回一个指向剪贴板数据变更观察者OH_PasteboardObserver实例对象的指针,否则返回空指针。 当不再需要使用指针时,请使用OH_PasteboardObserver_Destroy销毁实例对象,否则会导致内存泄漏。

参见:

OH_PasteboardObserver

OH_PasteboardObserver_Destroy()

int OH_PasteboardObserver_Destroy (OH_PasteboardObserver * observer)

描述:

销毁剪贴板数据变更观察者OH_PasteboardObserver指针指向的实例对象。

起始版本: 13

参数:

名称 描述
observer 表示指向剪贴板数据变更观察者OH_PasteboardObserver实例的指针。

返回:

返回执行的错误码。错误码定义详见PASTEBOARD_ErrCode。 若返回ERR_OK,表示指向成功。 若返回ERR_INVALID_PARAMETER,表示传入了无效参数。

参见:

OH_PasteboardObserver

PASTEBOARD_ErrCode

OH_PasteboardObserver_SetData()

int OH_PasteboardObserver_SetData (OH_PasteboardObserver * observer, void * context, const Pasteboard_Notify callback, const Pasteboard_Finalize finalize )

描述:

向剪贴板数据变更观察者设置回调函数。

起始版本: 13

参数:

名称 描述
observer 表示指向剪贴板数据变更观察者OH_PasteboardObserver实例的指针。
context 表示指向上下文数据的指针,将作为第一个参数传入Pasteboard_Notify
callback 表示数据变更回调函数。详见:Pasteboard_Notify
finalize 表示可选的回调函数,可以用于剪贴板数据变更观察者销毁时释放上下文数据。详见:Pasteboard_Finalize

返回:

返回执行的错误码。错误码定义详见PASTEBOARD_ErrCode。 若返回ERR_OK,表示指向成功。 若返回ERR_INVALID_PARAMETER,表示传入了无效参数。

参见:

OH_PasteboardObserver

Pasteboard_Notify

PASTEBOARD_ErrCode

OH_Pasteboard_GetMimeTypes()

char ** OH_Pasteboard_GetMimeTypes (OH_Pasteboard * pasteboard, unsigned int * count)

描述:

获取剪贴板中的MIME类型。

起始版本: 14

参数:

名称 描述
pasteboard 表示指向剪贴板OH_Pasteboard实例的指针。
count 该参数是输出参数,结果集中的类型数量会写入该变量。

返回:

执行成功时返回剪贴板所有内容的MIME类型,否则返回nullptr。

本接口返回对象的生命周期由入参对象pasteboard管理,应用调用OH_Pasteboard_Destroy销毁入参对象pasteboard时同步释放本接口返回的结果,不允许应用主动释放。

入参对象pasteboard只保存本接口最新返回的结果,接口历史调用获得的结果将失效。

参见:

OH_Pasteboard

OH_Pasteboard_GetDataParams_Create()

Pasteboard_GetDataParams *OH_Pasteboard_GetDataParams_Create(void);

描述:

创建剪贴板Pasteboard_GetDataParams指针及实例对象。

起始版本: 15

返回:

执行成功时返回一个指向剪贴板Pasteboard_GetDataParams实例对象的指针,否则返回空指针。 当不再需要使用指针时,请使用OH_Pasteboard_GetDataParams_Destroy销毁实例对象,否则会导致内存泄漏。

参见:

Pasteboard_GetDataParams

OH_Pasteboard_GetDataParams_Destroy()

void OH_Pasteboard_GetDataParams_Destroy(Pasteboard_GetDataParams* params)

描述:

销毁剪贴板Pasteboard_GetDataParams指针指向的实例对象。

起始版本: 15

参数:

名称 描述
params 表示指向剪贴板Pasteboard_GetDataParams实例的指针。

参见:

Pasteboard_GetDataParams

OH_Pasteboard_GetDataParams_SetProgressIndicator()

void OH_Pasteboard_GetDataParams_SetProgressIndicator(Pasteboard_GetDataParams* params,
    Pasteboard_ProgressIndicator progressIndicator)

描述:

向剪贴板Pasteboard_GetDataParams设置进度条指示选项,可选择是否采用系统默认进度显示。

起始版本: 15

参数:

名称 描述
params 表示指向上下文数据的指针。
progressIndicator 表示进度条指示选项,可选择是否采用系统默认进度显示。

参见:

Pasteboard_GetDataParams

Pasteboard_ProgressIndicator

OH_Pasteboard_GetDataParams_SetDestUri()

void OH_Pasteboard_GetDataParams_SetDestUri(Pasteboard_GetDataParams* params, const char* destUri, uint32_t destUriLen)

描述:

向剪贴板Pasteboard_GetDataParams设置拷贝文件时目标路径。若不支持文件处理,则不需要设置此参数;若应用涉及复杂文件处理策略或需要区分文件多路径存储,建议不设置此参数,由应用自行完成文件copy处理。

起始版本: 15

参数:

名称 描述
params 表示指向上下文数据的指针。
destUri 表示拷贝文件时的目标路径。
destUriLen 表示目标路径长度。

参见:

Pasteboard_GetDataParams

Pasteboard_ProgressIndicator

OH_Pasteboard_GetDataParams_SetFileConflictOptions()

void OH_Pasteboard_GetDataParams_SetFileConflictOptions(Pasteboard_GetDataParams* params,
    Pasteboard_FileConflictOptions option)

描述:

向剪贴板Pasteboard_GetDataParams设置文件拷贝冲突选项,默认为PASTEBOARD_OVERWRITE。

起始版本: 15

参数:

名称 描述
params 表示指向上下文数据的指针。
option 表示文件拷贝冲突时的选项,默认为PASTEBOARD_OVERWRITE。

参见:

Pasteboard_GetDataParams

Pasteboard_FileConflictOptions

OH_Pasteboard_GetDataParams_SetProgressListener()

void OH_Pasteboard_GetDataParams_SetProgressListener(Pasteboard_GetDataParams* params,
    const OH_Pasteboard_ProgressListener listener)

描述:

向剪贴板Pasteboard_GetDataParams设置进度上报回调函数。

起始版本: 15

参数:

名称 描述
params 表示指向上下文数据的指针。
listener 表示进度数据变化的订阅函数,当选择不使用系统默认进度显示时,可设置该项获取粘贴过程的进度。

参见:

Pasteboard_GetDataParams

OH_Pasteboard_ProgressListener

OH_Pasteboard_ProgressInfo_GetProgress()

int OH_Pasteboard_ProgressInfo_GetProgress(Pasteboard_ProgressInfo* progressInfo)

描述:

通过Pasteboard_ProgressInfo获取粘贴进度,且仅当进度指示选项Pasteboard_ProgressIndicator设置为PASTEBOARD_NONE时,才可以获取到此信息。

起始版本: 15

参数:

名称 描述
progressInfo 定义进度上报的数据结构,且仅当进度指示选项Pasteboard_ProgressIndicator设置为PASTEBOARD_NONE时才会上报此信息。

返回:

系统拷贝粘贴任务进度百分比。

参见:

Pasteboard_ProgressInfo

OH_Pasteboard_ProgressCancel()

void OH_Pasteboard_ProgressCancel(Pasteboard_GetDataParams* params);

描述:

通过Pasteboard_GetDataParams取消正在进行的拷贝粘贴任务,且仅当进度指示选项Pasteboard_ProgressIndicator设置为PASTEBOARD_NONE时此参数才有意义。

起始版本: 15

参数:

名称 描述
params 表示指向上下文数据的指针。

参见:

Pasteboard_GetDataParams

OH_Pasteboard_GetDataWithProgress()

OH_UdmfData* OH_Pasteboard_GetDataWithProgress(OH_Pasteboard* pasteboard, Pasteboard_GetDataParams* params, int* status);

描述:

获取剪贴板的内容和进度,不支持对文件夹的拷贝。

起始版本: 15

参数:

名称 描述
pasteboard 表示指向剪贴板OH_Pasteboard实例的指针。
params 应用在使用剪贴板提供的文件拷贝能力的情况下需要的参数。定义详见Pasteboard_GetDataParams
status 该参数是输出参数,表示执行的错误码。错误码定义详见PASTEBOARD_ErrCode

返回:

执行成功时返回统一数据对象OH_UdmfData实例的指针。否则返回空指针。

参见:

Pasteboard_GetDataParams

OH_Pasteboard_GetChangeCount()

uint32_t OH_Pasteboard_GetChangeCount(OH_Pasteboard *pasteboard);

描述:

获取剪贴板内容的变化次数。

当剪贴板内容过期或调用OH_Pasteboard_ClearData等接口导致剪贴板内容为空时,内容变化次数不会因此改变。

系统重启或剪贴板服务异常重启时,剪贴板内容变化次数重新从0开始计数。对同一内容连续多次复制会被视作多次更改,每次复制均会导致内容变化次数增加。

起始版本: 18

参数:

名称 描述
pasteboard 表示指向剪贴板OH_Pasteboard实例的指针。

返回:

执行成功时返回剪贴板内容的变化次数,否则返回0。

参见:

OH_Pasteboard

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Basic Services Kit(基础服务)

harmony 鸿蒙DeviceInfo

harmony 鸿蒙OH_Print

harmony 鸿蒙Print_Margin

harmony 鸿蒙Print_PageSize

harmony 鸿蒙Print_PrintAttributes

harmony 鸿蒙Print_PrintDocCallback

harmony 鸿蒙Print_Range

harmony 鸿蒙TimeService

harmony 鸿蒙ohscan.h

0  赞