harmony 鸿蒙@ohos.file.cloudSync (端云同步能力)(系统接口)
@ohos.file.cloudSync (端云同步能力)(系统接口)
该模块向应用提供端云同步能力,包括启动/停止端云同步以及启动/停止原图下载功能。
说明:
- 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
- 当前页面仅包含本模块的系统接口,其他公开接口参见@ohos.file.cloudSync (端云同步能力)。
导入模块
import { cloudSync } from '@kit.CoreFileKit';
GallerySync
云图同步对象,用来支撑图库应用媒体资源端云同步流程。在使用前,需要先创建GallerySync实例。
constructor
constructor()
端云同步流程的构造函数,用于获取GallerySync类的实例。
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
示例:
let gallerySync = new cloudSync.GallerySync()
on
on(evt: ‘progress’, callback: (pg: SyncProgress) => void): void
添加同步过程事件监听。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
evt | string | 是 | 订阅的事件类型,取值为’progress’(同步过程事件)。 |
callback | (pg: SyncProgress) => void | 是 | 同步过程事件回调,回调入参为SyncProgress,返回值为void。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed. |
202 | The caller is not a system application. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
13600001 | IPC error. |
示例:
let gallerySync = new cloudSync.GallerySync();
gallerySync.on('progress', (pg: cloudSync.SyncProgress) => {
console.info("syncState:" + pg.state);
});
off
off(evt: ‘progress’, callback: (pg: SyncProgress) => void): void
移除同步过程事件监听。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
evt | string | 是 | 取消订阅的事件类型,取值为’progress’(同步过程事件)。 |
callback | (pg: SyncProgress) => void | 是 | 同步过程事件回调,回调入参为SyncProgress,返回值为void。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed. |
202 | The caller is not a system application. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
13600001 | IPC error. |
示例:
let gallerySync = new cloudSync.GallerySync();
let callback = (pg: cloudSync.SyncProgress) => {
console.info("gallery sync state:" + pg.state + "error type:" + pg.error);
}
gallerySync.on('progress', callback);
gallerySync.off('progress', callback);
off
off(evt: ‘progress’): void
移除同步过程事件监听。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
evt | string | 是 | 取消订阅的事件类型,取值为’progress’(同步过程事件)。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed. |
202 | The caller is not a system application. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
13600001 | IPC error. |
示例:
let gallerySync = new cloudSync.GallerySync();
gallerySync.on('progress', (pg: cloudSync.SyncProgress) => {
console.info("syncState:" + pg.state);
});
gallerySync.off('progress');
start
start(): Promise<void>
异步方法启动端云同步,以Promise形式返回结果。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
返回值:
类型 | 说明 |
---|---|
Promise<void> | 使用Promise形式返回启动端云同步的结果。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed. |
202 | The caller is not a system application. |
401 | The input parameter is invalid. Possible causes:Incorrect parameter types. |
22400001 | Cloud status not ready. |
22400002 | Network unavailable. |
22400003 | Low battery level. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
let gallerySync = new cloudSync.GallerySync();
gallerySync.on('progress', (pg: cloudSync.SyncProgress) => {
console.info("syncState:" + pg.state);
});
gallerySync.start().then(() => {
console.info("start sync successfully");
}).catch((err: BusinessError) => {
console.error("start sync failed with error message: " + err.message + ", error code: " + err.code);
});
start
start(callback: AsyncCallback<void>): void
异步方法启动端云同步,以callback形式返回结果。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
callback | AsyncCallback<void> | 是 | 异步启动端云同步的回调。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed. |
202 | The caller is not a system application. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
22400001 | Cloud status not ready. |
22400002 | Network unavailable. |
22400003 | Low battery level. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
let gallerySync = new cloudSync.GallerySync();
gallerySync.start((err: BusinessError) => {
if (err) {
console.error("start sync failed with error message: " + err.message + ", error code: " + err.code);
} else {
console.info("start sync successfully");
}
});
stop
stop(): Promise<void>
异步方法停止端云同步,以Promise形式返回结果。
说明:
调用stop接口,同步流程会停止。再次调用start接口会继续同步。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
返回值:
类型 | 说明 |
---|---|
Promise<void> | 使用Promise形式返回停止端云同步的结果。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed. |
202 | The caller is not a system application. |
401 | The input parameter is invalid. Possible causes:Incorrect parameter types. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
let gallerySync = new cloudSync.GallerySync();
gallerySync.stop().then(() => {
console.info("stop sync successfully");
}).catch((err: BusinessError) => {
console.error("stop sync failed with error message: " + err.message + ", error code: " + err.code);
});
stop
stop(callback: AsyncCallback<void>): void
异步方法停止端云同步,以callback形式返回结果。
说明:
调用stop接口,同步流程会停止。再次调用start接口会继续同步。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
callback | AsyncCallback<void> | 是 | 异步停止端云同步的回调。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed. |
202 | The caller is not a system application. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
let gallerySync = new cloudSync.GallerySync();
gallerySync.stop((err: BusinessError) => {
if (err) {
console.error("stop sync failed with error message: " + err.message + ", error code: " + err.code);
} else {
console.info("stop sync successfully");
}
});
Download
云文件下载对象,用来支撑图库应用原图文件下载流程。在使用前,需要先创建Download实例。
constructor
constructor()
云文件下载流程的构造函数,用于获取Download类的实例。
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
示例:
let download = new cloudSync.Download()
on
on(evt: ‘progress’, callback: (pg: DownloadProgress) => void): void
添加云文件下载过程事件监听。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
evt | string | 是 | 订阅的事件类型,取值为’progress’(下载过程事件)。 |
callback | (pg: DownloadProgress) => void | 是 | 云文件下载过程事件回调,回调入参为DownloadProgress,返回值为void。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed. |
202 | The caller is not a system application. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
13600001 | IPC error. |
示例:
let download = new cloudSync.Download();
download.on('progress', (pg: cloudSync.DownloadProgress) => {
console.info("download state:" + pg.state);
});
off
off(evt: ‘progress’, callback: (pg: DownloadProgress) => void): void
移除云文件下载过程事件监听。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
evt | string | 是 | 取消订阅的事件类型,取值为’progress’(同步过程事件)。 |
callback | (pg: DownloadProgress) => void | 是 | 云文件下载过程事件回调,回调入参为DownloadProgress,返回值为void。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed. |
202 | The caller is not a system application. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
13600001 | IPC error. |
示例:
let download = new cloudSync.Download();
let callback = (pg: cloudSync.DownloadProgress) => {
console.info("download state:" + pg.state);
}
download.on('progress', callback);
download.off('progress', callback);
off
off(evt: ‘progress’): void
移除云文件下载过程事件监听。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
evt | string | 是 | 取消订阅的事件类型,取值为’progress’(下载过程事件)。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed. |
202 | The caller is not a system application. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
13600001 | IPC error. |
示例:
let download = new cloudSync.Download();
download.on('progress', (pg: cloudSync.DownloadProgress) => {
console.info("download state:" + pg.state);
});
download.off('progress');
start
start(uri: string): Promise<void>
异步方法启动云文件下载,以Promise形式返回结果。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
uri | string | 是 | 待下载文件uri。 |
返回值:
类型 | 说明 |
---|---|
Promise<void> | 使用Promise形式返回启动云文件下载的结果。 |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
let download = new cloudSync.Download();
let uri: string = "file:///media/Photo/1";
download.on('progress', (pg: cloudSync.DownloadProgress) => {
console.info("download state:" + pg.state);
});
download.start(uri).then(() => {
console.info("start download successfully");
}).catch((err: BusinessError) => {
console.error("start download failed with error message: " + err.message + ", error code: " + err.code);
});
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed. |
202 | The caller is not a system application. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
13900002 | No such file or directory. |
13900025 | No space left on device. |
start
start(uri: string, callback: AsyncCallback<void>): void
异步方法启动云文件下载,以callback形式返回结果。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
uri | string | 是 | 待下载文件uri。 |
callback | AsyncCallback<void> | 是 | 异步启动云文件下载的回调。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed. |
202 | The caller is not a system application. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
13900002 | No such file or directory. |
13900025 | No space left on device. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
let download = new cloudSync.Download();
let uri: string = "file:///media/Photo/1";
download.start(uri, (err: BusinessError) => {
if (err) {
console.error("start download failed with error message: " + err.message + ", error code: " + err.code);
} else {
console.info("start download successfully");
}
});
stop
stop(uri: string): Promise<void>
异步方法停止云文件下载,以Promise形式返回结果。
说明:
调用stop接口,当前文件下载流程会终止,缓存文件会被删除,再次调用start接口会重新开始下载。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
uri | string | 是 | 待下载文件uri。 |
返回值:
类型 | 说明 |
---|---|
Promise<void> | 使用Promise形式返回停止云文件下载的结果。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed. |
202 | The caller is not a system application. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
let download = new cloudSync.Download();
let uri: string = "file:///media/Photo/1";
download.stop(uri).then(() => {
console.info("stop download successfully");
}).catch((err: BusinessError) => {
console.error("stop download failed with error message: " + err.message + ", error code: " + err.code);
});
stop
stop(uri: string, callback: AsyncCallback<void>): void
异步方法停止云文件下载,以callback形式返回结果。
说明:
调用stop接口,当前文件下载流程会终止,缓存文件会被删除,再次调用start接口会重新开始下载。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
uri | string | 是 | 待下载文件uri。 |
callback | AsyncCallback<void> | 是 | 异步停止云文件下载的回调。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed. |
202 | The caller is not a system application. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
let download = new cloudSync.Download();
let uri: string = "file:///media/Photo/1";
download.stop(uri, (err: BusinessError) => {
if (err) {
console.error("stop download failed with error message: " + err.message + ", error code: " + err.code);
} else {
console.info("stop download successfully");
}
});
FileSync12+
云盘同步对象,用于支撑文件管理器应用完成云盘文件的端云同步流程。在使用前,需要先创建FileSync实例。
constructor12+
constructor(bundleName: string)
端云同步流程的构造函数,用于获取FileSync类的实例。
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
bundleName | string | 是 | 应用包名。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
202 | Permission verification failed, application which is not a system application uses system API. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
示例:
let fileSync = new cloudSync.FileSync("com.ohos.demo")
CloudFileCache11+
云盘文件缓存对象,用来支撑文件管理应用原文件下载流程。
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
cleanCache11+
cleanCache(uri: string): void
同步方法删除文件缓存。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
uri | string | 是 | 待删除缓存文件的uri。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed, usually the result returned by VerifyAccessToken. |
202 | Permission verification failed, application which is not a system application uses system API. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
13600001 | IPC error. |
13900002 | No such file or directory. |
14000002 | Invalid URI. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
import { fileUri } from '@kit.CoreFileKit';
let fileCache = new cloudSync.CloudFileCache();
let path = "/data/storage/el2/cloud/1.txt";
let uri = fileUri.getUriFromPath(path);
try {
fileCache.cleanCache(uri);
} catch (err) {
let error:BusinessError = err as BusinessError;
console.error("clean cache failed with error message: " + err.message + ", error code: " + err.code);
}
cloudSync.getFileSyncState11+
getFileSyncState(uri: Array<string>): Promise<Array<FileSyncState>>
异步方法获取文件同步状态,以promise形式返回结果。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
uri | Array<string> | 是 | 待获取同步状态的uri。 |
返回值:
类型 | 说明 |
---|---|
Promise<Array<FileSyncState>> | 使用Promise形式返回文件同步状态的结果。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed, usually the result returned by VerifyAccessToken. |
202 | Permission verification failed, application which is not a system application uses system API. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
13600001 | IPC error. |
13900002 | No such file or directory. |
14000002 | Invalid URI. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
let uris: Array<string> = ["file://uri"];
cloudSync.getFileSyncState(uris).then((syncStates: Array<cloudSync.FileSyncState>) => {
for(let i = 0, len = syncStates.length; i < len; i++){
console.info("get file sync state successfully" + syncStates[i]);
}
}).catch((err: BusinessError) => {
console.error("get file sync state failed with error message: " + err.message + ", error code: " + err.code);
});
cloudSync.getFileSyncState11+
getFileSyncState(uri: Array<string>, callback: AsyncCallback<Array<FileSyncState>>): void
异步方法获取文件同步状态,以callback形式返回结果。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
uri | Array<string> | 是 | 待获取同步状态的uri。 |
callback | AsyncCallback<Array<FileSyncState>> | 是 | 异步获取文件状态的回调。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed, usually the result returned by VerifyAccessToken. |
202 | Permission verification failed, application which is not a system application uses system API. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
13600001 | IPC error. |
13900002 | No such file or directory. |
14000002 | Invalid URI. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
let uris: Array<string> = ["file://uri"];
cloudSync.getFileSyncState(uris, (err: BusinessError, syncStates: Array<cloudSync.FileSyncState>) => {
if (err) {
console.error("get file sync state with error message: " + err.message + ", error code: " + err.code);
} else {
for(let i = 0, len = syncStates.length; i < len; i++){
console.info("get file sync state successfully" + syncStates[i]);
}
}
});
cloudSync.getFileSyncState12+
getFileSyncState(uri: string): FileSyncState
获取文件同步状态。
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
uri | string | 是 | 待下载文件uri。 |
返回值:
类型 | 说明 |
---|---|
FileSyncState | 返回给定文件的同步状态。 |
错误码:
以下错误码的详细介绍请参见文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
202 | Permission verification failed, application which is not a system application uses system API. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
13900002 | No such file or directory. |
13900004 | Interrupted system call. |
13900010 | Try again. |
13900012 | Permission denied by the file system. |
13900031 | Function not implemented. |
13900042 | Unknown error. |
14000002 | Invalid URI. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
import { fileUri } from '@kit.CoreFileKit';
let path = "/data/storage/el2/cloud/1.txt";
let uri = fileUri.getUriFromPath(path);
try {
let state = cloudSync.getFileSyncState(uri);
} catch (err) {
let error:BusinessError = err as BusinessError;
console.error("getFileSyncStatefailed with error:" + JSON.stringify(error));
}
FileSyncState11+
端云文件同步状态,为枚举类型。
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:该接口为系统接口。
名称 | 值 | 说明 |
---|---|---|
UPLOADING | 0 | 上行同步中。 |
DOWNLOADING | 1 | 下行同步中。 |
COMPLETED | 2 | 同步成功。 |
STOPPED | 3 | 同步已停止。 |
TO_BE_UPLOADED12+ | 4 | 正在等待上行。 |
UPLOAD_SUCCESS12+ | 5 | 文件已成功上行。 |
UPLOAD_FAILURE12+ | 6 | 文件上行失败。 |
cloudSync.optimizeStorage17+
optimizeStorage(): Promise<void>
优化图库已同步云空间的本地资源,按照本地剩余空间执行自动老化策略。使用Promise异步回调。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:此接口为系统接口。
返回值:
类型 | 说明 |
---|---|
Promise<void> | 无返回结果的Promise对象。 |
错误码:
以下错误码的详细介绍请参见通用错误码和文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed, usually the result returned by VerifyAccessToken. |
202 | Permission verification failed, application which is not a system application uses system API. |
13600001 | IPC error. |
13900042 | Unknown error. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
cloudSync.optimizeStorage().then(() => {
console.info("optimize storage successfully"); // 前台UX按需阻塞等待
}).catch((err: BusinessError) => {
console.error("optimize storage failed with error message: " + err.message + ", error code: " + err.code);
});
cloudSync.startOptimizeSpace17+
startOptimizeSpace(optimizePara: OptimizeSpaceParam, callback?: Callback<OptimizeSpaceProgress>): Promise<void>
优化图库已同步云空间的本地资源,执行立即优化空间策略,对老化天数前未访问的本地图片/视频进行优化。使用Promise异步回调。
startOptimizeSpace的使用和stopOptimizeSpace方法调用一一对应,重复开启将返回其他任务正在执行的错误信息(22400006)。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:此接口为系统接口。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
optimizePara | OptimizeSpaceParam | 是 | 优化参数。 |
callback | Callback<OptimizeSpaceProgress> | 否 | 返回优化进度。缺省情况下返回401错误,不执行清理任务 |
返回值:
类型 | 说明 |
---|---|
Promise<void> | 无返回结果的Promise对象。 |
错误码:
以下错误码的详细介绍请参见通用错误码和文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed, usually the result returned by VerifyAccessToken. |
202 | Permission verification failed, application which is not a system application uses system API. |
401 | The input parameter is invalid. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. |
13600001 | IPC error. |
22400005 | Inner error. |
22400006 | The same task is already in progress. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
let para:cloudSync.OptimizeSpaceParam = {totalSize: 1073741824, agingDays: 30};
let callback = (data:cloudSync.OptimizeSpaceProgress) => {
if (data.state == cloudSync.OptimizeState.FAILED) {
console.info("optimize space failed");
} else if (data.state == cloudSync.OptimizeState.COMPLETED && data.progress == 100) {
console.info("optimize space successfully");
} else if (data.state == cloudSync.OptimizeState.RUNNING) {
console.info("optimize space progress:" + data.progress);
}
}
cloudSync.startOptimizeSpace(para, callback).then(() => {
console.info("start optimize space");
}).catch((err: BusinessError) => {
console.error("start optimize space failed with error message: " + err.message + ", error code: " + err.code);
});
cloudSync.stopOptimizeSpace17+
stopOptimizeSpace(): void
同步方法停止图库云图资源空间优化,和startOptimizeSpace配对使用。
需要权限:ohos.permission.CLOUDFILE_SYNC
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:此接口为系统接口。
错误码:
以下错误码的详细介绍请参见通用错误码和文件管理子系统错误码。
错误码ID | 错误信息 |
---|---|
201 | Permission verification failed, usually the result returned by VerifyAccessToken. |
202 | Permission verification failed, application which is not a system application uses system API. |
13600001 | IPC error. |
22400005 | Inner error. |
示例:
import { BusinessError } from '@kit.BasicServicesKit';
let para:cloudSync.OptimizeSpaceParam = {totalSize: 1073741824, agingDays: 30};
let callback = (data:cloudSync.OptimizeSpaceProgress) => {
if (data.state == cloudSync.OptimizeState.FAILED) {
console.info("optimize space failed");
} else if (data.state == cloudSync.OptimizeState.RUNNING) {
console.info("optimize space progress:" + data.progress);
}
}
cloudSync.startOptimizeSpace(para, callback);
cloudSync.stopOptimizeSpace(); // 停止空间优化
OptimizeState17+
优化空间状态,为枚举类型。
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:此接口为系统接口。
名称 | 值 | 说明 |
---|---|---|
RUNNING | 0 | 正在优化空间。 |
COMPLETED | 1 | 优化空间成功结束。 |
FAILED | 2 | 优化空间失败。 |
STOPPED | 3 | 优化空间停止。 |
OptimizeSpaceProgress17+
立即优化空间状态和当前进度。
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:此接口为系统接口。
名称 | 类型 | 必填 | 说明 |
---|---|---|---|
state | OptimizeState | 是 | 枚举值,优化空间状态。 |
progress | number | 是 | 优化进度百分比,范围[0,100]。 |
OptimizeSpaceParam17+
立即优化空间设置参数,设置优化总空间和老化天数。
系统能力:SystemCapability.FileManagement.DistributedFileService.CloudSync.Core
系统接口:此接口为系统接口。
名称 | 类型 | 必填 | 说明 |
---|---|---|---|
totalSize | number | 是 | 优化空间总大小。查询媒体库接口获得需要老化的所有文件总大小,由应用传入,单位byte。 |
agingDays | number | 是 | 老化天数。系统会以当前时间为基准,优化老化天数前未访问、已同步云空间的本地图片/视频。 |
你可能感兴趣的鸿蒙文章
harmony 鸿蒙Core File Kit(文件基础服务)
harmony 鸿蒙FileShare_PolicyErrorResult
harmony 鸿蒙FileShare_PolicyInfo
harmony 鸿蒙@ohos.application.BackupExtensionAbility (备份恢复扩展能力)(系统接口)
- 所属分类: 后端技术
- 本文标签:
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦