From 20df4039de5938e4f862a776f605b427d7dd9e5f Mon Sep 17 00:00:00 2001 From: yunlanying Date: Wed, 14 May 2025 15:24:25 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AB=AF=E5=85=836.0=E9=99=8D=E7=BA=A7?= =?UTF-8?q?=E4=B8=8B=E8=BD=BD=E6=9C=89=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: yunlanying --- api/@ohos.file.cloudSyncManager.d.ts | 321 ++++++++++++++++++++++++++- 1 file changed, 318 insertions(+), 3 deletions(-) diff --git a/api/@ohos.file.cloudSyncManager.d.ts b/api/@ohos.file.cloudSyncManager.d.ts index b8869a41a0..06ec8beed2 100644 --- a/api/@ohos.file.cloudSyncManager.d.ts +++ b/api/@ohos.file.cloudSyncManager.d.ts @@ -18,7 +18,7 @@ * @kit CoreFileKit */ -import type { AsyncCallback } from './@ohos.base'; +import type { AsyncCallback, Callback } from './@ohos.base'; /** * Provides the capabilities to manage the state and data of cloud file synchronization. @@ -181,7 +181,7 @@ declare namespace cloudSyncManager { * @systemapi * @since 10 */ - RETAIN_DATA, + RETAIN_DATA = 0, /** * Indicates clearing all cloud-related file data, which synchronized with the cloud. @@ -190,7 +190,7 @@ declare namespace cloudSyncManager { * @systemapi * @since 10 */ - CLEAR_DATA + CLEAR_DATA = 1 } /** @@ -291,6 +291,321 @@ declare namespace cloudSyncManager { */ extraData: string; } + + /** + * Describes the reason why the download task stop. + * @enum { number } DownloadStopReason + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + enum DownloadStopReason { + + /** + * download task is not stopped. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + NO_STOP = 0, + + /** + * Network is unavailable. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + NETWORK_UNAVAILABLE = 1, + + /** + * The local storage space is full. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + LOCAL_STORAGE_FULL = 2, + + /** + * Temperature control Limits. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + TEMPERATURE_LIMIT = 3, + + /** + * User stopped the download task. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + USER_STOPPED = 4, + + /** + * The local application has been unloaded. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + APP_UNLOAD = 5, + + /** + * Other reasons of some internal error. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + OTHER_REASON = 6 + } + + /** + * Describes the state type of downgrade download. + * @enum { number } DownloadState + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + enum DownloadState { + + /** + * Indicates that the download task in process now. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + RUNNING = 0, + + /** + * Indicates that the download task finished. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + COMPLETED = 1, + + /** + * Indicates that the download task stopped. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + STOPPED = 2 + } + + /** + * Defines the CloudFileInfo data structure. + * @typedef CloudFileInfo + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + interface CloudFileInfo { + + /** + * The total number of cloud files. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + cloudFileCount: number; + + /** + * The total size(Unit:byte) of cloud files. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + cloudFileTotalSize: number; + + /** + * The total number of local files. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + localFileCount: number; + + /** + * The total size(Unit:byte) of local files. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + localFileTotalSize: number; + + /** + * The total number of files both on cload and local. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + bothFileCount: number; + + /** + * The total size(Unit:byte) of files both on cload and local. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + bothFileTotalSize: number; + } + + /** + * Defines DownloadProgress object. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + class DownloadProgress { + + /** + * The current download task state. + * @type { DownloadState } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + state: DownloadState; + + /** + * The number of files that downloaded successfully + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + successfulCount: number; + + /** + * The number of files that fail to be downloaded. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + failedCount: number; + + /** + * Total number of all files to be downloaded. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + totalCount: number; + + /** + * Total size of downloaded files. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + downloadedSize: number; + + /** + * Total size of all files to be downloaded. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + totalSize: number; + + /** + * The reason for stopping the download task. + * @type { DownloadStopReason } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @since 20 + * @arkts 1.1&1.2 + */ + stopReason: DownloadStopReason; + } + + /** + * DowngradeDownload object. + * + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @systemapi + * @since 20 + * @arkts 1.1&1.2 + */ + class DowngradeDownload { + + /** + * A constructor used to create a DowngradeDownload object. + * + * @permission ohos.permission.CLOUDFILE_SYNC_MANAGER + * @param { string } bundleName - Name of the bundle that need to synchronize and subscribe the sync progress event. + * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 13900020 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @systemapi + * @since 20 + * @arkts 1.1&1.2 + */ + constructor(bundleName: string); + + /** + * Get the total size and number of files located on the cloud and local. + * + * @permission ohos.permission.CLOUDFILE_SYNC_MANAGER + * @returns { Promise } - Return the file size and number info. + * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 13600001 - IPC error. + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 22400005 - Inner error. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @systemapi + * @since 20 + * @arkts 1.1&1.2 + */ + getCloudFileInfo(): Promise; + + /** + * Stop the specified application's download task. + * + * @permission ohos.permission.CLOUDFILE_SYNC_MANAGER + * @returns { Promise } - Return Promise. + * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 13600001 - IPC error. + * @throws { BusinessError } 22400005 - Inner error. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @systemapi + * @since 20 + * @arkts 1.1&1.2 + */ + stopDownload(): Promise; + + /** + * Start to download all cloud files of the specified application to local. + * + * @permission ohos.permission.CLOUDFILE_SYNC_MANAGER + * @param { Callback } callback - callback function with a `DownloadProgress` argument. + * @returns { Promise } - Return Promise. + * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 13600001 - IPC error. + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900020 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 22400005 - Inner error. + * @throws { BusinessError } 22400006 - The same task is already in progress. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager + * @systemapi + * @since 20 + * @arkts 1.1&1.2 + */ + startDownload(callback: Callback): Promise; + } } export default cloudSyncManager; -- Gitee