鸿蒙5.0开发进阶:@ohos.continuation.continuationManager (continuationManager)

往期鸿蒙全套实战文章必看:(文中附带全栈鸿蒙学习资料)


@ohos.continuation.continuationManager (continuationManager)

continuationManager模块提供了流转/协同入口管理服务能力,包括连接/取消流转管理服务,注册/解注册设备连接变化监听,拉起设备选择模块,更新连接状态。

说明

本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import { continuationManager } from '@kit.AbilityKit';

continuationManager.register(deprecated)

register(callback: AsyncCallback<number>): void

注册流转管理服务,并获取对应的注册token,无过滤条件,使用AsyncCallback方式作为异步方法。

说明

从API version 9开始不再维护,建议使用registerContinuation替代。

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
callbackAsyncCallback<number>AsyncCallback形式返回流转管理服务连接后生成的token。

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = -1;
continuationManager.register((err, data) => {
  if (err.code != 0) {
    console.error('register failed, cause: ' + JSON.stringify(err));
    return;
  }
  console.info('register finished, ' + JSON.stringify(data));
  token = data;
});

continuationManager.register(deprecated)

register(options: ContinuationExtraParams, callback: AsyncCallback<number>): void

连接流转管理服务,并获取对应的注册token,使用AsyncCallback方式作为异步方法。

说明

从API version 9开始不再维护,建议使用registerContinuation替代。

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
optionsContinuationExtraParams过滤可选择设备列表的额外参数。
callbackAsyncCallback<number>AsyncCallback形式返回流转管理服务连接后生成的token。

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = -1;
continuationManager.register(
  {
    deviceType: ["00E"]
  },
  (err, data) => {
    if (err.code != 0) {
      console.error('register failed, cause: ' + JSON.stringify(err));
      return;
    }
    console.info('register finished, ' + JSON.stringify(data));
    token = data;
});

continuationManager.register(deprecated)

register(options?: ContinuationExtraParams): Promise<number>

连接流转管理服务,并获取对应的注册token,使用Promise方式作为异步方法。

说明

从API version 9开始不再维护,建议使用registerContinuation替代。

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
optionsContinuationExtraParams过滤可选择设备列表的额外参数,该参数可缺省

返回值:

类型说明
Promise<number>Promise形式返回流转管理服务连接后生成的token。

示例:

import { continuationManager } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let token: number = -1;
continuationManager.register(
  { deviceType: ["00E"] }).then((data) => {
    console.info('register finished, ' + JSON.stringify(data));
    token = data;
  }).catch((err: BusinessError) => {
    console.error('register failed, cause: ' + JSON.stringify(err));
});

continuationManager.registerContinuation9+

registerContinuation(callback: AsyncCallback<number>): void

注册流转管理服务,并获取对应的注册token,无过滤条件,使用AsyncCallback方式作为异步方法。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

需要权限:ohos.permission.DISTRIBUTED_DATASYNC

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
callbackAsyncCallback<number>AsyncCallback形式返回流转管理服务连接后生成的token。

错误码:

以下错误码的详细介绍。

错误码ID错误信息
201Permission denied.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
16600001The system ability works abnormally.
16600003The number of token registration times has reached the upper limit.

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = -1;
try {
continuationManager.registerContinuation((err, data) => {
if (err.code != 0) {
console.error('registerContinuation failed, cause: ' + JSON.stringify(err));
return;
}
console.info('registerContinuation finished, ' + JSON.stringify(data));
token = data;
});
} catch (err) {
console.error('registerContinuation failed, cause: ' + JSON.stringify(err));
}

continuationManager.registerContinuation9+

registerContinuation(options: ContinuationExtraParams, callback: AsyncCallback<number>): void

连接流转管理服务,并获取对应的注册token,使用AsyncCallback方式作为异步方法。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

需要权限:ohos.permission.DISTRIBUTED_DATASYNC

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
optionsContinuationExtraParams过滤可选择设备列表的额外参数。
callbackAsyncCallback<number>AsyncCallback形式返回流转管理服务连接后生成的token。

错误码:

以下错误码的详细介绍。

错误码ID错误信息
201Permission denied.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
16600001The system ability works abnormally.
16600003The number of token registration times has reached the upper limit.

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = -1;
try {
continuationManager.registerContinuation(
{
deviceType: ["00E"]
},
(err, data) => {
if (err.code != 0) {
console.error('registerContinuation failed, cause: ' + JSON.stringify(err));
return;
}
console.info('registerContinuation finished, ' + JSON.stringify(data));
token = data;
});
} catch (err) {
console.error('registerContinuation failed, cause: ' + JSON.stringify(err));
}

continuationManager.registerContinuation9+

registerContinuation(options?: ContinuationExtraParams): Promise<number>

连接流转管理服务,并获取对应的注册token,使用Promise方式作为异步方法。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

需要权限:ohos.permission.DISTRIBUTED_DATASYNC

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
optionsContinuationExtraParams过滤可选择设备列表的额外参数,该参数可缺省

返回值:

类型说明
Promise<number>Promise形式返回流转管理服务连接后生成的token。

错误码:

以下错误码的详细介绍。

错误码ID错误信息
201Permission denied.
401Parameter error. Possible causes: 1. Incorrect parameter types; 2. Parameter verification failed.
16600001The system ability works abnormally.
16600003The number of token registration times has reached the upper limit.

示例:

import { continuationManager } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let token: number = -1;
try {
continuationManager.registerContinuation(
{
deviceType: ["00E"]
}).then((data) => {
console.info('registerContinuation finished, ' + JSON.stringify(data));
token = data;
}).catch((err: BusinessError) => {
console.error('registerContinuation failed, cause: ' + JSON.stringify(err));
});
} catch (err) {
console.error('registerContinuation failed, cause: ' + JSON.stringify(err));
}

continuationManager.on('deviceConnect')(deprecated)

on(type: 'deviceConnect', callback: Callback<ContinuationResult>): void

异步方法,监听设备连接状态,使用Callback形式返回连接的设备信息。

说明

从API version 9开始不再维护,建议使用on替代。

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
typestring监听的事件类型,固定值"deviceConnect"。
callbackCallback<ContinuationResult>当用户从设备选择模块中选择设备时调用,返回设备ID、设备类型和设备名称供开发者使用。

示例:

import { continuationManager } from '@kit.AbilityKit';

continuationManager.on("deviceConnect", (data) => {
  console.info('onDeviceConnect deviceId: ' + JSON.stringify(data.id));
  console.info('onDeviceConnect deviceType: ' + JSON.stringify(data.type));
  console.info('onDeviceConnect deviceName: ' + JSON.stringify(data.name));
});

continuationManager.on('deviceDisconnect')(deprecated)

on(type: 'deviceDisconnect', callback: Callback<string>): void

异步方法,监听设备断开状态,使用Callback形式返回断开的设备信息。

说明

从API version 9开始不再维护,建议使用on替代。

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
typestring监听的事件类型,固定值"deviceDisconnect"。
callbackCallback<string>当用户从设备选择模块中断开设备时调用,返回设备ID供开发者使用。

示例:

import { continuationManager } from '@kit.AbilityKit';

continuationManager.on("deviceDisconnect", (data) => {
console.info('onDeviceDisconnect deviceId: ' + JSON.stringify(data));
});

continuationManager.off('deviceConnect')(deprecated)

off(type: 'deviceConnect', callback?: Callback<ContinuationResult>): void

异步方法,取消监听设备连接状态,使用Callback形式返回连接的设备信息。

说明

从API version 9开始不再维护,建议使用off替代。

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
typestring取消监听的事件类型,固定值"deviceConnect"。
callbackCallback<ContinuationResult>当用户从设备选择模块中选择设备时调用,返回设备ID、设备类型和设备名称供开发者使用。

示例:

import { continuationManager } from '@kit.AbilityKit';

continuationManager.off("deviceConnect", (data) => {
console.info('onDeviceConnect deviceId: ' + JSON.stringify(data.id));
console.info('onDeviceConnect deviceType: ' + JSON.stringify(data.type));
console.info('onDeviceConnect deviceName: ' + JSON.stringify(data.name));
});

continuationManager.off('deviceDisconnect')(deprecated)

off(type: 'deviceDisconnect', callback?: Callback<string>): void

异步方法,取消监听设备断开状态,使用Callback形式返回连接的设备信息。

说明

从API version 9开始不再维护,建议使用off替代。

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
typestring取消监听的事件类型,固定值"deviceDisconnect"。
callbackCallback<string>当用户从设备选择模块中断开设备时调用,返回设备ID供开发者使用。

示例:

import { continuationManager } from '@kit.AbilityKit';

continuationManager.off("deviceDisconnect", (data) => {
  console.info('onDeviceDisconnect deviceId: ' + JSON.stringify(data));
});

continuationManager.on('deviceSelected')9+

on(type: 'deviceSelected', token: number, callback: Callback<Array<ContinuationResult>>): void

异步方法,监听设备连接状态,使用Callback形式返回连接的设备信息。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

需要权限:ohos.permission.DISTRIBUTED_DATASYNC

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
typestring监听的事件类型,固定值"deviceSelected"。
tokennumber注册后的token。
callbackCallback<Array<ContinuationResult>>当用户从设备选择模块中选择设备时调用,返回设备ID、设备类型和设备名称供开发者使用。

错误码:

以下错误码的详细介绍。

错误码ID错误信息
201Permission denied.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
16600001The system ability works abnormally.
16600002The specified token or callback is not registered.
16600004The specified callback has been registered.

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = 1;
try {
continuationManager.on("deviceSelected", token, (data) => {
console.info('onDeviceSelected len: ' + data.length);
for (let i = 0; i < data.length; i++) {
console.info('onDeviceSelected deviceId: ' + JSON.stringify(data[i].id));
console.info('onDeviceSelected deviceType: ' + JSON.stringify(data[i].type));
console.info('onDeviceSelected deviceName: ' + JSON.stringify(data[i].name));
}
});
} catch (err) {
console.error('on failed, cause: ' + JSON.stringify(err));
}

continuationManager.on('deviceUnselected')9+

on(type: 'deviceUnselected', token: number, callback: Callback<Array<ContinuationResult>>): void

异步方法,监听设备断开状态,使用Callback形式返回断开的设备信息。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

需要权限:ohos.permission.DISTRIBUTED_DATASYNC

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
typestring监听的事件类型,固定值"deviceUnselected"。
tokennumber注册后的token。
callbackCallback<Array<ContinuationResult>>当用户从设备选择模块中断开设备时调用,返回设备ID、设备类型和设备名称供开发者使用。

错误码:

以下错误码的详细介绍。

错误码ID错误信息
201Permission denied.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
16600001The system ability works abnormally.
16600002The specified token or callback is not registered.
16600004The specified callback has been registered.

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = 1;
try {
continuationManager.on("deviceUnselected", token, (data) => {
console.info('onDeviceUnselected len: ' + data.length);
for (let i = 0; i < data.length; i++) {
console.info('onDeviceUnselected deviceId: ' + JSON.stringify(data[i].id));
console.info('onDeviceUnselected deviceType: ' + JSON.stringify(data[i].type));
console.info('onDeviceUnselected deviceName: ' + JSON.stringify(data[i].name));
}
console.info('onDeviceUnselected finished.');
});
} catch (err) {
console.error('on failed, cause: ' + JSON.stringify(err));
}

continuationManager.off('deviceSelected')9+

off(type: 'deviceSelected', token: number): void

取消监听设备连接状态。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

需要权限:ohos.permission.DISTRIBUTED_DATASYNC

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
typestring取消监听的事件类型,固定值"deviceSelected"。
tokennumber注册后的token。

错误码:

以下错误码的详细介绍。

错误码ID错误信息
201Permission denied.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
16600001The system ability works abnormally.
16600002The specified token or callback is not registered.
16600004The specified callback has been registered.

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = 1;
try {
continuationManager.off("deviceSelected", token);
} catch (err) {
console.error('off failed, cause: ' + JSON.stringify(err));
}

continuationManager.off('deviceUnselected')9+

off(type: 'deviceUnselected', token: number): void

取消监听设备断开状态。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

需要权限:ohos.permission.DISTRIBUTED_DATASYNC

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
typestring取消监听的事件类型,固定值"deviceUnselected"。
tokennumber注册后的token。

错误码:

以下错误码的详细介绍。

错误码ID错误信息
201Permission denied.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
16600001The system ability works abnormally.
16600002The specified token or callback is not registered.
16600004The specified callback has been registered.

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = 1;
try {
continuationManager.off("deviceUnselected", token);
} catch (err) {
console.error('off failed, cause: ' + JSON.stringify(err));
}

continuationManager.startDeviceManager(deprecated)

startDeviceManager(token: number, callback: AsyncCallback<void>): void

拉起设备选择模块,可显示组网内可选择设备列表信息,无过滤条件,使用AsyncCallback方式作为异步方法。

说明

从API version 9开始不再维护,建议使用startContinuationDeviceManager替代。

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
tokennumber注册后的token。
callbackAsyncCallback<void>回调函数。当模块选择完成,err为undefined,否则返回错误对象。

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = 1;
continuationManager.startDeviceManager(token, (err) => {
  if (err.code != 0) {
    console.error('startDeviceManager failed, cause: ' + JSON.stringify(err));
    return;
  }
  console.info('startDeviceManager finished. ');
});

continuationManager.startDeviceManager(deprecated)

startDeviceManager(token: number, options: ContinuationExtraParams, callback: AsyncCallback<void>): void

拉起设备选择模块,可显示组网内可选择设备列表信息,使用AsyncCallback方式作为异步方法。

说明

从API version 9开始不再维护,建议使用startContinuationDeviceManager替代。

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
tokennumber注册后的token。
optionsContinuationExtraParams过滤可选择设备列表的额外参数。
callbackAsyncCallback<void>回调函数。当模块选择完成,err为undefined,否则返回错误对象。

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = 1;
continuationManager.startDeviceManager(
  token,
  {
    deviceType: ["00E"]
  },
  (err) => {
    if (err.code != 0) {
      console.error('startDeviceManager failed, cause: ' + JSON.stringify(err));
      return;
    }
    console.info('startDeviceManager finished. ');
});

continuationManager.startDeviceManager(deprecated)

startDeviceManager(token: number, options?: ContinuationExtraParams): Promise<void>

拉起设备选择模块,可显示组网内可选择设备列表信息,使用Promise方式作为异步方法。

说明

从API version 9开始不再维护,建议使用startContinuationDeviceManager替代。

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
tokennumber注册后的token。
optionsContinuationExtraParams过滤可选择设备列表的额外参数,该参数可缺省

返回值:

类型说明
Promise<void>Promise形式返回接口调用结果。

示例:

import { continuationManager } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let token: number = -1;
continuationManager.startDeviceManager(
token,
{
deviceType: ["00E"]
}).then(() => {
console.info('startDeviceManager finished. ');
}).catch((err: BusinessError) => {
console.error('startDeviceManager failed, cause: ' + JSON.stringify(err));
});

continuationManager.startContinuationDeviceManager9+

startContinuationDeviceManager(token: number, callback: AsyncCallback<void>): void

拉起设备选择模块,可显示组网内可选择设备列表信息,无过滤条件,使用AsyncCallback方式作为异步方法。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

需要权限:ohos.permission.DISTRIBUTED_DATASYNC

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
tokennumber注册后的token。
callbackAsyncCallback<void>回调函数。当模块选择完成,err为undefined,否则返回错误对象。

错误码:

以下错误码的详细介绍。

错误码ID错误信息
201Permission denied.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
16600001The system ability works abnormally.
16600002The specified token or callback is not registered.

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = -1;
try {
continuationManager.startContinuationDeviceManager(token, (err) => {
if (err.code != 0) {
console.error('startContinuationDeviceManager failed, cause: ' + JSON.stringify(err));
return;
}
console.info('startContinuationDeviceManager finished. ');
});
} catch (err) {
console.error('startContinuationDeviceManager failed, cause: ' + JSON.stringify(err));
}

continuationManager.startContinuationDeviceManager9+

startContinuationDeviceManager(token: number, options: ContinuationExtraParams, callback: AsyncCallback<void>): void

拉起设备选择模块,可显示组网内可选择设备列表信息,使用AsyncCallback方式作为异步方法。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

需要权限:ohos.permission.DISTRIBUTED_DATASYNC

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
tokennumber注册后的token。
optionsContinuationExtraParams过滤可选择设备列表的额外参数。
callbackAsyncCallback<void>回调函数。当模块选择完成,err为undefined,否则返回错误对象。

错误码:

以下错误码的详细介绍。

错误码ID错误信息
201Permission denied.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
16600001The system ability works abnormally.
16600002The specified token or callback is not registered.

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = -1;
try {
continuationManager.startContinuationDeviceManager(
token,
{
deviceType: ["00E"]
},
(err) => {
if (err.code != 0) {
console.error('startContinuationDeviceManager failed, cause: ' + JSON.stringify(err));
return;
}
console.info('startContinuationDeviceManager finished. ');
});
} catch (err) {
console.error('startContinuationDeviceManager failed, cause: ' + JSON.stringify(err));
}

continuationManager.startContinuationDeviceManager9+

startContinuationDeviceManager(token: number, options?: ContinuationExtraParams): Promise<void>

拉起设备选择模块,可显示组网内可选择设备列表信息,使用Promise方式作为异步方法。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

需要权限:ohos.permission.DISTRIBUTED_DATASYNC

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
tokennumber注册后的token。
optionsContinuationExtraParams过滤可选择设备列表的额外参数,该参数可缺省

返回值:

类型说明
Promise<void>Promise形式返回接口调用结果。

错误码:

以下错误码的详细介绍。

错误码ID错误信息
201Permission denied.
401Parameter error. Possible causes: 1. Incorrect parameter types; 2. Parameter verification failed.
16600001The system ability works abnormally.
16600002The specified token or callback is not registered.

示例:

import { continuationManager } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let token: number = -1;
try {
  continuationManager.startContinuationDeviceManager(
    token,
    {
      deviceType: ["00E"]
    }).then(() => {
      console.info('startContinuationDeviceManager finished. ');
    }).catch((err: BusinessError) => {
      console.error('startContinuationDeviceManager failed, cause: ' + JSON.stringify(err));
    });
} catch (err) {
  console.error('startContinuationDeviceManager failed, cause: ' + JSON.stringify(err));
}

continuationManager.updateConnectStatus(deprecated)

updateConnectStatus(token: number, deviceId: string, status: DeviceConnectState, callback: AsyncCallback<void>): void

通知设备选择模块,更新当前的连接状态,使用AsyncCallback方式作为异步方法。

说明

从API version 9开始不再维护,建议使用updateContinuationState替代。

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
tokennumber注册后的token。
deviceIdstring设备ID。
statusDeviceConnectState设备连接状态。
callbackAsyncCallback<void>回调函数。当通知设备成功,err为undefined,否则返回错误对象。

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = -1;
let deviceId: string = "test deviceId";
continuationManager.updateConnectStatus(token, deviceId, continuationManager.DeviceConnectState.CONNECTED, (err) => {
  if (err.code != 0) {
    console.error('updateConnectStatus failed, cause: ' + JSON.stringify(err));
    return;
  }
  console.info('updateConnectStatus finished. ');
});

continuationManager.updateConnectStatus(deprecated)

updateConnectStatus(token: number, deviceId: string, status: DeviceConnectState): Promise<void>

通知设备选择模块,更新当前的连接状态,使用Promise方式作为异步方法。

说明

从API version 9开始不再维护,建议使用updateContinuationState替代。

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
tokennumber注册后的token。
deviceIdstring设备ID。
statusDeviceConnectState设备连接状态。

返回值:

类型说明
Promise<void>Promise形式返回接口调用结果。

示例:

import { continuationManager } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let token: number = 1;
let deviceId: string = "test deviceId";
continuationManager.updateConnectStatus(token, deviceId, continuationManager.DeviceConnectState.CONNECTED)
  .then(() => {
    console.info('updateConnectStatus finished. ');
  })
  .catch((err: BusinessError) => {
    console.error('updateConnectStatus failed, cause: ' + JSON.stringify(err));
});

continuationManager.updateContinuationState9+

updateContinuationState(token: number, deviceId: string, status: DeviceConnectState, callback: AsyncCallback<void>): void

通知设备选择模块,更新当前的连接状态,使用AsyncCallback方式作为异步方法。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

需要权限:ohos.permission.DISTRIBUTED_DATASYNC

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
tokennumber注册后的token。
deviceIdstring设备ID。
statusDeviceConnectState设备连接状态。
callbackAsyncCallback<void>回调函数。当通知设备成功,err为undefined,否则返回错误对象。

错误码:

以下错误码的详细介绍。

错误码ID错误信息
201Permission denied.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
16600001The system ability works abnormally.
16600002The specified token or callback is not registered.

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = 1;
let deviceId: string = "test deviceId";
try {
  continuationManager.updateContinuationState(token, deviceId, continuationManager.DeviceConnectState.CONNECTED, (err) => {
    if (err.code != 0) {
      console.error('updateContinuationState failed, cause: ' + JSON.stringify(err));
      return;
    }
    console.info('updateContinuationState finished. ');
  });
} catch (err) {
  console.error('updateContinuationState failed, cause: ' + JSON.stringify(err));
}

continuationManager.updateContinuationState9+

updateContinuationState(token: number, deviceId: string, status: DeviceConnectState): Promise<void>

通知设备选择模块,更新当前的连接状态,使用Promise方式作为异步方法。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

需要权限:ohos.permission.DISTRIBUTED_DATASYNC

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
tokennumber注册后的token。
deviceIdstring设备ID。
statusDeviceConnectState设备连接状态。

返回值:

类型说明
Promise<void>Promise形式返回接口调用结果。

错误码:

以下错误码的详细介绍。

错误码ID错误信息
201Permission denied.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
16600001The system ability works abnormally.
16600002The specified token or callback is not registered.

示例:

import { continuationManager } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let token: number = 1;
let deviceId: string = "test deviceId";
try {
continuationManager.updateContinuationState(token, deviceId, continuationManager.DeviceConnectState.CONNECTED)
.then(() => {
console.info('updateContinuationState finished. ');
})
.catch((err: BusinessError) => {
console.error('updateContinuationState failed, cause: ' + JSON.stringify(err));
});
} catch (err) {
console.error('updateContinuationState failed, cause: ' + JSON.stringify(err));
}

continuationManager.unregister(deprecated)

unregister(token: number, callback: AsyncCallback<void>): void

解注册流转管理服务,传入注册时获取的token进行解注册,使用AsyncCallback方式作为异步方法。

说明

从API version 9开始不再维护,建议使用unregisterContinuation替代。

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
tokennumber注册后的token。
callbackAsyncCallback<void>回调函数。当解注册成功,err为undefined,否则返回错误对象。

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = 1;
continuationManager.unregister(token, (err) => {
  if (err.code != 0) {
    console.error('unregister failed, cause: ' + JSON.stringify(err));
    return;
  }
  console.info('unregister finished. ');
});

continuationManager.unregister(deprecated)

unregister(token: number): Promise<void>

解注册流转管理服务,传入注册时获取的token进行解注册,使用Promise方式作为异步方法。

说明

从API version 9开始不再维护,建议使用unregisterContinuation替代。

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
tokennumber注册后的token。

返回值:

类型说明
Promise<void>Promise形式返回接口调用结果。

示例:

import { continuationManager } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let token: number = 1;
continuationManager.unregister(token)
.then(() => {
console.info('unregister finished. ');
}).catch((err: BusinessError) => {
console.error('unregister failed, cause: ' + JSON.stringify(err));
});

continuationManager.unregisterContinuation9+

unregisterContinuation(token: number, callback: AsyncCallback<void>): void

解注册流转管理服务,传入注册时获取的token进行解注册,使用AsyncCallback方式作为异步方法。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

需要权限:ohos.permission.DISTRIBUTED_DATASYNC

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
tokennumber注册后的token。
callbackAsyncCallback<void>回调函数。当解注册成功,err为undefined,否则返回错误对象。

错误码:

以下错误码的详细介绍。

错误码ID错误信息
201Permission denied.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
16600001The system ability works abnormally.
16600002The specified token or callback is not registered.

示例:

import { continuationManager } from '@kit.AbilityKit';

let token: number = 1;
try {
  continuationManager.unregisterContinuation(token, (err) => {
    if (err.code != 0) {
      console.error('unregisterContinuation failed, cause: ' + JSON.stringify(err));
      return;
    }
    console.info('unregisterContinuation finished. ');
  });
} catch (err) {
  console.error('unregisterContinuation failed, cause: ' + JSON.stringify(err));
}

continuationManager.unregisterContinuation9+

unregisterContinuation(token: number): Promise<void>

解注册流转管理服务,传入注册时获取的token进行解注册,使用Promise方式作为异步方法。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

需要权限:ohos.permission.DISTRIBUTED_DATASYNC

系统能力:SystemCapability.Ability.DistributedAbilityManager

参数:

参数名类型必填说明
tokennumber注册后的token。

返回值:

类型说明
Promise<void>Promise形式返回接口调用结果。

错误码:

以下错误码的详细介绍。

错误码ID错误信息
201Permission denied.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
16600001The system ability works abnormally.
16600002The specified token or callback is not registered.

示例:

import { continuationManager } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let token: number = -1;
try {
  continuationManager.unregisterContinuation(token).then(() => {
      console.info('unregisterContinuation finished. ');
    }).catch((err: BusinessError) => {
      console.error('unregisterContinuation failed, cause: ' + JSON.stringify(err));
  });
} catch (err) {
  console.error('unregisterContinuation failed, cause: ' + JSON.stringify(err));
}

DeviceConnectState

设备连接状态。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

系统能力:SystemCapability.Ability.DistributedAbilityManager

名称说明
IDLE0设备连接初始状态。
CONNECTING1设备连接中状态。
CONNECTED2设备已连接状态。
DISCONNECTING3设备断开连接状态。

ContinuationMode

设备选择模块连接模式。

元服务API: 从API version 11开始,该接口支持在元服务中使用。

系统能力:SystemCapability.Ability.DistributedAbilityManager

名称说明
COLLABORATION_SINGLE0设备选择模块单选模式。
COLLABORATION_MULTIPLE1设备选择模块多选模式。

### ERROR 3988: Illegal command syntax 对于“ERROR 3988: Illegal command syntax”错误,一般可从以下方面排查解决: - **检查命令拼写**:要保证输入命令时无拼写错误,涵盖命令关键字、参数名称等。例如留意命令中的字母大小写、特殊字符是否正确。 - **检查命令格式**:不同命令有特定格式要求,需严格按规定格式输入,如命令参数的顺序、数量,是否需要特定分隔符等。 - **查看命令文档**:查阅Evolver的官方文档,了解该命令的正确使用方法和适用场景,确认输入的命令是否符合要求。 - **检查环境配置**:某些命令的正常使用可能依赖于特定的环境配置,如变量设置、文件路径等,需检查这些环境配置是否正确。 ### ERROR 3659: Illegal backslash. Backslash is line continuation character “ERROR 3659: Illegal backslash. Backslash is line continuation character”错误表明反斜杠使用不当,反斜杠在Evolver里是行延续字符。可参考以下解决办法: - **检查反斜杠使用**:确认在命令中反斜杠是否用在了正确位置,是否符合行延续的规则。比如,若在不需要行延续的地方使用了反斜杠,就会引发此错误。 - **检查代码换行处**:当代码换行时,要保证反斜杠正确使用以延续命令。若换行处反斜杠缺失或多余,都可能导致错误。 示例代码(假设是简单的命令检查): ```python def check_commands(command): if "ERROR 3988" in command: print("请检查命令的拼写和格式是否正确。") elif "ERROR 3659" in command: print("请检查反斜杠的使用是否正确。") return command user_command = "evolver some_command ERROR 3988: Illegal command syntax" checked_command = check_commands(user_command) ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值