已合并
docs: add cloud disk placeholder API documentation #159578
docs: add cloud disk placeholder API documentation #159578
已合并
tlbl创建于 8月7日
共 3 个文件变更+169-23
@@ -42,25 +42,33 @@ enum CloudDisk_ErrorCode
42 42 
43**起始版本:** 2143**起始版本:** 21
44 44 
45-| 枚举项 | 描述 | 处理建议 |45+| 枚举项 | 描述 |
46-| -- | -- | -- |46+| -- | -- |
47-| CLOUD_DISK_OK = 0 | 接口调用成功。 | 无需处理。 |47+| CLOUD_DISK_OK = 0 | 接口调用成功。 |
48-| CLOUD_DISK_PERMISSION_DENIED = 201 | 接口权限校验失败。 | 请检查应用是否已申请所需权限。 |48+| CLOUD_DISK_PERMISSION_DENIED = 201 | 接口权限校验失败。 |
49-| CLOUD_DISK_NOT_SUPPORTED = 801 | 当前设备不支持此功能。 | 请检查设备是否支持云盘管理相关系统能力。 |49+| CLOUD_DISK_NOT_SUPPORTED = 801 | 当前设备不支持此功能。 |
50-| CLOUD_DISK_INVALID_ARG = 34400001 | 输入参数无效。 | 请检查参数类型、取值范围和格式是否符合接口要求。 |50+| CLOUD_DISK_INVALID_ARG = 34400001 | 输入参数无效。 |
51-| CLOUD_DISK_SYNC_FOLDER_PATH_UNAUTHORIZED = 34400002 | 同步根路径未授权。同步根路径是指应用用于云同步的本地目录路径。 | 请检查同步根路径是否已获得授权。 |51+| CLOUD_DISK_SYNC_FOLDER_PATH_UNAUTHORIZED = 34400002 | 同步根路径未授权。同步根路径是指应用用于云同步的本地目录路径。 |
52-| CLOUD_DISK_IPC_FAILED = 34400003 | IPC连接失败。 | 请检查系统服务状态,或稍后重试。 |52+| CLOUD_DISK_IPC_FAILED = 34400003 | IPC连接失败。 |
53-| CLOUD_DISK_SYNC_FOLDER_LIMIT_EXCEEDED = 34400004 | 同步根路径数量超过允许的限制。 | 请检查并调整同步根路径数量。 |53+| CLOUD_DISK_SYNC_FOLDER_LIMIT_EXCEEDED = 34400004 | 同步根路径数量超过允许的限制。 |
54-| CLOUD_DISK_CONFLICT_THIS_APP = 34400005 | 同步根路径和该应用现有的同步根路径发生冲突。 | 请检查同步根路径是否重复或存在包含关系,调整后重试。 |54+| CLOUD_DISK_CONFLICT_THIS_APP = 34400005 | 同步根路径和该应用现有的同步根路径发生冲突。 |
55-| CLOUD_DISK_CONFLICT_OTHER_APP = 34400006 | 同步根路径和其他应用现有的同步根路径发生冲突。 | 请选择其他路径或检查是否需要协调其他应用的同步设置。 |55+| CLOUD_DISK_CONFLICT_OTHER_APP = 34400006 | 同步根路径和其他应用现有的同步根路径发生冲突。 |
56-| CLOUD_DISK_REGISTER_SYNC_FOLDER_FAILED = 34400007 | 同步根路径注册失败。 | 请检查路径是否有效、是否已授权、是否超限,修正后重试。 |56+| CLOUD_DISK_REGISTER_SYNC_FOLDER_FAILED = 34400007 | 同步根路径注册失败。 |
57-| CLOUD_DISK_SYNC_FOLDER_NOT_REGISTERED = 34400008 | 同步根路径未注册。 | 请先注册同步根路径后再执行相关操作。 |57+| CLOUD_DISK_SYNC_FOLDER_NOT_REGISTERED = 34400008 | 同步根路径未注册。 |
58-| CLOUD_DISK_UNREGISTER_SYNC_FOLDER_FAILED = 34400009 | 同步根路径取消注册失败。 | 请检查路径是否已注册、是否存在未完成的同步任务,处理后再试。 |58+| CLOUD_DISK_UNREGISTER_SYNC_FOLDER_FAILED = 34400009 | 同步根路径取消注册失败。 |
59-| CLOUD_DISK_SYNC_FOLDER_PATH_NOT_EXIST = 34400010 | 同步根路径不存在。 | 请检查路径是否正确,或先创建该路径。 |59+| CLOUD_DISK_SYNC_FOLDER_PATH_NOT_EXIST = 34400010 | 同步根路径不存在。 |
60-| CLOUD_DISK_LISTENER_NOT_REGISTERED = 34400011 | 变更监听器未注册。 | 请先注册变更监听器后再执行相关操作。 |60+| CLOUD_DISK_LISTENER_NOT_REGISTERED = 34400011 | 变更监听器未注册。 |
61-| CLOUD_DISK_LISTENER_ALREADY_REGISTERED = 34400012 | 变更监听器已注册。 | 请勿重复注册同一变更监听器。 |61+| CLOUD_DISK_LISTENER_ALREADY_REGISTERED = 34400012 | 变更监听器已注册。 |
62-| CLOUD_DISK_INVALID_CHANGE_SEQUENCE = 34400013 | 变更序列号无效或已过期,建议重新查询所有变更记录。 | 请重新发起全量变更查询。 |62+| CLOUD_DISK_INVALID_CHANGE_SEQUENCE = 34400013 | 变更序列号无效或已过期,建议重新查询所有变更记录。 |
63-| CLOUD_DISK_TRY_AGAIN = 34400014 | 临时失败,建议重试(如:底层I/O负载过大、内存不足等)。 | 请稍后重试。 |63+| CLOUD_DISK_TRY_AGAIN = 34400014 | 临时失败,建议重试(如:底层I/O负载过大、内存不足等)。 |
64-| CLOUD_DISK_NOT_ALLOWED = 34400015 | 当前设备不允许执行此功能。 | 请检查设备是否满足功能要求,如系统版本、硬件配置等。 |64+| CLOUD_DISK_NOT_ALLOWED = 34400015 | 当前设备不允许执行此功能。 |
65- 65+| OH_CLOUD_DISK_FILE_ALREADY_EXISTS = 34400016 | 目标路径下已存在同名文件。<br>**起始版本:** 26.1.0 |
66- 66+| OH_CLOUD_DISK_NOT_A_PLACEHOLDER = 34400017 | 目标路径不是占位符文件。<br>**起始版本:** 26.1.0 |
67+| OH_CLOUD_DISK_IS_A_PLACEHOLDER = 34400018 | 目标路径已经是占位符文件。<br>**起始版本:** 26.1.0 |
68+| OH_CLOUD_DISK_HYDRATE_IN_PROGRESS = 34400019 | 占位符文件正在水合中。<br>**起始版本:** 26.1.0 |
69+| OH_CLOUD_DISK_NO_SPACE_LEFT = 34400020 | 磁盘剩余空间不足。<br>**起始版本:** 26.1.0 |
70+| OH_CLOUD_DISK_CALLBACK_NOT_REGISTERED = 34400021 | 回调表没有注册。<br>**起始版本:** 26.1.0 |
71+| OH_CLOUD_DISK_CALLBACK_ALREADY_REGISTERED = 34400022 | 回调表已经注册。<br>**起始版本:** 26.1.0 |
72+| OH_CLOUD_DISK_NOT_A_DIRECTORY = 34400023 | 目标路径的父目录不是目录。<br>**起始版本:** 26.1.0 |
73+| OH_CLOUD_DISK_FILE_NOT_EXIST = 34400024 | 目标路径不存在。<br>**起始版本:** 26.1.0 |
74+| OH_CLOUD_DISK_NAME_TOO_LONG = 34400025 | 文件名或路径过长。<br>**起始版本:** 26.1.0 |
@@ -0,0 +1,31 @@
1+# OH_CloudDisk_PlaceholderInfo
2+<!--Kit: Core File Kit-->
3+<!--Subsystem: FileManagement-->
4+<!--Owner: @oh_create_jiawei-->
5+<!--Designer: @oh_create_jiawei-->
6+<!--Tester: @liuhonggang123-->
7+<!--Adviser: @jinqiuheng-->
8+ 
9+```c
10+typedef struct OH_CloudDisk_PlaceholderInfo {...} OH_CloudDisk_PlaceholderInfo
11+```
12+ 
13+## 概述
14+ 
15+占位符相关操作使用的文件元数据信息。
16+ 
17+**起始版本:** 26.1.0
18+ 
19+**相关模块:** [CloudDisk](capi-clouddisk.md)
20+ 
21+**所在头文件:** [oh_cloud_disk_manager.h](capi-oh-cloud-disk-manager-h.md)
22+ 
23+## 汇总
24+ 
25+### 成员变量
26+ 
27+| 名称 | 描述 |
28+| -- | -- |
29+| uint64_t logicalSize | 占位符文件的逻辑大小,表示其对应云端文件的大小,单位为字节。<br>**起始版本:** 26.1.0 |
30+| uint64_t atimeMs | 占位符文件对应云端文件的创建时间,单位为毫秒。<br>**起始版本:** 26.1.0 |
31+| uint64_t mtimeMs | 占位符文件对应云端文件的最后一次修改时间,单位为毫秒。<br>**起始版本:** 26.1.0 |
@@ -8,7 +8,7 @@
8 8 
9## 概述9## 概述
10 10 
11-云盘管理模块的接口定义,提供云盘同步根路径的注册、激活、监听和查询能力,支持监听文件变更、设置和查询文件同步状态,适用于需要在应用内实现云盘文件同步和变更监听的场景。11+云盘管理模块的接口定义,提供云盘同步根路径的注册、激活、监听和查询能力,支持监听文件变更、设置和查询文件同步状态,以及创建、判断、转换占位符文件和更新文件元数据,适用于需要在应用内实现云盘文件同步和变更监听的场景。
12 12 
13**引用文件:** `<filemanagement/clouddiskmanager/oh_cloud_disk_manager.h>`13**引用文件:** `<filemanagement/clouddiskmanager/oh_cloud_disk_manager.h>`
14 14 
@@ -34,6 +34,7 @@
34| [CloudDisk_ResultList](capi-clouddisk-clouddisk-resultlist.md) | CloudDisk_ResultList | 表示一个文件同步操作的结果,包含文件路径信息、操作结果、同步状态或失败原因。 |34| [CloudDisk_ResultList](capi-clouddisk-clouddisk-resultlist.md) | CloudDisk_ResultList | 表示一个文件同步操作的结果,包含文件路径信息、操作结果、同步状态或失败原因。 |
35| [CloudDisk_DisplayNameInfo](capi-clouddisk-clouddisk-displaynameinfo.md) | CloudDisk_DisplayNameInfo | 定义同步根路径的显示名称信息。 |35| [CloudDisk_DisplayNameInfo](capi-clouddisk-clouddisk-displaynameinfo.md) | CloudDisk_DisplayNameInfo | 定义同步根路径的显示名称信息。 |
36| [CloudDisk_SyncFolder](capi-clouddisk-clouddisk-syncfolder.md) | CloudDisk_SyncFolder | 同步根路径属性信息。 |36| [CloudDisk_SyncFolder](capi-clouddisk-clouddisk-syncfolder.md) | CloudDisk_SyncFolder | 同步根路径属性信息。 |
37+| [OH_CloudDisk_PlaceholderInfo](capi-clouddisk-oh-clouddisk-placeholderinfo.md) | OH_CloudDisk_PlaceholderInfo | 占位符相关操作使用的文件元数据信息。 |
37 38 
38### 枚举39### 枚举
39 40 
@@ -59,6 +60,10 @@
59| [CloudDisk_ErrorCode OH_CloudDisk_DeactiveSyncFolder(const CloudDisk_SyncFolderPath syncFolderPath)](#oh_clouddisk_deactivesyncfolder) | 应用取消激活同步根。 |60| [CloudDisk_ErrorCode OH_CloudDisk_DeactiveSyncFolder(const CloudDisk_SyncFolderPath syncFolderPath)](#oh_clouddisk_deactivesyncfolder) | 应用取消激活同步根。 |
60| [CloudDisk_ErrorCode OH_CloudDisk_GetSyncFolders(CloudDisk_SyncFolder **syncFolders, size_t *count)](#oh_clouddisk_getsyncfolders) | 应用获取所有同步根。 |61| [CloudDisk_ErrorCode OH_CloudDisk_GetSyncFolders(CloudDisk_SyncFolder **syncFolders, size_t *count)](#oh_clouddisk_getsyncfolders) | 应用获取所有同步根。 |
61| [CloudDisk_ErrorCode OH_CloudDisk_UpdateCustomAlias(const CloudDisk_SyncFolderPath syncFolderPath, const char *customAlias, size_t customAliasLength)](#oh_clouddisk_updatecustomalias) | 应用更新同步根别名。 |62| [CloudDisk_ErrorCode OH_CloudDisk_UpdateCustomAlias(const CloudDisk_SyncFolderPath syncFolderPath, const char *customAlias, size_t customAliasLength)](#oh_clouddisk_updatecustomalias) | 应用更新同步根别名。 |
63+| [CloudDisk_ErrorCode OH_CloudDisk_CreatePlaceholder(const CloudDisk_SyncFolderPath syncFolderPath, const CloudDisk_PathInfo relativePathInfo, const OH_CloudDisk_PlaceholderInfo placeholderInfo)](#oh_clouddisk_createplaceholder) | 在已注册的同步根路径下创建占位符文件。 |
64+| [CloudDisk_ErrorCode OH_CloudDisk_IsPlaceholderFile(const CloudDisk_SyncFolderPath syncFolderPath, const CloudDisk_PathInfo relativePathInfo, bool *isPlaceholder)](#oh_clouddisk_isplaceholderfile) | 判断已注册的同步根路径下的文件是否为占位符文件。 |
65+| [CloudDisk_ErrorCode OH_CloudDisk_ConvertPlaceholderToFile(const CloudDisk_SyncFolderPath syncFolderPath, const CloudDisk_PathInfo relativePathInfo)](#oh_clouddisk_convertplaceholdertofile) | 将已注册的同步根路径下的占位符文件转换为0字节的普通文件。 |
66+| [CloudDisk_ErrorCode OH_CloudDisk_UpdatePlaceholder(const CloudDisk_SyncFolderPath syncFolderPath, const CloudDisk_PathInfo relativePathInfo, const OH_CloudDisk_PlaceholderInfo placeholderInfo)](#oh_clouddisk_updateplaceholder) | 更新文件元数据,支持占位符文件和普通文件。 |
62 67 
63## 枚举类型说明68## 枚举类型说明
64 69 
@@ -82,6 +87,7 @@ enum CloudDisk_SyncState
82| SYNC_FAILED = 3 | 文件同步失败。 |87| SYNC_FAILED = 3 | 文件同步失败。 |
83| SYNC_CANCELED = 4 | 文件同步取消。 |88| SYNC_CANCELED = 4 | 文件同步取消。 |
84| SYNC_CONFLICTED = 5 | 文件同步冲突。 |89| SYNC_CONFLICTED = 5 | 文件同步冲突。 |
90+| OH_CLOUD_DISK_CLOSE_MODIFY = 6 | 修改内容后关闭文件。<br>**起始版本:** 26.1.0 |
85 91 
86### CloudDisk_OperationType92### CloudDisk_OperationType
87 93 
@@ -423,4 +429,105 @@ CloudDisk_ErrorCode OH_CloudDisk_UpdateCustomAlias(const CloudDisk_SyncFolderPat
423| -- | -- |429| -- | -- |
424| [CloudDisk_ErrorCode](capi-cloud-disk-error-code-h.md#clouddisk_errorcode) | 如果接口调用成功,返回[CLOUD_DISK_OK](capi-cloud-disk-error-code-h.md#clouddisk_errorcode);否则返回云盘管理模块的错误码[CloudDisk_ErrorCode](capi-cloud-disk-error-code-h.md#clouddisk_errorcode)。 |430| [CloudDisk_ErrorCode](capi-cloud-disk-error-code-h.md#clouddisk_errorcode) | 如果接口调用成功,返回[CLOUD_DISK_OK](capi-cloud-disk-error-code-h.md#clouddisk_errorcode);否则返回云盘管理模块的错误码[CloudDisk_ErrorCode](capi-cloud-disk-error-code-h.md#clouddisk_errorcode)。 |
425 431 
432+### OH_CloudDisk_CreatePlaceholder()
426 433 
434+```c
435+CloudDisk_ErrorCode OH_CloudDisk_CreatePlaceholder(const CloudDisk_SyncFolderPath syncFolderPath, const CloudDisk_PathInfo relativePathInfo, const OH_CloudDisk_PlaceholderInfo placeholderInfo)
436+```
437+ 
438+**描述**
439+ 
440+在已注册的同步根路径下创建占位符文件。
441+ 
442+**起始版本:** 26.1.0
443+ 
444+**参数:**
445+ 
446+| 参数项 | 描述 |
447+| -- | -- |
448+| const CloudDisk_SyncFolderPath syncFolderPath | 已注册的同步根路径。 |
449+| [const CloudDisk_PathInfo](capi-clouddisk-clouddisk-pathinfo.md) relativePathInfo | 占位符文件在同步根路径下的相对路径。路径不能为空,不能以"/"开头或结尾,且不能包含"./"、"../"路径段。 |
450+| [const OH_CloudDisk_PlaceholderInfo](capi-clouddisk-oh-clouddisk-placeholderinfo.md) placeholderInfo | 创建占位符文件时使用的元数据。 |
451+ 
452+**返回:**
453+ 
454+| 类型 | 说明 |
455+| -- | -- |
456+| [CloudDisk_ErrorCode](capi-cloud-disk-error-code-h.md#clouddisk_errorcode) | 如果接口调用成功,则返回CLOUD_DISK_OK;否则返回云盘管理模块的错误码CloudDisk_ErrorCode。 |
457+ 
458+### OH_CloudDisk_IsPlaceholderFile()
459+ 
460+```c
461+CloudDisk_ErrorCode OH_CloudDisk_IsPlaceholderFile(const CloudDisk_SyncFolderPath syncFolderPath, const CloudDisk_PathInfo relativePathInfo, bool *isPlaceholder)
462+```
463+ 
464+**描述**
465+ 
466+判断已注册的同步根路径下的指定文件是否为占位符文件。
467+ 
468+**起始版本:** 26.1.0
469+ 
470+**参数:**
471+ 
472+| 参数项 | 描述 |
473+| -- | -- |
474+| const CloudDisk_SyncFolderPath syncFolderPath | 已注册的同步根路径。 |
475+| [const CloudDisk_PathInfo](capi-clouddisk-clouddisk-pathinfo.md) relativePathInfo | 同步根路径下待检查文件的相对路径,参考:[CloudDisk_PathInfo](capi-clouddisk-clouddisk-pathinfo.md)。 |
476+| bool *isPlaceholder | 输出参数。返回值为CLOUD_DISK_OK时该参数有效。true表示该文件是占位符文件;false表示该文件不是占位符文件。<br> 接口调用失败时,该值被设置为false。 |
477+ 
478+**返回:**
479+ 
480+| 类型 | 说明 |
481+| -- | -- |
482+| [CloudDisk_ErrorCode](capi-cloud-disk-error-code-h.md#clouddisk_errorcode) | 如果接口调用成功,则返回CLOUD_DISK_OK;否则返回云盘管理模块的错误码CloudDisk_ErrorCode。 |
483+ 
484+### OH_CloudDisk_ConvertPlaceholderToFile()
485+ 
486+```c
487+CloudDisk_ErrorCode OH_CloudDisk_ConvertPlaceholderToFile(const CloudDisk_SyncFolderPath syncFolderPath, const CloudDisk_PathInfo relativePathInfo)
488+```
489+ 
490+**描述**
491+ 
492+将已注册的同步根路径下的占位符文件转换为0字节的普通文件。
493+ 
494+**起始版本:** 26.1.0
495+ 
496+**参数:**
497+ 
498+| 参数项 | 描述 |
499+| -- | -- |
500+| const CloudDisk_SyncFolderPath syncFolderPath | 已注册的同步根路径。 |
501+| [const CloudDisk_PathInfo](capi-clouddisk-clouddisk-pathinfo.md) relativePathInfo | 同步根路径下待转换的占位符文件相对路径信息。 |
502+ 
503+**返回:**
504+ 
505+| 类型 | 说明 |
506+| -- | -- |
507+| [CloudDisk_ErrorCode](capi-cloud-disk-error-code-h.md#clouddisk_errorcode) | 如果接口调用成功,则返回CLOUD_DISK_OK;否则返回云盘管理模块的错误码CloudDisk_ErrorCode。 |
508+ 
509+### OH_CloudDisk_UpdatePlaceholder()
510+ 
511+```c
512+CloudDisk_ErrorCode OH_CloudDisk_UpdatePlaceholder(const CloudDisk_SyncFolderPath syncFolderPath, const CloudDisk_PathInfo relativePathInfo, const OH_CloudDisk_PlaceholderInfo placeholderInfo)
513+```
514+ 
515+**描述**
516+ 
517+更新同步根路径下文件的元数据,支持占位符文件和普通文件。
518+ 
519+**起始版本:** 26.1.0
520+ 
521+**参数:**
522+ 
523+| 参数项 | 描述 |
524+| -- | -- |
525+| const CloudDisk_SyncFolderPath syncFolderPath | 已注册的同步根路径。 |
526+| [const CloudDisk_PathInfo](capi-clouddisk-clouddisk-pathinfo.md) relativePathInfo | 待更新元数据的文件相对路径信息。 |
527+| [const OH_CloudDisk_PlaceholderInfo](capi-clouddisk-oh-clouddisk-placeholderinfo.md) placeholderInfo | 待更新的文件元数据信息,参考:[OH_CloudDisk_PlaceholderInfo](capi-clouddisk-oh-clouddisk-placeholderinfo.md)。 |
528+ 
529+**返回:**
530+ 
531+| 类型 | 说明 |
532+| -- | -- |
533+| [CloudDisk_ErrorCode](capi-cloud-disk-error-code-h.md#clouddisk_errorcode) | 如果接口调用成功,则返回CLOUD_DISK_OK;否则返回云盘管理模块的错误码CloudDisk_ErrorCode。 |