openharmony 鸿蒙 js-apis-distributed-abilityConnectionManager

2025-06-12 浏览 (1)

@ohos.distributedsched.abilityConnectionManager (Cross-Device Connection Management)

The abilityConnectionManager module provides APIs for cross-device connection management. After successful networking between devices (login with the same account and enabling of Bluetooth on the devices), a system application and a third-party application can start a UIAbility of the same application across these devices to establish a Bluetooth connection. This way, data (specifically, text) can be transmitted across the devices over the connection.

NOTE

The initial APIs of this module are supported since API version 18. Newly added APIs will be marked with a superscript to indicate their earliest API version.

Modules to Import

import { abilityConnectionManager } from '@kit.DistributedServiceKit';

abilityConnectionManager.createAbilityConnectionSession

createAbilityConnectionSession(serviceName: string, context: Context, peerInfo: PeerInfo , connectOptions: ConnectOptions): number

Creates a collaboration session between applications.

Required permissions: ohos.permission.INTERNET, ohos.permission.GET_NETWORK_INFO, ohos.permission.SET_NETWORK_INFO, and ohos.permission.DISTRIBUTED_DATASYNC

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
serviceNamestringYesService name for the application. The service name must be the same on the local end and peer end. The value contains a maximum of 256 characters.
contextContextYesApplication context.
peerInfoPeerInfoYesCollaboration information of the peer end.
connectOptionsConnectOptionsYesConnection options for the application.

Return value

TypeDescription
numberID of the collaboration session.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
201Permission denied.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

  1. On device A, an application calls createAbilityConnectionSession() to create a collaboration session and return the session ID.

    import { abilityConnectionManager, distributedDeviceManager } from '@kit.DistributedServiceKit';
    import { common } from '@kit.AbilityKit';
    import { hilog } from '@kit.PerformanceAnalysisKit';
    
    let dmClass: distributedDeviceManager.DeviceManager;
    
    function initDmClass(): void {
      try {
        dmClass = distributedDeviceManager.createDeviceManager('com.example.remotephotodemo');
      } catch (err) {
        hilog.error(0x0000, 'testTag', 'createDeviceManager err: ' + JSON.stringify(err));
      }
    }
    
    function getRemoteDeviceId(): string|undefined {
      initDmClass();
      if (typeof dmClass === 'object' && dmClass !== null) {
        hilog.info(0x0000, 'testTag', 'getRemoteDeviceId begin');
        let list = dmClass.getAvailableDeviceListSync();
        if (typeof (list) === 'undefined'||typeof (list.length) === 'undefined') {
          hilog.info(0x0000, 'testTag', 'getRemoteDeviceId err: list is null');
          return;
        }
        if (list.length === 0) {
          hilog.info(0x0000, 'testTag', 'getRemoteDeviceId err: list is empty');
          return;
        }
        return list[0].networkId;
      } else {
        hilog.info(0x0000, 'testTag', 'getRemoteDeviceId err: dmClass is null');
        return;
      }
    }
    
    @Entry
    @Component
    struct Index {
      createSession(): void {
        // Define peer device information.
        const peerInfo: abilityConnectionManager.PeerInfo = {
          deviceId: "sinkDeviceId",
          bundleName: 'com.example.remotephotodemo',
          moduleName: 'entry',
          abilityName: 'EntryAbility',
          serviceName: 'collabTest'
        };
        const myRecord: Record<string, string> = {
          "newKey1": "value1",
        };
    
        // Define connection options.
        const connectOptions: abilityConnectionManager.ConnectOptions = {
          needSendData: true,
          startOptions: abilityConnectionManager.StartOptionParams.START_IN_FOREGROUND,
          parameters: myRecord
        };
        let context = this.getUIContext().getHostContext();
        try {
          let sessionId = abilityConnectionManager.createAbilityConnectionSession("collabTest", context, peerInfo, connectOptions);
          hilog.info(0x0000, 'testTag', 'createSession sessionId is', sessionId);
        } catch (error) {
          hilog.error(0x0000, 'testTag', error);
        }
      }
    
      build() {
      }
    }
    
  2. On device B, createAbilityConnectionSession can be called in onCollaborate, which is triggered when the application is started.

    import { AbilityConstant, UIAbility, Want } from '@kit.AbilityKit';
    import { abilityConnectionManager } from '@kit.DistributedServiceKit';
    import { hilog } from '@kit.PerformanceAnalysisKit';
    
    export default class EntryAbility extends UIAbility {
      onCollaborate(wantParam: Record<string, Object>): AbilityConstant.CollaborateResult {
        hilog.info(0x0000, 'testTag', '%{public}s', 'on collaborate');
        let param = wantParam["ohos.extra.param.key.supportCollaborateIndex"] as Record<string, Object>
        this.onCollab(param);
        return 0;
      }
    
      onCollab(collabParam: Record<string, Object>) {
        const sessionId = this.createSessionFromWant(collabParam);
        if (sessionId == -1) {
          hilog.info(0x0000, 'testTag', 'Invalid session ID.');
          return;
        }
      }
    
      createSessionFromWant(collabParam: Record<string, Object>): number {
        let sessionId = -1;
        const peerInfo = collabParam["PeerInfo"] as abilityConnectionManager.PeerInfo;
        if (peerInfo == undefined) {
          return sessionId;
        }
    
        const options = collabParam["ConnectOptions"] as abilityConnectionManager.ConnectOptions;
        try {
          sessionId = abilityConnectionManager.createAbilityConnectionSession("collabTest", this.context, peerInfo, options);
          AppStorage.setOrCreate('sessionId', sessionId);
          hilog.info(0x0000, 'testTag', 'createSession sessionId is' + sessionId);
        } catch (error) {
          hilog.error(0x0000, 'testTag', error);
        }
        return sessionId;
      }
    }
    

abilityConnectionManager.destroyAbilityConnectionSession

destroyAbilityConnectionSession(sessionId: number): void

Destroys a collaboration session between applications.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
sessionIdnumberYesCollaboration session ID.

Example

import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

hilog.info(0x0000, 'testTag', 'destroyAbilityConnectionSession called');
let sessionId = 100;
abilityConnectionManager.destroyAbilityConnectionSession(sessionId);

abilityConnectionManager.getPeerInfoById

getPeerInfoById(sessionId: number): PeerInfo | undefined

Obtains information about the peer application in the specified session.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
sessionIdnumberYesID of the collaboration session.

Return value

TypeDescription
PeerInfoInformation about the peer application.
undefinedUnknown situation.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.

Example

import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

hilog.info(0x0000, 'testTag', 'getPeerInfoById called');
let sessionId = 100;
const peerInfo = abilityConnectionManager.getPeerInfoById(sessionId);

abilityConnectionManager.connect

connect(sessionId: number): Promise<ConnectResult>

Sets up a UIAbility connection after a collaboration session is created and the session ID is obtained.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
sessionIdnumberYesID of the collaboration session.

Return value

TypeDescription
Promise<ConnectResult>Promise used to return the connection result.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

After an application sets up a collaboration session and obtains the session ID on device A, it calls connect() to set up a UIAbility connection and start the application on device B.

import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

let sessionId = 100;
abilityConnectionManager.connect(sessionId).then((ConnectResult) => {
  if (!ConnectResult.isConnected) {
    hilog.info(0x0000, 'testTag', 'connect failed');
    return;
  }
}).catch(() => {
  hilog.error(0x0000, 'testTag', "connect failed");
})

abilityConnectionManager.acceptConnect

acceptConnect(sessionId: number, token: string): Promise<void>

Accepts the UIAbility connection after a collaboration session is set up and the session ID is obtained.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
sessionIdnumberYesID of the collaboration session.
tokenstringYesToken value passed by the application on device A.

Return value

TypeDescription
Promise<void>Promise that returns no value.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

After createAbilityConnectionSession is called on device A to create a collaboration session and the session ID is obtained, the application on device B can call acceptConnect to accept the connection.

import { AbilityConstant, UIAbility, Want } from '@kit.AbilityKit';
import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

export default class EntryAbility extends UIAbility {
  onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate');
  }

  onCollaborate(wantParam: Record<string, Object>): AbilityConstant.CollaborateResult {
    hilog.info(0x0000, 'testTag', '%{public}s', 'on collaborate');
    let param = wantParam["ohos.extra.param.key.supportCollaborateIndex"] as Record<string, Object>
    this.onCollab(param);
    return 0;
  }

  onCollab(collabParam: Record<string, Object>) {
    const sessionId = this.createSessionFromWant(collabParam);
    if (sessionId == -1) {
      hilog.info(0x0000, 'testTag', 'Invalid session ID.');
      return;
    }
    const collabToken = collabParam["ohos.dms.collabToken"] as string;
    abilityConnectionManager.acceptConnect(sessionId, collabToken).then(() => {
      hilog.info(0x0000, 'testTag', 'acceptConnect success');
    }).catch(() => {
      hilog.error(0x0000, 'testTag', 'failed'); 
    })
  }

  createSessionFromWant(collabParam: Record<string, Object>): number {
    let sessionId = -1;
    const peerInfo = collabParam["PeerInfo"] as abilityConnectionManager.PeerInfo;
    if (peerInfo == undefined) {
      return sessionId;
    }

    const options = collabParam["ConnectOptions"] as abilityConnectionManager.ConnectOptions;
    try {
      sessionId = abilityConnectionManager.createAbilityConnectionSession("collabTest", this.context, peerInfo, options);
      AppStorage.setOrCreate('sessionId', sessionId);
      hilog.info(0x0000, 'testTag', 'createSession sessionId is' + sessionId);
    } catch (error) {
      hilog.error(0x0000, 'testTag', error);
    }
    return sessionId;
  }
}

abilityConnectionManager.disconnect

disconnect(sessionId: number): void

Disconnects the UIAbility connection to end the collaboration session.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
sessionIdnumberYesID of the collaboration session.

Example

import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

hilog.info(0x0000, 'testTag', 'disconnectRemoteAbility begin');
let sessionId = 100;
abilityConnectionManager.disconnect(sessionId);

abilityConnectionManager.reject

reject(token: string, reason: string): void;

Rejects a connection request in a cross-device collaboration session. After a connection request sent from the peer application is rejected, a rejection reason is returned.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
tokenstringYesToken used for application collaboration management.
reasonstringYesReason why the connection is rejected.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

import { AbilityConstant, UIAbility, Want} from '@kit.AbilityKit';
import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

export default class EntryAbility extends UIAbility {
    onCollaborate(wantParam: Record<string, Object>): AbilityConstant.CollaborateResult {
      hilog.info(0x0000, 'testTag', '%{public}s', 'on collaborate');
      let collabParam = wantParam["ohos.extra.param.key.supportCollaborateIndex"] as Record<string, Object>;
      const collabToken = collabParam["ohos.dms.collabToken"] as string;
      const reason = "test";
      hilog.info(0x0000, 'testTag', 'reject begin');
      abilityConnectionManager.reject(collabToken, reason);
      return AbilityConstant.CollaborateResult.REJECT;
    }
}

abilityConnectionManager.on('connect')

on(type: 'connect', sessionId: number, callback: Callback<EventCallbackInfo>): void

Enables listening for connect events.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of connect. This event is triggered when abilityConnectionManager.connect() is called.
sessionIdnumberYesID of the collaboration session.
callbackCallback<EventCallbackInfo>YesRegistered callback function.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

let sessionId = 100;
abilityConnectionManager.on("connect", sessionId,(callbackInfo) => {
  hilog.info(0x0000, 'testTag', 'session connect, sessionId is', callbackInfo.sessionId);
});

abilityConnectionManager.off('connect')

off(type: 'connect', sessionId: number, callback?: Callback<EventCallbackInfo>): void

Disables listening for connect events.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of connect.
sessionIdnumberYesID of the collaboration session.
callbackCallback<EventCallbackInfo>NoRegistered callback function.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

let sessionId = 100;
abilityConnectionManager.off("connect", sessionId);

abilityConnectionManager.on('disconnect')

on(type: 'disconnect', sessionId: number, callback: Callback<EventCallbackInfo>): void

Enables listening for disconnect events.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of disconnect. This event is triggered when abilityConnectionManager.disconnect() is called.
sessionIdnumberYesID of the collaboration session.
callbackCallback<EventCallbackInfo>YesRegistered callback function.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

let sessionId = 100;
abilityConnectionManager.on("disconnect", sessionId,(callbackInfo) => {
  hilog.info(0x0000, 'testTag', 'session disconnect, sessionId is', callbackInfo.sessionId);
});

abilityConnectionManager.off('disconnect')

off(type: 'disconnect', sessionId: number, callback?: Callback<EventCallbackInfo>): void

Disables listening for disconnect events.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of disconnect.
sessionIdnumberYesID of the collaboration session.
callbackCallback<EventCallbackInfo>NoRegistered callback function.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

let sessionId = 100;
abilityConnectionManager.off("disconnect", sessionId);

abilityConnectionManager.on('receiveMessage')

on(type: 'receiveMessage', sessionId: number, callback: Callback<EventCallbackInfo>): void

Enables listening for receiveMessage events.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of receiveMessage. This event is triggered when abilityConnectionManager.sendMessage() is called.
sessionIdnumberYesID of the collaboration session.
callbackCallback<EventCallbackInfo>YesRegistered callback function.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

let sessionId = 100;
abilityConnectionManager.on("receiveMessage", sessionId,(callbackInfo) => {
  hilog.info(0x0000, 'testTag', 'receiveMessage, sessionId is', callbackInfo.sessionId);
});

abilityConnectionManager.off('receiveMessage')

off(type: 'receiveMessage', sessionId: number, callback?: Callback<EventCallbackInfo>): void

Disables listening for receiveMessage events.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of receiveMessage.
sessionIdnumberYesID of the collaboration session.
callbackCallback<EventCallbackInfo>NoRegistered callback function.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

let sessionId = 100;
abilityConnectionManager.off("receiveMessage", sessionId);

abilityConnectionManager.on('receiveData')

on(type: 'receiveData', sessionId: number, callback: Callback<EventCallbackInfo>): void

Enables listening for receiveData events.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of receiveData. This event is triggered when abilityConnectionManager.sendData() is called.
sessionIdnumberYesID of the collaboration session.
callbackCallback<EventCallbackInfo>YesRegistered callback function.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

let sessionId = 100;
abilityConnectionManager.on("receiveData", sessionId,(callbackInfo) => {
  hilog.info(0x0000, 'testTag', 'receiveData, sessionId is', callbackInfo.sessionId);
});

abilityConnectionManager.off('receiveData')

off(type: 'receiveData', sessionId: number, callback?: Callback<EventCallbackInfo>): void

Disables listening for receiveData events.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of receiveData.
sessionIdnumberYesID of the collaboration session.
callbackCallback<EventCallbackInfo>NoRegistered callback function.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

let sessionId = 100;
abilityConnectionManager.off("receiveData", sessionId);

abilityConnectionManager.sendMessage

sendMessage(sessionId: number, msg: string): Promise<void>

Sends text messages after a collaboration session is set up.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
sessionIdnumberYesID of the collaboration session.
msgstringYesText content. The maximum size of the text content is 1 KB.

Return value

TypeDescription
Promise<void>Promise that returns no value.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

let sessionId = 100;
abilityConnectionManager.sendMessage(sessionId, "message send success").then(() => {
  hilog.info(0x0000, 'testTag', "sendMessage success");
}).catch(() => {
  hilog.error(0x0000, 'testTag', "connect failed");
})

abilityConnectionManager.sendData

sendData(sessionId: number, data: ArrayBuffer): Promise<void>

Sends ArrayBuffer byte streams from one device to another after a connection is successfully established.

System capability: SystemCapability.DistributedSched.AppCollaboration

Parameters

NameTypeMandatoryDescription
sessionIdnumberYesID of the collaboration session.
dataArrayBufferYesByte stream information.

Return value

TypeDescription
Promise<void>Promise that returns no value.

Error codes

For details about the error codes, see Universal Error Codes.

IDError Message
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

import { abilityConnectionManager } from '@kit.DistributedServiceKit';
import { hilog } from '@kit.PerformanceAnalysisKit';
import { util } from '@kit.ArkTS';

let textEncoder = util.TextEncoder.create("utf-8");
const arrayBuffer  = textEncoder.encodeInto("data send success");

let sessionId = 100;
abilityConnectionManager.sendData(sessionId, arrayBuffer.buffer).then(() => {
  hilog.info(0x0000, 'testTag', "sendMessage success");
}).catch(() => {
  hilog.info(0x0000, 'testTag', "sendMessage failed");
})

PeerInfo

Defines the application collaboration information.

System capability: SystemCapability.DistributedSched.AppCollaboration

NameTypeRead OnlyOptionalDescription
deviceIdstringYesYesPeer device ID.
bundleNamestringYesYesBundle name of the application.
moduleNamestringYesYesModule name of the peer application.
abilityNamestringYesYesAbility name of the peer application.
serviceNamestringYesNoService name for the application.

ConnectOptions

Connection options for the application.

System capability: SystemCapability.DistributedSched.AppCollaboration

NameTypeRead OnlyOptionalDescription
needSendDatabooleanNoNoWhether to send data. The value true indicates that data needs to be sent, and the value false indicates the opposite.
startOptionsStartOptionParamsNoNoApplication startup options.
parametersRecord<string, string>NoNoAdditional configuration for the connection.

ConnectResult

Defines the connection result.

System capability: SystemCapability.DistributedSched.AppCollaboration

NameTypeRead OnlyOptionalDescription
isConnectedbooleanYesYesWhether the connection is successful. The value true indicates that the connection is successful, and the value false indicates the opposite.
errorCodeConnectErrorCodeYesNoConnection error code.
reasonstringYesNoConnection rejection reason.

EventCallbackInfo

Defines the event callback information.

System capability: SystemCapability.DistributedSched.AppCollaboration

NameTypeReadableWritableDescription
sessionIdnumberYesYesCollaboration session ID.
reasonDisconnectReasonYesNoDisconnection reason.
msgstringYesNoReceived message.
dataArrayBufferYesNoReceived byte stream.

CollaborateEventInfo

Collaboration event information.

System capability: SystemCapability.DistributedSched.AppCollaboration

NameTypeRead OnlyOptionalDescription
eventTypeCollaborateEventTypeYesYesCollaboration event type.
eventMsgstringYesNoContent of a collaboration event.

ConnectErrorCode

Enumerates connection error codes.

System capability: SystemCapability.DistributedSched.AppCollaboration

NameValueDescription
CONNECTED_SESSION_EXISTS0A session already exists between applications.
PEER_APP_REJECTED1The peer application rejects the collaboration request.
LOCAL_WIFI_NOT_OPEN2Wi-Fi is disabled at the local end.
PEER_WIFI_NOT_OPEN3Wi-Fi is disabled at the peer end.
PEER_ABILITY_NO_ONCOLLABORATE4The onCollaborate callback is not implemented.
SYSTEM_INTERNAL_ERROR5An internal system error occurs.

StartOptionParams

Enumerates application start options.

System capability: SystemCapability.DistributedSched.AppCollaboration

NameValueDescription
START_IN_FOREGROUND0Start of the peer application in the foreground.

CollaborateEventType

Enumerates collaboration event types.

System capability: SystemCapability.DistributedSched.AppCollaboration

NameValueDescription
SEND_FAILURE0Task sending failure.
COLOR_SPACE_CONVERSION_FAILURE1Color space conversion failure.

DisconnectReason

Enumerates the disconnection reasons.

System capability: SystemCapability.DistributedSched.AppCollaboration

NameValueDescription
PEER_APP_CLOSE_COLLABORATION0The peer application proactively disables collaboration.
PEER_APP_EXIT1The peer application exits.
NETWORK_DISCONNECTED2The network is disconnected.

CollaborationKeys

Enumerates application collaboration key values.

System capability: SystemCapability.DistributedSched.AppCollaboration

NameValueDescription
PEER_INFOohos.collaboration.key.peerInfoKey value of the peer device information.
CONNECT_OPTIONSohos.collaboration.key.connectOptionsKey value of the connection option.
COLLABORATE_TYPEohos.collaboration.key.abilityCollaborateTypeKey value of the collaboration type.

CollaborationValues

Enumerates application collaboration values.

System capability: SystemCapability.DistributedSched.AppCollaboration

NameValueDescription
ABILITY_COLLABORATION_TYPE_DEFAULTohos.collaboration.value.abilityCollabDefault collaboration.
ABILITY_COLLABORATION_TYPE_CONNECT_PROXYohos.collaboration.value.connectProxyCollaboration via connection proxy.

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Distributed Service Kit (Distributed Management Service)

harmony 鸿蒙DeviceManager

harmony 鸿蒙oh_device_manager_err_code.h

harmony 鸿蒙oh_device_manager.h

harmony 鸿蒙Device Management Error Codes

harmony 鸿蒙Screen Hopping Error Codes

harmony 鸿蒙Link Enhancement Error Codes

harmony 鸿蒙@ohos.distributedHardware.deviceManager (Device Management) (System API)

harmony 鸿蒙@ohos.cooperate (Screen Hopping) (System API)

harmony 鸿蒙@ohos.distributedsched.abilityConnectionManager (Cross-Device Connection Management) (System API)

  • 所属分类: 后端技术
  • 本文标签: 软件 鸿蒙
  • 版权声明: 本文链接 https://seaxiang.com/blog/aV6vST