1e41f4b71Sopenharmony_ci# @ohos.cooperate (键鼠穿越)(系统接口) 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci键鼠穿越功能模块,提供两台或多台设备组网协同后键鼠共享能力,实现键鼠输入设备的跨设备协同操作。 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ci> **说明** 6e41f4b71Sopenharmony_ci> 7e41f4b71Sopenharmony_ci> - 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8e41f4b71Sopenharmony_ci> 9e41f4b71Sopenharmony_ci> - 本模块接口均为系统接口。 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ci## 导入模块 12e41f4b71Sopenharmony_ci 13e41f4b71Sopenharmony_ci```ts 14e41f4b71Sopenharmony_ciimport cooperate from '@ohos.cooperate'; 15e41f4b71Sopenharmony_ci``` 16e41f4b71Sopenharmony_ci 17e41f4b71Sopenharmony_ci## cooperate.prepareCooperate<sup>11+</sup> 18e41f4b71Sopenharmony_ci 19e41f4b71Sopenharmony_ciprepareCooperate(callback: AsyncCallback<void>): void; 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ci准备键鼠穿越,使用Callback异步回调。 22e41f4b71Sopenharmony_ci 23e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.COOPERATE_MANAGER 24e41f4b71Sopenharmony_ci 25e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 26e41f4b71Sopenharmony_ci 27e41f4b71Sopenharmony_ci**参数**: 28e41f4b71Sopenharmony_ci 29e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 30e41f4b71Sopenharmony_ci| -------- | ------------------------- | ---- | ------------------------------------------------------------ | 31e41f4b71Sopenharmony_ci| callback | AsyncCallback<void> | 是 | 回调函数,准备键鼠穿越成功时,err为undefined,否则为错误对象。 | 32e41f4b71Sopenharmony_ci 33e41f4b71Sopenharmony_ci**错误码:** 34e41f4b71Sopenharmony_ci 35e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 36e41f4b71Sopenharmony_ci 37e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 38e41f4b71Sopenharmony_ci| -------- | ----------------- | 39e41f4b71Sopenharmony_ci| 201 | Permission denied. | 40e41f4b71Sopenharmony_ci| 202 | Not system application. | 41e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 42e41f4b71Sopenharmony_ci 43e41f4b71Sopenharmony_ci示例: 44e41f4b71Sopenharmony_ci 45e41f4b71Sopenharmony_ci```ts 46e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 47e41f4b71Sopenharmony_citry { 48e41f4b71Sopenharmony_ci cooperate.prepareCooperate((error: BusinessError) => { 49e41f4b71Sopenharmony_ci if (error) { 50e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing prepareCooperate failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 51e41f4b71Sopenharmony_ci return; 52e41f4b71Sopenharmony_ci } 53e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing prepareCooperate success.`); 54e41f4b71Sopenharmony_ci }); 55e41f4b71Sopenharmony_ci} catch (error) { 56e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing prepareCooperate failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 57e41f4b71Sopenharmony_ci} 58e41f4b71Sopenharmony_ci``` 59e41f4b71Sopenharmony_ci 60e41f4b71Sopenharmony_ci## cooperate.prepareCooperate<sup>11+</sup> 61e41f4b71Sopenharmony_ci 62e41f4b71Sopenharmony_ciprepareCooperate(): Promise<void>; 63e41f4b71Sopenharmony_ci 64e41f4b71Sopenharmony_ci准备键鼠穿越,使用Promise异步方式返回结果。 65e41f4b71Sopenharmony_ci 66e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.COOPERATE_MANAGER 67e41f4b71Sopenharmony_ci 68e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 69e41f4b71Sopenharmony_ci 70e41f4b71Sopenharmony_ci**返回值:** 71e41f4b71Sopenharmony_ci 72e41f4b71Sopenharmony_ci| 参数 | 说明 | 73e41f4b71Sopenharmony_ci| ------------------- | ------------------------- | 74e41f4b71Sopenharmony_ci| Promise<void> | 无返回结果的Promise对象。 | 75e41f4b71Sopenharmony_ci 76e41f4b71Sopenharmony_ci**错误码:** 77e41f4b71Sopenharmony_ci 78e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 79e41f4b71Sopenharmony_ci 80e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 81e41f4b71Sopenharmony_ci| -------- | ----------------- | 82e41f4b71Sopenharmony_ci| 201 | Permission denied. | 83e41f4b71Sopenharmony_ci| 202 | Not system application. | 84e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 85e41f4b71Sopenharmony_ci 86e41f4b71Sopenharmony_ci**示例**: 87e41f4b71Sopenharmony_ci 88e41f4b71Sopenharmony_ci```ts 89e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 90e41f4b71Sopenharmony_citry { 91e41f4b71Sopenharmony_ci cooperate.prepareCooperate().then(() => { 92e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing prepareCooperate success.`); 93e41f4b71Sopenharmony_ci }, (error: BusinessError) => { 94e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing prepareCooperate failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 95e41f4b71Sopenharmony_ci }); 96e41f4b71Sopenharmony_ci} catch (error) { 97e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing prepareCooperate failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 98e41f4b71Sopenharmony_ci} 99e41f4b71Sopenharmony_ci``` 100e41f4b71Sopenharmony_ci 101e41f4b71Sopenharmony_ci 102e41f4b71Sopenharmony_ci 103e41f4b71Sopenharmony_ci## cooperate.unprepareCooperate<sup>11+</sup> 104e41f4b71Sopenharmony_ci 105e41f4b71Sopenharmony_ciunprepareCooperate(callback: AsyncCallback<void>): void; 106e41f4b71Sopenharmony_ci 107e41f4b71Sopenharmony_ci取消键鼠穿越准备,使用Callback异步回调。 108e41f4b71Sopenharmony_ci 109e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.COOPERATE_MANAGER 110e41f4b71Sopenharmony_ci 111e41f4b71Sopenharmony_ci**系统能力**: SystemCapability.Msdp.DeviceStatus.Cooperate 112e41f4b71Sopenharmony_ci 113e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 114e41f4b71Sopenharmony_ci| -------- | ------------------------- | ---- | ------------------------------------------------------------ | 115e41f4b71Sopenharmony_ci| callback | AsyncCallback<void> | 是 | 回调函数,取消键鼠穿越准备成功时,err为undefined,否则为错误对象。 | 116e41f4b71Sopenharmony_ci 117e41f4b71Sopenharmony_ci**错误码:** 118e41f4b71Sopenharmony_ci 119e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 120e41f4b71Sopenharmony_ci 121e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 122e41f4b71Sopenharmony_ci| -------- | ----------------- | 123e41f4b71Sopenharmony_ci| 201 | Permission denied. | 124e41f4b71Sopenharmony_ci| 202 | Not system application. | 125e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 126e41f4b71Sopenharmony_ci 127e41f4b71Sopenharmony_ci**示例:** 128e41f4b71Sopenharmony_ci 129e41f4b71Sopenharmony_ci```ts 130e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 131e41f4b71Sopenharmony_citry { 132e41f4b71Sopenharmony_ci cooperate.unprepareCooperate((error: BusinessError) => { 133e41f4b71Sopenharmony_ci if (error) { 134e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing unprepareCooperate failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 135e41f4b71Sopenharmony_ci return; 136e41f4b71Sopenharmony_ci } 137e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing unprepareCooperate success.`); 138e41f4b71Sopenharmony_ci }); 139e41f4b71Sopenharmony_ci} catch (error) { 140e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing unprepareCooperate failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 141e41f4b71Sopenharmony_ci} 142e41f4b71Sopenharmony_ci``` 143e41f4b71Sopenharmony_ci 144e41f4b71Sopenharmony_ci## cooperate.unprepareCooperate<sup>11+</sup> 145e41f4b71Sopenharmony_ci 146e41f4b71Sopenharmony_ciunprepareCooperate(): Promise<void>; 147e41f4b71Sopenharmony_ci 148e41f4b71Sopenharmony_ci取消键鼠穿越准备,使用Promise异步回调。 149e41f4b71Sopenharmony_ci 150e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.COOPERATE_MANAGER 151e41f4b71Sopenharmony_ci 152e41f4b71Sopenharmony_ci**系统能力**: SystemCapability.Msdp.DeviceStatus.Cooperate 153e41f4b71Sopenharmony_ci 154e41f4b71Sopenharmony_ci**返回值:** 155e41f4b71Sopenharmony_ci 156e41f4b71Sopenharmony_ci| 参数 | 说明 | 157e41f4b71Sopenharmony_ci| ------------------- | ------------------------- | 158e41f4b71Sopenharmony_ci| Promise<void> | 无返回结果的Promise对象。 | 159e41f4b71Sopenharmony_ci 160e41f4b71Sopenharmony_ci**错误码:** 161e41f4b71Sopenharmony_ci 162e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 163e41f4b71Sopenharmony_ci 164e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 165e41f4b71Sopenharmony_ci| -------- | ----------------- | 166e41f4b71Sopenharmony_ci| 201 | Permission denied. | 167e41f4b71Sopenharmony_ci| 202 | Not system application. | 168e41f4b71Sopenharmony_ci 169e41f4b71Sopenharmony_ci**示例:** 170e41f4b71Sopenharmony_ci 171e41f4b71Sopenharmony_ci```ts 172e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 173e41f4b71Sopenharmony_citry { 174e41f4b71Sopenharmony_ci cooperate.unprepareCooperate().then(() => { 175e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing unprepareCooperate success.`); 176e41f4b71Sopenharmony_ci }, (error: BusinessError) => { 177e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing unprepareCooperate failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 178e41f4b71Sopenharmony_ci }); 179e41f4b71Sopenharmony_ci} catch (error) { 180e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing unprepareCooperate failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 181e41f4b71Sopenharmony_ci} 182e41f4b71Sopenharmony_ci``` 183e41f4b71Sopenharmony_ci 184e41f4b71Sopenharmony_ci 185e41f4b71Sopenharmony_ci 186e41f4b71Sopenharmony_ci## cooperate.activateCooperate<sup>11+</sup> 187e41f4b71Sopenharmony_ci 188e41f4b71Sopenharmony_ciactivateCooperate(targetNetworkId: string, inputDeviceId: number, callback: AsyncCallback<void>): void; 189e41f4b71Sopenharmony_ci 190e41f4b71Sopenharmony_ci启动键鼠穿越,使用Callback异步回调。 191e41f4b71Sopenharmony_ci 192e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.COOPERATE_MANAGER 193e41f4b71Sopenharmony_ci 194e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 195e41f4b71Sopenharmony_ci 196e41f4b71Sopenharmony_ci**参数:** 197e41f4b71Sopenharmony_ci 198e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 199e41f4b71Sopenharmony_ci| --------------- | ------------------------- | ---- | ------------------------------------------------------------ | 200e41f4b71Sopenharmony_ci| targetNetworkId | string | 是 | 键鼠穿越目标设备描述符。 | 201e41f4b71Sopenharmony_ci| inputDeviceId | number | 是 | 待穿越输入设备标识符。 | 202e41f4b71Sopenharmony_ci| callback | AsyncCallback<void> | 是 | 回调函数,键鼠穿越启动成功时,err为undefined,否则为错误对象。 | 203e41f4b71Sopenharmony_ci 204e41f4b71Sopenharmony_ci**错误码:** 205e41f4b71Sopenharmony_ci 206e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 207e41f4b71Sopenharmony_ci 208e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 209e41f4b71Sopenharmony_ci| -------- | ----------------- | 210e41f4b71Sopenharmony_ci| 201 | Permission denied. | 211e41f4b71Sopenharmony_ci| 202 | Not system application. | 212e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 213e41f4b71Sopenharmony_ci| 20900001 | Operation failed. | 214e41f4b71Sopenharmony_ci 215e41f4b71Sopenharmony_ci**示例:** 216e41f4b71Sopenharmony_ci 217e41f4b71Sopenharmony_ci```ts 218e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 219e41f4b71Sopenharmony_cilet targetNetworkId = "networkId"; 220e41f4b71Sopenharmony_cilet inputDeviceId = 0; 221e41f4b71Sopenharmony_citry { 222e41f4b71Sopenharmony_ci cooperate.activateCooperate(targetNetworkId, inputDeviceId, (error: BusinessError) => { 223e41f4b71Sopenharmony_ci if (error) { 224e41f4b71Sopenharmony_ci console.log(`Start Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 225e41f4b71Sopenharmony_ci return; 226e41f4b71Sopenharmony_ci } 227e41f4b71Sopenharmony_ci console.log(`Start Keyboard mouse crossing success.`); 228e41f4b71Sopenharmony_ci }); 229e41f4b71Sopenharmony_ci} catch (error) { 230e41f4b71Sopenharmony_ci console.log(`Start Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 231e41f4b71Sopenharmony_ci} 232e41f4b71Sopenharmony_ci``` 233e41f4b71Sopenharmony_ci 234e41f4b71Sopenharmony_ci## cooperate.activateCooperate<sup>11+</sup> 235e41f4b71Sopenharmony_ci 236e41f4b71Sopenharmony_ciactivateCooperate(targetNetworkId: string, inputDeviceId: number): Promise<void>; 237e41f4b71Sopenharmony_ci 238e41f4b71Sopenharmony_ci启动键鼠穿越,使用Promise异步回调。 239e41f4b71Sopenharmony_ci 240e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.COOPERATE_MANAGER 241e41f4b71Sopenharmony_ci 242e41f4b71Sopenharmony_ci**系统能力**: SystemCapability.Msdp.DeviceStatus.Cooperate 243e41f4b71Sopenharmony_ci 244e41f4b71Sopenharmony_ci**参数:** 245e41f4b71Sopenharmony_ci 246e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 247e41f4b71Sopenharmony_ci| --------------- | ------ | ---- | ------------------------ | 248e41f4b71Sopenharmony_ci| targetNetworkId | string | 是 | 键鼠穿越目标设备描述符。 | 249e41f4b71Sopenharmony_ci| inputDeviceId | number | 是 | 待穿越输入设备标识符。 | 250e41f4b71Sopenharmony_ci 251e41f4b71Sopenharmony_ci**返回值:** 252e41f4b71Sopenharmony_ci 253e41f4b71Sopenharmony_ci| 参数名 | 说明 | 254e41f4b71Sopenharmony_ci| ------------------- | ------------------------- | 255e41f4b71Sopenharmony_ci| Promise<void> | 无返回结果的Promise对象。 | 256e41f4b71Sopenharmony_ci 257e41f4b71Sopenharmony_ci**错误码:** 258e41f4b71Sopenharmony_ci 259e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 260e41f4b71Sopenharmony_ci 261e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 262e41f4b71Sopenharmony_ci| -------- | ----------------- | 263e41f4b71Sopenharmony_ci| 201 | Permission denied. | 264e41f4b71Sopenharmony_ci| 202 | Not system application. | 265e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 266e41f4b71Sopenharmony_ci| 20900001 | Operation failed. | 267e41f4b71Sopenharmony_ci 268e41f4b71Sopenharmony_ci**示例:** 269e41f4b71Sopenharmony_ci 270e41f4b71Sopenharmony_ci```ts 271e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 272e41f4b71Sopenharmony_cilet targetNetworkId = "networkId"; 273e41f4b71Sopenharmony_cilet inputDeviceId = 0; 274e41f4b71Sopenharmony_citry { 275e41f4b71Sopenharmony_ci cooperate.activateCooperate(targetNetworkId, inputDeviceId).then(() => { 276e41f4b71Sopenharmony_ci console.log(`Start Keyboard mouse crossing success.`); 277e41f4b71Sopenharmony_ci }, (error: BusinessError) => { 278e41f4b71Sopenharmony_ci console.log(`Start Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 279e41f4b71Sopenharmony_ci }); 280e41f4b71Sopenharmony_ci} catch (error) { 281e41f4b71Sopenharmony_ci console.log(`Start Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 282e41f4b71Sopenharmony_ci} 283e41f4b71Sopenharmony_ci``` 284e41f4b71Sopenharmony_ci 285e41f4b71Sopenharmony_ci 286e41f4b71Sopenharmony_ci 287e41f4b71Sopenharmony_ci## cooperate.deactivateCooperate<sup>11+</sup> 288e41f4b71Sopenharmony_ci 289e41f4b71Sopenharmony_cideactivateCooperate(isUnchained: boolean, callback: AsyncCallback<void>): void; 290e41f4b71Sopenharmony_ci 291e41f4b71Sopenharmony_ci停止键鼠穿越,使用Callback异步回调。 292e41f4b71Sopenharmony_ci 293e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.COOPERATE_MANAGER 294e41f4b71Sopenharmony_ci 295e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 296e41f4b71Sopenharmony_ci 297e41f4b71Sopenharmony_ci**参数:** 298e41f4b71Sopenharmony_ci 299e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 300e41f4b71Sopenharmony_ci| ----------- | ------------------------- | ---- | ------------------------------------------------------------ | 301e41f4b71Sopenharmony_ci| isUnchained | boolean | 是 | 是否关闭跨设备链路。 ture表示关闭跨设备链路,false表示不关闭。 | 302e41f4b71Sopenharmony_ci| callback | AsyncCallback<void> | 是 | 回调函数,键鼠穿越停止成功时,err为undefined,否则为错误对象。 | 303e41f4b71Sopenharmony_ci 304e41f4b71Sopenharmony_ci**错误码:** 305e41f4b71Sopenharmony_ci 306e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 307e41f4b71Sopenharmony_ci 308e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 309e41f4b71Sopenharmony_ci| -------- | ----------------- | 310e41f4b71Sopenharmony_ci| 201 | Permission denied. | 311e41f4b71Sopenharmony_ci| 202 | Not system application. | 312e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 313e41f4b71Sopenharmony_ci 314e41f4b71Sopenharmony_ci**示例**: 315e41f4b71Sopenharmony_ci 316e41f4b71Sopenharmony_ci```ts 317e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 318e41f4b71Sopenharmony_citry { 319e41f4b71Sopenharmony_ci cooperate.deactivateCooperate(false, (error: BusinessError) => { 320e41f4b71Sopenharmony_ci if (error) { 321e41f4b71Sopenharmony_ci console.log(`Stop Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 322e41f4b71Sopenharmony_ci return; 323e41f4b71Sopenharmony_ci } 324e41f4b71Sopenharmony_ci console.log(`Stop Keyboard mouse crossing success.`); 325e41f4b71Sopenharmony_ci }); 326e41f4b71Sopenharmony_ci} catch (error) { 327e41f4b71Sopenharmony_ci console.log(`Stop Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 328e41f4b71Sopenharmony_ci} 329e41f4b71Sopenharmony_ci``` 330e41f4b71Sopenharmony_ci 331e41f4b71Sopenharmony_ci## cooperate.deactivateCooperate<sup>11+</sup> 332e41f4b71Sopenharmony_ci 333e41f4b71Sopenharmony_cideactivateCooperate(isUnchained: boolean): Promise<void>; 334e41f4b71Sopenharmony_ci 335e41f4b71Sopenharmony_ci停止键鼠穿越,使用Promise异步回调。 336e41f4b71Sopenharmony_ci 337e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.COOPERATE_MANAGER 338e41f4b71Sopenharmony_ci 339e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 340e41f4b71Sopenharmony_ci 341e41f4b71Sopenharmony_ci**参数:** 342e41f4b71Sopenharmony_ci 343e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 344e41f4b71Sopenharmony_ci| ----------- | ------- | ---- | ------------------------------------------------------------ | 345e41f4b71Sopenharmony_ci| isUnchained | boolean | 是 | 是否关闭跨设备链路。 ture表示关闭跨设备链路,false表示不关闭。 | 346e41f4b71Sopenharmony_ci 347e41f4b71Sopenharmony_ci**返回值:** 348e41f4b71Sopenharmony_ci 349e41f4b71Sopenharmony_ci| 参数名 | 说明 | 350e41f4b71Sopenharmony_ci| ------------------- | ------------------------- | 351e41f4b71Sopenharmony_ci| Promise<void> | 无返回结果的Promise对象。 | 352e41f4b71Sopenharmony_ci 353e41f4b71Sopenharmony_ci**错误码:** 354e41f4b71Sopenharmony_ci 355e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 356e41f4b71Sopenharmony_ci 357e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 358e41f4b71Sopenharmony_ci| -------- | ----------------- | 359e41f4b71Sopenharmony_ci| 201 | Permission denied. | 360e41f4b71Sopenharmony_ci| 202 | Not system application. | 361e41f4b71Sopenharmony_ci 362e41f4b71Sopenharmony_ci**示例**: 363e41f4b71Sopenharmony_ci 364e41f4b71Sopenharmony_ci```ts 365e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 366e41f4b71Sopenharmony_citry { 367e41f4b71Sopenharmony_ci cooperate.deactivateCooperate(false).then(() => { 368e41f4b71Sopenharmony_ci console.log(`Stop Keyboard mouse crossing success.`); 369e41f4b71Sopenharmony_ci }, (error: BusinessError) => { 370e41f4b71Sopenharmony_ci console.log(`Stop Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 371e41f4b71Sopenharmony_ci }); 372e41f4b71Sopenharmony_ci} catch (error) { 373e41f4b71Sopenharmony_ci console.log(`Stop Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 374e41f4b71Sopenharmony_ci} 375e41f4b71Sopenharmony_ci``` 376e41f4b71Sopenharmony_ci 377e41f4b71Sopenharmony_ci 378e41f4b71Sopenharmony_ci 379e41f4b71Sopenharmony_ci## cooperate.getCooperateSwitchState<sup>11+</sup> 380e41f4b71Sopenharmony_ci 381e41f4b71Sopenharmony_cigetCooperateSwitchState(networkId: string, callback: AsyncCallback<boolean>): void; 382e41f4b71Sopenharmony_ci 383e41f4b71Sopenharmony_ci获取目标设备键鼠穿越开关的状态,使用Callback异步回调。 384e41f4b71Sopenharmony_ci 385e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.COOPERATE_MANAGER 386e41f4b71Sopenharmony_ci 387e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 388e41f4b71Sopenharmony_ci 389e41f4b71Sopenharmony_ci**参数:** 390e41f4b71Sopenharmony_ci 391e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 392e41f4b71Sopenharmony_ci| --------- | ---------------------------- | ---- | ------------------------------------------------------------ | 393e41f4b71Sopenharmony_ci| networkId | string | 是 | 键鼠穿越目标设备描述符。 | 394e41f4b71Sopenharmony_ci| callback | AsyncCallback<boolean> | 是 | 回调函数,返回ture表示目标设备键鼠穿越的开关开启,返回false表示开关未开启。 | 395e41f4b71Sopenharmony_ci 396e41f4b71Sopenharmony_ci**错误码:** 397e41f4b71Sopenharmony_ci 398e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 399e41f4b71Sopenharmony_ci 400e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 401e41f4b71Sopenharmony_ci| -------- | ----------------- | 402e41f4b71Sopenharmony_ci| 201 | Permission denied. | 403e41f4b71Sopenharmony_ci| 202 | Not system application. | 404e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 405e41f4b71Sopenharmony_ci 406e41f4b71Sopenharmony_ci**示例:** 407e41f4b71Sopenharmony_ci 408e41f4b71Sopenharmony_ci```ts 409e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 410e41f4b71Sopenharmony_cilet deviceDescriptor = "networkId"; 411e41f4b71Sopenharmony_citry { 412e41f4b71Sopenharmony_ci cooperate.getCooperateSwitchState(deviceDescriptor, (error: BusinessError, data: boolean) => { 413e41f4b71Sopenharmony_ci if (error) { 414e41f4b71Sopenharmony_ci console.log(`Get the status failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 415e41f4b71Sopenharmony_ci return; 416e41f4b71Sopenharmony_ci } 417e41f4b71Sopenharmony_ci console.log(`Get the status success, data: ${JSON.stringify(data)}`); 418e41f4b71Sopenharmony_ci }); 419e41f4b71Sopenharmony_ci} catch (error) { 420e41f4b71Sopenharmony_ci console.log(`Get the status failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 421e41f4b71Sopenharmony_ci} 422e41f4b71Sopenharmony_ci``` 423e41f4b71Sopenharmony_ci 424e41f4b71Sopenharmony_ci## cooperate.getCooperateSwitchState<sup>11+</sup> 425e41f4b71Sopenharmony_ci 426e41f4b71Sopenharmony_cigetCooperateSwitchState(networkId: string): Promise<boolean>; 427e41f4b71Sopenharmony_ci 428e41f4b71Sopenharmony_ci获取目标设备键鼠穿越开关的状态,使用Promise异步方式返回结果。 429e41f4b71Sopenharmony_ci 430e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.COOPERATE_MANAGER 431e41f4b71Sopenharmony_ci 432e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 433e41f4b71Sopenharmony_ci 434e41f4b71Sopenharmony_ci**参数**: 435e41f4b71Sopenharmony_ci 436e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 437e41f4b71Sopenharmony_ci| --------- | ------ | ---- | ------------------------ | 438e41f4b71Sopenharmony_ci| networkId | string | 是 | 键鼠穿越目标设备描述符。 | 439e41f4b71Sopenharmony_ci 440e41f4b71Sopenharmony_ci**返回值**: 441e41f4b71Sopenharmony_ci 442e41f4b71Sopenharmony_ci| 参数 | 说明 | 443e41f4b71Sopenharmony_ci| ---------------------- | ------------------------------------------------------------ | 444e41f4b71Sopenharmony_ci| Promise<boolean> | Promise对象,返回ture表示目标设备键鼠穿越的开关开启,返回false表示开关未开启。 | 445e41f4b71Sopenharmony_ci 446e41f4b71Sopenharmony_ci**错误码:** 447e41f4b71Sopenharmony_ci 448e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 449e41f4b71Sopenharmony_ci 450e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 451e41f4b71Sopenharmony_ci| -------- | ----------------- | 452e41f4b71Sopenharmony_ci| 201 | Permission denied. | 453e41f4b71Sopenharmony_ci| 202 | Not system application. | 454e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 455e41f4b71Sopenharmony_ci 456e41f4b71Sopenharmony_ci**示例**: 457e41f4b71Sopenharmony_ci 458e41f4b71Sopenharmony_ci```ts 459e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 460e41f4b71Sopenharmony_cilet deviceDescriptor = "networkId"; 461e41f4b71Sopenharmony_citry { 462e41f4b71Sopenharmony_ci cooperate.getCooperateSwitchState(deviceDescriptor).then((data: boolean) => { 463e41f4b71Sopenharmony_ci console.log(`Get the status success, data: ${JSON.stringify(data)}`); 464e41f4b71Sopenharmony_ci }, (error: BusinessError) => { 465e41f4b71Sopenharmony_ci console.log(`Get the status failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 466e41f4b71Sopenharmony_ci }); 467e41f4b71Sopenharmony_ci} catch (error) { 468e41f4b71Sopenharmony_ci console.log(`Get the status failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 469e41f4b71Sopenharmony_ci} 470e41f4b71Sopenharmony_ci``` 471e41f4b71Sopenharmony_ci 472e41f4b71Sopenharmony_ci 473e41f4b71Sopenharmony_ci 474e41f4b71Sopenharmony_ci## on('cooperateMessage')<sup>11+</sup> 475e41f4b71Sopenharmony_ci 476e41f4b71Sopenharmony_cion(type: 'cooperateMessage', callback: Callback<CooperateMessage>): void; 477e41f4b71Sopenharmony_ci 478e41f4b71Sopenharmony_ci注册监听键鼠穿越状态。 479e41f4b71Sopenharmony_ci 480e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.COOPERATE_MANAGER 481e41f4b71Sopenharmony_ci 482e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 483e41f4b71Sopenharmony_ci 484e41f4b71Sopenharmony_ci**参数**: 485e41f4b71Sopenharmony_ci 486e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 487e41f4b71Sopenharmony_ci| -------- | ----------------------------------------------------- | ---- | ------------------------------------ | 488e41f4b71Sopenharmony_ci| type | string | 是 | 监听类型,取值为'cooperateMessage' | 489e41f4b71Sopenharmony_ci| callback | Callback<[CooperateMessage](#cooperatemessage11)> | 是 | 回调函数,异步返回键鼠穿越状态消息。 | 490e41f4b71Sopenharmony_ci 491e41f4b71Sopenharmony_ci**错误码:** 492e41f4b71Sopenharmony_ci 493e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 494e41f4b71Sopenharmony_ci 495e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 496e41f4b71Sopenharmony_ci| -------- | ----------------- | 497e41f4b71Sopenharmony_ci| 201 | Permission denied. | 498e41f4b71Sopenharmony_ci| 202 | Not system application. | 499e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 500e41f4b71Sopenharmony_ci 501e41f4b71Sopenharmony_ci**示例**: 502e41f4b71Sopenharmony_ci 503e41f4b71Sopenharmony_ci```ts 504e41f4b71Sopenharmony_cifunction callback(msg: cooperate.CooperateMessage) { 505e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing event: ${JSON.stringify(msg)}`); 506e41f4b71Sopenharmony_ci return false; 507e41f4b71Sopenharmony_ci} 508e41f4b71Sopenharmony_citry { 509e41f4b71Sopenharmony_ci cooperate.on('cooperateMessage', callback); 510e41f4b71Sopenharmony_ci} catch (error) { 511e41f4b71Sopenharmony_ci console.log(`Register failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 512e41f4b71Sopenharmony_ci} 513e41f4b71Sopenharmony_ci``` 514e41f4b71Sopenharmony_ci 515e41f4b71Sopenharmony_ci 516e41f4b71Sopenharmony_ci 517e41f4b71Sopenharmony_ci## off('cooperateMessage')<sup>11+</sup> 518e41f4b71Sopenharmony_ci 519e41f4b71Sopenharmony_cioff(type: 'cooperateMessage', callback?: Callback<CooperateMessage>): void; 520e41f4b71Sopenharmony_ci 521e41f4b71Sopenharmony_ci取消监听键鼠穿越状态。 522e41f4b71Sopenharmony_ci 523e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.COOPERATE_MANAGER 524e41f4b71Sopenharmony_ci 525e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 526e41f4b71Sopenharmony_ci 527e41f4b71Sopenharmony_ci**参数:** 528e41f4b71Sopenharmony_ci 529e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 530e41f4b71Sopenharmony_ci| -------- | ----------------------------------------------------- | ---- | ------------------------------------------------------------ | 531e41f4b71Sopenharmony_ci| type | string | 是 | 监听类型,取值为'cooperate'。 | 532e41f4b71Sopenharmony_ci| callback | Callback<[CooperateMessage](#cooperatemessage11)> | 否 | 需要取消注册的回调函数,若无此参数,则取消当前应用注册的所有回调函数。 | 533e41f4b71Sopenharmony_ci 534e41f4b71Sopenharmony_ci**错误码:** 535e41f4b71Sopenharmony_ci 536e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 537e41f4b71Sopenharmony_ci 538e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 539e41f4b71Sopenharmony_ci| -------- | ----------------- | 540e41f4b71Sopenharmony_ci| 201 | Permission denied. | 541e41f4b71Sopenharmony_ci| 202 | Not system application. | 542e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 543e41f4b71Sopenharmony_ci 544e41f4b71Sopenharmony_ci**示例**: 545e41f4b71Sopenharmony_ci 546e41f4b71Sopenharmony_ci```ts 547e41f4b71Sopenharmony_ci// 取消注册单个回调函数 548e41f4b71Sopenharmony_cifunction callbackOn(msgOn: cooperate.CooperateMessage) { 549e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing event: ${JSON.stringify(msgOn)}`); 550e41f4b71Sopenharmony_ci return false; 551e41f4b71Sopenharmony_ci} 552e41f4b71Sopenharmony_cifunction callbackOff(msgOff: cooperate.CooperateMessage) { 553e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing event: ${JSON.stringify(msgOff)}`); 554e41f4b71Sopenharmony_ci return false; 555e41f4b71Sopenharmony_ci} 556e41f4b71Sopenharmony_citry { 557e41f4b71Sopenharmony_ci cooperate.on('cooperateMessage', callbackOn); 558e41f4b71Sopenharmony_ci cooperate.off('cooperateMessage', callbackOff); 559e41f4b71Sopenharmony_ci} catch (error) { 560e41f4b71Sopenharmony_ci console.log(`Execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 561e41f4b71Sopenharmony_ci} 562e41f4b71Sopenharmony_ci``` 563e41f4b71Sopenharmony_ci 564e41f4b71Sopenharmony_ci```ts 565e41f4b71Sopenharmony_ci// 取消注册所有回调函数 566e41f4b71Sopenharmony_cifunction callbackOn(msg: cooperate.CooperateMessage) { 567e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing event: ${JSON.stringify(msg)}`); 568e41f4b71Sopenharmony_ci return false; 569e41f4b71Sopenharmony_ci} 570e41f4b71Sopenharmony_citry { 571e41f4b71Sopenharmony_ci cooperate.on('cooperateMessage', callbackOn); 572e41f4b71Sopenharmony_ci cooperate.off('cooperateMessage'); 573e41f4b71Sopenharmony_ci} catch (error) { 574e41f4b71Sopenharmony_ci console.log(`Execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 575e41f4b71Sopenharmony_ci} 576e41f4b71Sopenharmony_ci``` 577e41f4b71Sopenharmony_ci 578e41f4b71Sopenharmony_ci 579e41f4b71Sopenharmony_ci## on('cooperateMouse')<sup>12+</sup> 580e41f4b71Sopenharmony_ci 581e41f4b71Sopenharmony_cion(type: 'cooperateMouse', networkId: string, callback: Callback<MouseLocation>): void; 582e41f4b71Sopenharmony_ci 583e41f4b71Sopenharmony_ci注册监听指定设备鼠标光标位置。 584e41f4b71Sopenharmony_ci 585e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.COOPERATE_MANAGER 586e41f4b71Sopenharmony_ci 587e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 588e41f4b71Sopenharmony_ci 589e41f4b71Sopenharmony_ci**参数**: 590e41f4b71Sopenharmony_ci 591e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 592e41f4b71Sopenharmony_ci| -------- | ----------------------------------------------------- | ---- | ------------------------------------ | 593e41f4b71Sopenharmony_ci| type | string | 是 | 监听类型,取值为'cooperateMouse' | 594e41f4b71Sopenharmony_ci| networkId| string | 是 | 目标设备描述符 | 595e41f4b71Sopenharmony_ci| callback | Callback<[MouseLocation](#mouselocation12)> | 是 | 回调函数,异步返回指定监听设备鼠标光标位置信息。 | 596e41f4b71Sopenharmony_ci 597e41f4b71Sopenharmony_ci**错误码:** 598e41f4b71Sopenharmony_ci 599e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 600e41f4b71Sopenharmony_ci 601e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 602e41f4b71Sopenharmony_ci| -------- | ----------------- | 603e41f4b71Sopenharmony_ci| 201 | Permission denied. | 604e41f4b71Sopenharmony_ci| 202 | Not system application. | 605e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 606e41f4b71Sopenharmony_ci 607e41f4b71Sopenharmony_ci**示例**: 608e41f4b71Sopenharmony_ci 609e41f4b71Sopenharmony_ci```ts 610e41f4b71Sopenharmony_cifunction callback(data: cooperate.MouseLocation) { 611e41f4b71Sopenharmony_ci console.log('displayX:' + data.displayX + 'displayY:' + data.displayX + 'displayWidth:' + 612e41f4b71Sopenharmony_ci data.displayWidth + 'displayHeight:' + data.displayHeight ); 613e41f4b71Sopenharmony_ci} 614e41f4b71Sopenharmony_citry { 615e41f4b71Sopenharmony_ci let networkId: string = 'Default'; 616e41f4b71Sopenharmony_ci cooperate.on('cooperateMouse', networkId, callback); 617e41f4b71Sopenharmony_ci} catch (error) { 618e41f4b71Sopenharmony_ci console.log(`Register failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 619e41f4b71Sopenharmony_ci} 620e41f4b71Sopenharmony_ci``` 621e41f4b71Sopenharmony_ci 622e41f4b71Sopenharmony_ci 623e41f4b71Sopenharmony_ci 624e41f4b71Sopenharmony_ci## off('cooperateMouse')<sup>12+</sup> 625e41f4b71Sopenharmony_ci 626e41f4b71Sopenharmony_cioff(type: 'cooperateMouse', networkId: string, callback?: Callback<MouseLocation>): void; 627e41f4b71Sopenharmony_ci 628e41f4b71Sopenharmony_ci取消监听指定设备鼠标光标位置。 629e41f4b71Sopenharmony_ci 630e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.COOPERATE_MANAGER 631e41f4b71Sopenharmony_ci 632e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 633e41f4b71Sopenharmony_ci 634e41f4b71Sopenharmony_ci**参数:** 635e41f4b71Sopenharmony_ci 636e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 637e41f4b71Sopenharmony_ci| -------- | ----------------------------------------------------- | ---- | ------------------------------------------------------------ | 638e41f4b71Sopenharmony_ci| type | string | 是 | 监听类型,取值为'cooperateMouse'。 | 639e41f4b71Sopenharmony_ci| networkId| string | 是 | 目标设备描述符 | 640e41f4b71Sopenharmony_ci| callback | Callback<[MouseLocation](#mouselocation12)> | 否 | 需要取消注册的回调函数,若无此参数,则取消当前应用注册的所有回调函数。 | 641e41f4b71Sopenharmony_ci 642e41f4b71Sopenharmony_ci**错误码:** 643e41f4b71Sopenharmony_ci 644e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 645e41f4b71Sopenharmony_ci 646e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 647e41f4b71Sopenharmony_ci| -------- | ----------------- | 648e41f4b71Sopenharmony_ci| 201 | Permission denied. | 649e41f4b71Sopenharmony_ci| 202 | Not system application. | 650e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 651e41f4b71Sopenharmony_ci 652e41f4b71Sopenharmony_ci**示例**: 653e41f4b71Sopenharmony_ci 654e41f4b71Sopenharmony_ci```ts 655e41f4b71Sopenharmony_ci// 取消注册单个回调函数 656e41f4b71Sopenharmony_cifunction callbackOn(data: cooperate.MouseLocation) { 657e41f4b71Sopenharmony_ci console.log('Register mouse location listener'); 658e41f4b71Sopenharmony_ci return false; 659e41f4b71Sopenharmony_ci} 660e41f4b71Sopenharmony_cifunction callbackOff(data: cooperate.MouseLocation) { 661e41f4b71Sopenharmony_ci console.log('Unregister mouse location listener'); 662e41f4b71Sopenharmony_ci return false; 663e41f4b71Sopenharmony_ci} 664e41f4b71Sopenharmony_citry { 665e41f4b71Sopenharmony_ci let networkId: string = 'Default'; 666e41f4b71Sopenharmony_ci cooperate.on('cooperateMouse', networkId, callbackOn); 667e41f4b71Sopenharmony_ci cooperate.off('cooperateMouse', networkId, callbackOff); 668e41f4b71Sopenharmony_ci} catch (error) { 669e41f4b71Sopenharmony_ci console.log(`Execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 670e41f4b71Sopenharmony_ci} 671e41f4b71Sopenharmony_ci``` 672e41f4b71Sopenharmony_ci 673e41f4b71Sopenharmony_ci```ts 674e41f4b71Sopenharmony_ci// 取消注册所有回调函数 675e41f4b71Sopenharmony_cifunction callbackOn(data: cooperate.MouseLocation) { 676e41f4b71Sopenharmony_ci console.log('Register mouse location listener'); 677e41f4b71Sopenharmony_ci} 678e41f4b71Sopenharmony_citry { 679e41f4b71Sopenharmony_ci let networkId: string = 'Default'; 680e41f4b71Sopenharmony_ci cooperate.on('cooperateMouse', networkId, callbackOn); 681e41f4b71Sopenharmony_ci cooperate.off('cooperateMouse', networkId); 682e41f4b71Sopenharmony_ci} catch (error) { 683e41f4b71Sopenharmony_ci console.log(`Execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 684e41f4b71Sopenharmony_ci} 685e41f4b71Sopenharmony_ci``` 686e41f4b71Sopenharmony_ci 687e41f4b71Sopenharmony_ci 688e41f4b71Sopenharmony_ci 689e41f4b71Sopenharmony_ci## CooperateMessage<sup>11+</sup> 690e41f4b71Sopenharmony_ci 691e41f4b71Sopenharmony_ci键鼠穿越的消息。 692e41f4b71Sopenharmony_ci 693e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 694e41f4b71Sopenharmony_ci 695e41f4b71Sopenharmony_ci| 名称 | 类型 | 可读 | 可写 | 说明 | 696e41f4b71Sopenharmony_ci| --------- | -------------- | ---- | ---- | ------------------------ | 697e41f4b71Sopenharmony_ci| networkId | string | 是 | 否 | 键鼠穿越目标设备描述符。 | 698e41f4b71Sopenharmony_ci| state | CooperateState | 是 | 否 | 键鼠穿越的状态。 | 699e41f4b71Sopenharmony_ci 700e41f4b71Sopenharmony_ci 701e41f4b71Sopenharmony_ci## MouseLocation<sup>12+</sup> 702e41f4b71Sopenharmony_ci 703e41f4b71Sopenharmony_ci键鼠穿越的位置。 704e41f4b71Sopenharmony_ci 705e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 706e41f4b71Sopenharmony_ci 707e41f4b71Sopenharmony_ci| 名称 | 类型 | 可读 | 可写 | 说明 | 708e41f4b71Sopenharmony_ci| --------- | -------------- | ---- | ---- | ------------------------ | 709e41f4b71Sopenharmony_ci| displayX | number | 是 | 否 | 鼠标指针位于屏幕的X坐标上的位置。 | 710e41f4b71Sopenharmony_ci| displayY | number | 是 | 否 | 鼠标指针位于屏幕的y坐标上的位置。 | 711e41f4b71Sopenharmony_ci| displayWidth | number | 是 | 否 | 屏幕宽度。 | 712e41f4b71Sopenharmony_ci| displayHeight | number | 是 | 否 | 屏幕高度。 | 713e41f4b71Sopenharmony_ci 714e41f4b71Sopenharmony_ci 715e41f4b71Sopenharmony_ci 716e41f4b71Sopenharmony_ci## CooperateState<sup>11+</sup> 717e41f4b71Sopenharmony_ci 718e41f4b71Sopenharmony_ci键鼠穿越的状态。 719e41f4b71Sopenharmony_ci 720e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 721e41f4b71Sopenharmony_ci 722e41f4b71Sopenharmony_ci| 名称 | 类型 | 可读 | 可写 | 说明 | 723e41f4b71Sopenharmony_ci| ------------------------------ | ------ | ---- | ---- | ---------------------- | 724e41f4b71Sopenharmony_ci| COOPERATE_PREPARE | number | 是 | 否 | 表示准备键鼠穿越。 | 725e41f4b71Sopenharmony_ci| COOPERATE_UNPREPARE | number | 是 | 否 | 表示取消键鼠穿越准备。 | 726e41f4b71Sopenharmony_ci| COOPERATE_ACTIVATE | number | 是 | 否 | 表示启动键鼠穿越。 | 727e41f4b71Sopenharmony_ci| COOPERATE_ACTIVATE_SUCCESS | number | 是 | 否 | 表示键鼠穿越启动成功。 | 728e41f4b71Sopenharmony_ci| COOPERATE_ACTIVATE_FAIL | number | 是 | 否 | 表示键鼠穿越启动失败。 | 729e41f4b71Sopenharmony_ci| COOPERATE_DEACTIVATE_SUCCESS | number | 是 | 否 | 表示键鼠穿越停止成功。 | 730e41f4b71Sopenharmony_ci| COOPERATE_DEACTIVATE_FAIL | number | 是 | 否 | 表示键鼠穿越停止失败。 | 731e41f4b71Sopenharmony_ci| COOPERATE_SESSION_DISCONNECTED | number | 是 | 否 | 表示键鼠穿越会话断开。 | 732e41f4b71Sopenharmony_ci| COOPERATE_ACTIVATE_FAILURE | number | 是 | 否 | 表示键鼠穿越无法启动。 | 733e41f4b71Sopenharmony_ci| COOPERATE_DEACTIVATE_FAILURE | number | 是 | 否 | 表示键鼠穿越无法停止。 | 734e41f4b71Sopenharmony_ci 735e41f4b71Sopenharmony_ci 736e41f4b71Sopenharmony_ci## MouseLocation<sup>12+</sup> 737e41f4b71Sopenharmony_ci 738e41f4b71Sopenharmony_ci鼠标光标位置信息。 739e41f4b71Sopenharmony_ci 740e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 741e41f4b71Sopenharmony_ci 742e41f4b71Sopenharmony_ci| 名称 | 类型 | 可读 | 可写 | 说明 | 743e41f4b71Sopenharmony_ci| --------- | -------------- | ---- | ---- | ------------------------ | 744e41f4b71Sopenharmony_ci| displayX | number | 是 | 否 | 鼠标X坐标位置。 | 745e41f4b71Sopenharmony_ci| displayY | number | 是 | 否 | 鼠标Y坐标位置。 | 746e41f4b71Sopenharmony_ci| displayWidth | number | 是 | 否 | 鼠标所在屏幕宽度。 | 747e41f4b71Sopenharmony_ci| displayHeight | number | 是 | 否 | 鼠标所在屏幕高度。 | 748e41f4b71Sopenharmony_ci 749e41f4b71Sopenharmony_ci 750e41f4b71Sopenharmony_ci## cooperate.prepare<sup>(deprecated)</sup> 751e41f4b71Sopenharmony_ci 752e41f4b71Sopenharmony_ciprepare(callback: AsyncCallback<void>): void; 753e41f4b71Sopenharmony_ci 754e41f4b71Sopenharmony_ci准备键鼠穿越,使用Callback异步回调。 755e41f4b71Sopenharmony_ci 756e41f4b71Sopenharmony_ci> **说明:** 757e41f4b71Sopenharmony_ci> 758e41f4b71Sopenharmony_ci> 从API version 10开始不在维护。建议使用[cooperate.prepareCooperate](#cooperatepreparecooperate11)替代 759e41f4b71Sopenharmony_ci 760e41f4b71Sopenharmony_ci**系统能力**: SystemCapability.Msdp.DeviceStatus.Cooperate 761e41f4b71Sopenharmony_ci 762e41f4b71Sopenharmony_ci**参数**: 763e41f4b71Sopenharmony_ci 764e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 765e41f4b71Sopenharmony_ci| -------- | ------------------------- | ---- | --------------------------- | 766e41f4b71Sopenharmony_ci| callback | AsyncCallback<void> | 是 |回调函数,准备键鼠穿越成功时,err为undefined,否则为错误对象。 | 767e41f4b71Sopenharmony_ci 768e41f4b71Sopenharmony_ci**错误码:** 769e41f4b71Sopenharmony_ci 770e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 771e41f4b71Sopenharmony_ci 772e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 773e41f4b71Sopenharmony_ci| -------- | ----------------- | 774e41f4b71Sopenharmony_ci| 202 | Not system application. | 775e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 776e41f4b71Sopenharmony_ci 777e41f4b71Sopenharmony_ci**示例**: 778e41f4b71Sopenharmony_ci 779e41f4b71Sopenharmony_ci```ts 780e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 781e41f4b71Sopenharmony_citry { 782e41f4b71Sopenharmony_ci cooperate.prepare((error: BusinessError) => { 783e41f4b71Sopenharmony_ci if (error) { 784e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing prepare failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 785e41f4b71Sopenharmony_ci return; 786e41f4b71Sopenharmony_ci } 787e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing prepare success.`); 788e41f4b71Sopenharmony_ci }); 789e41f4b71Sopenharmony_ci} catch (error) { 790e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing prepare failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 791e41f4b71Sopenharmony_ci} 792e41f4b71Sopenharmony_ci``` 793e41f4b71Sopenharmony_ci 794e41f4b71Sopenharmony_ci## cooperate.prepare<sup>(deprecated)</sup> 795e41f4b71Sopenharmony_ci 796e41f4b71Sopenharmony_ciprepare(): Promise<void>; 797e41f4b71Sopenharmony_ci 798e41f4b71Sopenharmony_ci准备键鼠穿越,使用Promise异步方式返回结果。 799e41f4b71Sopenharmony_ci 800e41f4b71Sopenharmony_ci> **说明:** 801e41f4b71Sopenharmony_ci> 802e41f4b71Sopenharmony_ci> 从API version 10开始不在维护。建议使用[cooperate.prepareCooperate](#cooperatepreparecooperate11-1)替代 803e41f4b71Sopenharmony_ci 804e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 805e41f4b71Sopenharmony_ci 806e41f4b71Sopenharmony_ci**返回值**: 807e41f4b71Sopenharmony_ci 808e41f4b71Sopenharmony_ci| 参数 | 说明 | 809e41f4b71Sopenharmony_ci| ------------------- | ------------------------------- | 810e41f4b71Sopenharmony_ci| Promise<void> | 无返回结果的Promise对象。 | 811e41f4b71Sopenharmony_ci 812e41f4b71Sopenharmony_ci**错误码:** 813e41f4b71Sopenharmony_ci 814e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 815e41f4b71Sopenharmony_ci 816e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 817e41f4b71Sopenharmony_ci| -------- | ----------------- | 818e41f4b71Sopenharmony_ci| 202 | Not system application. | 819e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 820e41f4b71Sopenharmony_ci 821e41f4b71Sopenharmony_ci**示例**: 822e41f4b71Sopenharmony_ci 823e41f4b71Sopenharmony_ci```ts 824e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 825e41f4b71Sopenharmony_citry { 826e41f4b71Sopenharmony_ci cooperate.prepare().then(() => { 827e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing prepare success.`); 828e41f4b71Sopenharmony_ci }, (error: BusinessError) => { 829e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing prepare failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 830e41f4b71Sopenharmony_ci }); 831e41f4b71Sopenharmony_ci} catch (error) { 832e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing prepare failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 833e41f4b71Sopenharmony_ci} 834e41f4b71Sopenharmony_ci``` 835e41f4b71Sopenharmony_ci 836e41f4b71Sopenharmony_ci 837e41f4b71Sopenharmony_ci 838e41f4b71Sopenharmony_ci## cooperate.unprepare<sup>(deprecated)</sup> 839e41f4b71Sopenharmony_ci 840e41f4b71Sopenharmony_ciunprepare(callback: AsyncCallback<void>): void; 841e41f4b71Sopenharmony_ci 842e41f4b71Sopenharmony_ci取消键鼠穿越准备,使用Callback异步回调。 843e41f4b71Sopenharmony_ci 844e41f4b71Sopenharmony_ci> **说明:** 845e41f4b71Sopenharmony_ci> 846e41f4b71Sopenharmony_ci> 从API version 10开始不在维护。建议使用[cooperate.unprepareCooperate](#cooperateunpreparecooperate11)替代 847e41f4b71Sopenharmony_ci 848e41f4b71Sopenharmony_ci**系统能力**: SystemCapability.Msdp.DeviceStatus.Cooperate 849e41f4b71Sopenharmony_ci 850e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 851e41f4b71Sopenharmony_ci| -------- | ------------------------- | ---- | ------------------------------------------ | 852e41f4b71Sopenharmony_ci| callback | AsyncCallback<void> | 是 | 回调函数,取消键鼠穿越准备成功时,err为undefined,否则为错误对象。 | 853e41f4b71Sopenharmony_ci 854e41f4b71Sopenharmony_ci**错误码:** 855e41f4b71Sopenharmony_ci 856e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 857e41f4b71Sopenharmony_ci 858e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 859e41f4b71Sopenharmony_ci| -------- | ----------------- | 860e41f4b71Sopenharmony_ci| 202 | Not system application. | 861e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 862e41f4b71Sopenharmony_ci 863e41f4b71Sopenharmony_ci**示例**: 864e41f4b71Sopenharmony_ci 865e41f4b71Sopenharmony_ci```ts 866e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 867e41f4b71Sopenharmony_citry { 868e41f4b71Sopenharmony_ci cooperate.unprepare((error: BusinessError) => { 869e41f4b71Sopenharmony_ci if (error) { 870e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing unprepare failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 871e41f4b71Sopenharmony_ci return; 872e41f4b71Sopenharmony_ci } 873e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing unprepare success.`); 874e41f4b71Sopenharmony_ci }); 875e41f4b71Sopenharmony_ci} catch (error) { 876e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing unprepare failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 877e41f4b71Sopenharmony_ci} 878e41f4b71Sopenharmony_ci``` 879e41f4b71Sopenharmony_ci 880e41f4b71Sopenharmony_ci## cooperate.unprepare<sup>(deprecated)</sup> 881e41f4b71Sopenharmony_ci 882e41f4b71Sopenharmony_ciunprepare(): Promise<void>; 883e41f4b71Sopenharmony_ci 884e41f4b71Sopenharmony_ci取消键鼠穿越准备,使用Promise异步回调。 885e41f4b71Sopenharmony_ci 886e41f4b71Sopenharmony_ci> **说明:** 887e41f4b71Sopenharmony_ci> 888e41f4b71Sopenharmony_ci> 从API version 10开始不在维护。建议使用[cooperate.unprepareCooperate](#cooperateunpreparecooperate11-1)替代 889e41f4b71Sopenharmony_ci 890e41f4b71Sopenharmony_ci**系统能力**: SystemCapability.Msdp.DeviceStatus.Cooperate 891e41f4b71Sopenharmony_ci 892e41f4b71Sopenharmony_ci**返回值**: 893e41f4b71Sopenharmony_ci 894e41f4b71Sopenharmony_ci| 参数 | 说明 | 895e41f4b71Sopenharmony_ci| ------------------- | --------------------------------------------- | 896e41f4b71Sopenharmony_ci| Promise<void> | 无返回结果的Promise对象。 | 897e41f4b71Sopenharmony_ci 898e41f4b71Sopenharmony_ci**错误码:** 899e41f4b71Sopenharmony_ci 900e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 901e41f4b71Sopenharmony_ci 902e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 903e41f4b71Sopenharmony_ci| -------- | ----------------- | 904e41f4b71Sopenharmony_ci| 202 | Not system application. | 905e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 906e41f4b71Sopenharmony_ci 907e41f4b71Sopenharmony_ci**示例:** 908e41f4b71Sopenharmony_ci 909e41f4b71Sopenharmony_ci```ts 910e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 911e41f4b71Sopenharmony_citry { 912e41f4b71Sopenharmony_ci cooperate.unprepare().then(() => { 913e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing unprepare success.`); 914e41f4b71Sopenharmony_ci }, (error: BusinessError) => { 915e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing unprepare failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 916e41f4b71Sopenharmony_ci }); 917e41f4b71Sopenharmony_ci} catch (error) { 918e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing unprepare failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 919e41f4b71Sopenharmony_ci} 920e41f4b71Sopenharmony_ci``` 921e41f4b71Sopenharmony_ci 922e41f4b71Sopenharmony_ci 923e41f4b71Sopenharmony_ci 924e41f4b71Sopenharmony_ci## cooperate.activate<sup>(deprecated)</sup> 925e41f4b71Sopenharmony_ci 926e41f4b71Sopenharmony_ciactivate(targetNetworkId: string, inputDeviceId: number, callback: AsyncCallback<void>): void; 927e41f4b71Sopenharmony_ci 928e41f4b71Sopenharmony_ci启动键鼠穿越,使用Callback异步回调。 929e41f4b71Sopenharmony_ci 930e41f4b71Sopenharmony_ci> **说明:** 931e41f4b71Sopenharmony_ci> 932e41f4b71Sopenharmony_ci> 从API version 10开始不在维护。建议使用[cooperate.activateCooperate](#cooperateactivatecooperate11)替代 933e41f4b71Sopenharmony_ci 934e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 935e41f4b71Sopenharmony_ci 936e41f4b71Sopenharmony_ci**参数**: 937e41f4b71Sopenharmony_ci 938e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 939e41f4b71Sopenharmony_ci| -------- | ---------------------------- | ---- | ---------------------------- | 940e41f4b71Sopenharmony_ci| targetNetworkId | string | 是 | 键鼠穿越目标设备描述符。 | 941e41f4b71Sopenharmony_ci| inputDeviceId | number | 是 | 待穿越输入设备标识符。 | 942e41f4b71Sopenharmony_ci| callback | AsyncCallback<void> | 是 | 回调函数,键鼠穿越启动成功时,err为undefined,否则为错误对象。 | 943e41f4b71Sopenharmony_ci 944e41f4b71Sopenharmony_ci**错误码:** 945e41f4b71Sopenharmony_ci 946e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 947e41f4b71Sopenharmony_ci 948e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 949e41f4b71Sopenharmony_ci| -------- | ---------------------------------------- | 950e41f4b71Sopenharmony_ci| 20900001 | Operation failed.| 951e41f4b71Sopenharmony_ci| 202 | Not system application. | 952e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 953e41f4b71Sopenharmony_ci 954e41f4b71Sopenharmony_ci**示例**: 955e41f4b71Sopenharmony_ci 956e41f4b71Sopenharmony_ci```ts 957e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 958e41f4b71Sopenharmony_cilet targetNetworkId = "networkId"; 959e41f4b71Sopenharmony_cilet inputDeviceId = 0; 960e41f4b71Sopenharmony_citry { 961e41f4b71Sopenharmony_ci cooperate.activate(targetNetworkId, inputDeviceId, (error: BusinessError) => { 962e41f4b71Sopenharmony_ci if (error) { 963e41f4b71Sopenharmony_ci console.log(`Start Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 964e41f4b71Sopenharmony_ci return; 965e41f4b71Sopenharmony_ci } 966e41f4b71Sopenharmony_ci console.log(`Start Keyboard mouse crossing success.`); 967e41f4b71Sopenharmony_ci }); 968e41f4b71Sopenharmony_ci} catch (error) { 969e41f4b71Sopenharmony_ci console.log(`Start Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 970e41f4b71Sopenharmony_ci} 971e41f4b71Sopenharmony_ci``` 972e41f4b71Sopenharmony_ci 973e41f4b71Sopenharmony_ci## cooperate.activate<sup>(deprecated)</sup> 974e41f4b71Sopenharmony_ci 975e41f4b71Sopenharmony_ciactivate(targetNetworkId: string, inputDeviceId: number): Promise<void>; 976e41f4b71Sopenharmony_ci 977e41f4b71Sopenharmony_ci启动键鼠穿越,使用Promise异步回调。 978e41f4b71Sopenharmony_ci 979e41f4b71Sopenharmony_ci> **说明:** 980e41f4b71Sopenharmony_ci> 981e41f4b71Sopenharmony_ci> 从API version 10开始不在维护。建议使用[cooperate.activateCooperate](#cooperateactivatecooperate11-1)替代 982e41f4b71Sopenharmony_ci 983e41f4b71Sopenharmony_ci**系统能力**: SystemCapability.Msdp.DeviceStatus.Cooperate 984e41f4b71Sopenharmony_ci 985e41f4b71Sopenharmony_ci**参数**: 986e41f4b71Sopenharmony_ci 987e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 988e41f4b71Sopenharmony_ci| -------- | ---------------------------- | ---- | ---------------------------- | 989e41f4b71Sopenharmony_ci| targetNetworkId | string | 是 | 键鼠穿越目标设备描述符。 | 990e41f4b71Sopenharmony_ci| inputDeviceId | number | 是 | 待穿越输入设备标识符。 | 991e41f4b71Sopenharmony_ci 992e41f4b71Sopenharmony_ci 993e41f4b71Sopenharmony_ci 994e41f4b71Sopenharmony_ci**返回值**: 995e41f4b71Sopenharmony_ci 996e41f4b71Sopenharmony_ci| 参数名 | 说明 | 997e41f4b71Sopenharmony_ci| ---------------------- | ------------------------------- | 998e41f4b71Sopenharmony_ci| Promise<void> | 无返回结果的Promise对象。 | 999e41f4b71Sopenharmony_ci 1000e41f4b71Sopenharmony_ci**错误码:** 1001e41f4b71Sopenharmony_ci 1002e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 1003e41f4b71Sopenharmony_ci 1004e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 1005e41f4b71Sopenharmony_ci| -------- | ---------------------------------------- | 1006e41f4b71Sopenharmony_ci| 20900001 | Operation failed. | 1007e41f4b71Sopenharmony_ci| 202 | Not system application. | 1008e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 1009e41f4b71Sopenharmony_ci 1010e41f4b71Sopenharmony_ci**示例**: 1011e41f4b71Sopenharmony_ci 1012e41f4b71Sopenharmony_ci```ts 1013e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 1014e41f4b71Sopenharmony_cilet targetNetworkId = "networkId"; 1015e41f4b71Sopenharmony_cilet inputDeviceId = 0; 1016e41f4b71Sopenharmony_citry { 1017e41f4b71Sopenharmony_ci cooperate.activate(targetNetworkId, inputDeviceId).then(() => { 1018e41f4b71Sopenharmony_ci console.log(`Start Keyboard mouse crossing success.`); 1019e41f4b71Sopenharmony_ci }, (error: BusinessError) => { 1020e41f4b71Sopenharmony_ci console.log(`Start Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 1021e41f4b71Sopenharmony_ci }); 1022e41f4b71Sopenharmony_ci} catch (error) { 1023e41f4b71Sopenharmony_ci console.log(`Start Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 1024e41f4b71Sopenharmony_ci} 1025e41f4b71Sopenharmony_ci``` 1026e41f4b71Sopenharmony_ci 1027e41f4b71Sopenharmony_ci 1028e41f4b71Sopenharmony_ci 1029e41f4b71Sopenharmony_ci## cooperate.deactivate<sup>(deprecated)</sup> 1030e41f4b71Sopenharmony_ci 1031e41f4b71Sopenharmony_cideactivate(isUnchained: boolean, callback: AsyncCallback<void>): void; 1032e41f4b71Sopenharmony_ci 1033e41f4b71Sopenharmony_ci停止键鼠穿越,使用Callback异步回调。 1034e41f4b71Sopenharmony_ci 1035e41f4b71Sopenharmony_ci> **说明:** 1036e41f4b71Sopenharmony_ci> 1037e41f4b71Sopenharmony_ci> 从API version 10开始不在维护。建议使用[cooperate.deactivateCooperate](#cooperatedeactivatecooperate11)替代 1038e41f4b71Sopenharmony_ci 1039e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 1040e41f4b71Sopenharmony_ci 1041e41f4b71Sopenharmony_ci**参数**: 1042e41f4b71Sopenharmony_ci 1043e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 1044e41f4b71Sopenharmony_ci| -------- | ---------------------------- | ---- | ---------------------------- | 1045e41f4b71Sopenharmony_ci| isUnchained | boolean | 是 | 是否关闭跨设备链路。<br> ture表示关闭跨设备链路,false表示不关闭。 | 1046e41f4b71Sopenharmony_ci| callback | AsyncCallback<void> | 是 | 回调函数,键鼠穿越停止成功时,err为undefined,否则为错误对象。| 1047e41f4b71Sopenharmony_ci 1048e41f4b71Sopenharmony_ci**错误码:** 1049e41f4b71Sopenharmony_ci 1050e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 1051e41f4b71Sopenharmony_ci 1052e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 1053e41f4b71Sopenharmony_ci| -------- | ----------------- | 1054e41f4b71Sopenharmony_ci| 202 | Not system application. | 1055e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 1056e41f4b71Sopenharmony_ci 1057e41f4b71Sopenharmony_ci**示例**: 1058e41f4b71Sopenharmony_ci 1059e41f4b71Sopenharmony_ci```ts 1060e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 1061e41f4b71Sopenharmony_citry { 1062e41f4b71Sopenharmony_ci cooperate.deactivate(false, (error: BusinessError) => { 1063e41f4b71Sopenharmony_ci if (error) { 1064e41f4b71Sopenharmony_ci console.log(`Stop Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 1065e41f4b71Sopenharmony_ci return; 1066e41f4b71Sopenharmony_ci } 1067e41f4b71Sopenharmony_ci console.log(`Stop Keyboard mouse crossing success.`); 1068e41f4b71Sopenharmony_ci }); 1069e41f4b71Sopenharmony_ci} catch (error) { 1070e41f4b71Sopenharmony_ci console.log(`Stop Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 1071e41f4b71Sopenharmony_ci} 1072e41f4b71Sopenharmony_ci``` 1073e41f4b71Sopenharmony_ci 1074e41f4b71Sopenharmony_ci## cooperate.deactivate<sup>(deprecated)</sup> 1075e41f4b71Sopenharmony_ci 1076e41f4b71Sopenharmony_cideactivate(isUnchained: boolean): Promise<void>; 1077e41f4b71Sopenharmony_ci 1078e41f4b71Sopenharmony_ci停止键鼠穿越,使用Promise异步回调。 1079e41f4b71Sopenharmony_ci 1080e41f4b71Sopenharmony_ci> **说明:** 1081e41f4b71Sopenharmony_ci> 1082e41f4b71Sopenharmony_ci> 从API version 10开始不在维护。建议使用[cooperate.deactivateCooperate](#cooperatedeactivatecooperate11-1)替代 1083e41f4b71Sopenharmony_ci 1084e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 1085e41f4b71Sopenharmony_ci 1086e41f4b71Sopenharmony_ci**参数**: 1087e41f4b71Sopenharmony_ci 1088e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 1089e41f4b71Sopenharmony_ci| ----------- | ------- | ---- | ------------------ | 1090e41f4b71Sopenharmony_ci| isUnchained | boolean | 是 | 是否关闭跨设备链路。<br> ture表示关闭跨设备链路,false表示不关闭。 | 1091e41f4b71Sopenharmony_ci 1092e41f4b71Sopenharmony_ci 1093e41f4b71Sopenharmony_ci 1094e41f4b71Sopenharmony_ci**返回值**: 1095e41f4b71Sopenharmony_ci 1096e41f4b71Sopenharmony_ci| 参数名 | 说明 | 1097e41f4b71Sopenharmony_ci| -------- | ---------------------------- | 1098e41f4b71Sopenharmony_ci| Promise<void> | 无返回结果的Promise对象。 | 1099e41f4b71Sopenharmony_ci 1100e41f4b71Sopenharmony_ci**错误码:** 1101e41f4b71Sopenharmony_ci 1102e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 1103e41f4b71Sopenharmony_ci 1104e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 1105e41f4b71Sopenharmony_ci| -------- | ----------------- | 1106e41f4b71Sopenharmony_ci| 202 | Not system application. | 1107e41f4b71Sopenharmony_ci 1108e41f4b71Sopenharmony_ci**示例**: 1109e41f4b71Sopenharmony_ci 1110e41f4b71Sopenharmony_ci```ts 1111e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 1112e41f4b71Sopenharmony_citry { 1113e41f4b71Sopenharmony_ci cooperate.deactivate(false).then(() => { 1114e41f4b71Sopenharmony_ci console.log(`Stop Keyboard mouse crossing success.`); 1115e41f4b71Sopenharmony_ci }, (error: BusinessError) => { 1116e41f4b71Sopenharmony_ci console.log(`Stop Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 1117e41f4b71Sopenharmony_ci }); 1118e41f4b71Sopenharmony_ci} catch (error) { 1119e41f4b71Sopenharmony_ci console.log(`Stop Keyboard mouse crossing failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 1120e41f4b71Sopenharmony_ci} 1121e41f4b71Sopenharmony_ci``` 1122e41f4b71Sopenharmony_ci 1123e41f4b71Sopenharmony_ci 1124e41f4b71Sopenharmony_ci 1125e41f4b71Sopenharmony_ci## cooperate.getCrossingSwitchState<sup>(deprecated)</sup> 1126e41f4b71Sopenharmony_ci 1127e41f4b71Sopenharmony_cigetCrossingSwitchState(networkId: string, callback: AsyncCallback<boolean>): void; 1128e41f4b71Sopenharmony_ci 1129e41f4b71Sopenharmony_ci获取目标设备键鼠穿越开关的状态,使用Callback异步回调。 1130e41f4b71Sopenharmony_ci 1131e41f4b71Sopenharmony_ci> **说明:** 1132e41f4b71Sopenharmony_ci> 1133e41f4b71Sopenharmony_ci> 从API version 10开始不在维护。建议使用[cooperate.getCooperateSwitchState](#cooperategetcooperateswitchstate11)替代 1134e41f4b71Sopenharmony_ci 1135e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 1136e41f4b71Sopenharmony_ci 1137e41f4b71Sopenharmony_ci**参数**: 1138e41f4b71Sopenharmony_ci 1139e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 1140e41f4b71Sopenharmony_ci| -------- | --------- | ---- | ---------------------------- | 1141e41f4b71Sopenharmony_ci| networkId | string | 是 | 键鼠穿越目标设备描述符。 | 1142e41f4b71Sopenharmony_ci| callback | AsyncCallback<boolean> | 是 | 回调函数,返回ture表示目标设备键鼠穿越的开关开启,返回false表示开关未开启。 | 1143e41f4b71Sopenharmony_ci 1144e41f4b71Sopenharmony_ci**错误码:** 1145e41f4b71Sopenharmony_ci 1146e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 1147e41f4b71Sopenharmony_ci 1148e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 1149e41f4b71Sopenharmony_ci| -------- | ----------------- | 1150e41f4b71Sopenharmony_ci| 202 | Not system application. | 1151e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 1152e41f4b71Sopenharmony_ci 1153e41f4b71Sopenharmony_ci**示例**: 1154e41f4b71Sopenharmony_ci 1155e41f4b71Sopenharmony_ci```ts 1156e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 1157e41f4b71Sopenharmony_cilet deviceDescriptor = "networkId"; 1158e41f4b71Sopenharmony_citry { 1159e41f4b71Sopenharmony_ci cooperate.getCrossingSwitchState(deviceDescriptor, (error: BusinessError, data: boolean) => { 1160e41f4b71Sopenharmony_ci if (error) { 1161e41f4b71Sopenharmony_ci console.log(`Get the status failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 1162e41f4b71Sopenharmony_ci return; 1163e41f4b71Sopenharmony_ci } 1164e41f4b71Sopenharmony_ci console.log(`Get the status success, data: ${JSON.stringify(data)}`); 1165e41f4b71Sopenharmony_ci }); 1166e41f4b71Sopenharmony_ci} catch (error) { 1167e41f4b71Sopenharmony_ci console.log(`Get the status failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 1168e41f4b71Sopenharmony_ci} 1169e41f4b71Sopenharmony_ci``` 1170e41f4b71Sopenharmony_ci 1171e41f4b71Sopenharmony_ci## cooperate.getCrossingSwitchState<sup>(deprecated)</sup> 1172e41f4b71Sopenharmony_ci 1173e41f4b71Sopenharmony_cigetCrossingSwitchState(networkId: string): Promise<boolean>; 1174e41f4b71Sopenharmony_ci 1175e41f4b71Sopenharmony_ci获取目标设备键鼠穿越开关的状态,使用Promise异步方式返回结果。 1176e41f4b71Sopenharmony_ci 1177e41f4b71Sopenharmony_ci> **说明:** 1178e41f4b71Sopenharmony_ci> 1179e41f4b71Sopenharmony_ci> 从API version 10开始不在维护。建议使用[cooperate.getCooperateSwitchState](#cooperategetcooperateswitchstate11-1)替代 1180e41f4b71Sopenharmony_ci 1181e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 1182e41f4b71Sopenharmony_ci 1183e41f4b71Sopenharmony_ci**参数**: 1184e41f4b71Sopenharmony_ci 1185e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 1186e41f4b71Sopenharmony_ci| -------- | --------- | ---- | ---------------------------- | 1187e41f4b71Sopenharmony_ci| networkId | string | 是 | 键鼠穿越目标设备描述符。 | 1188e41f4b71Sopenharmony_ci 1189e41f4b71Sopenharmony_ci**错误码:** 1190e41f4b71Sopenharmony_ci 1191e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 1192e41f4b71Sopenharmony_ci 1193e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 1194e41f4b71Sopenharmony_ci| -------- | ----------------- | 1195e41f4b71Sopenharmony_ci| 202 | Not system application. | 1196e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 1197e41f4b71Sopenharmony_ci 1198e41f4b71Sopenharmony_ci**返回值**: 1199e41f4b71Sopenharmony_ci 1200e41f4b71Sopenharmony_ci| 参数 | 说明 | 1201e41f4b71Sopenharmony_ci| ------------------- | ------------------------------- | 1202e41f4b71Sopenharmony_ci| Promise<boolean> | Promise对象,返回ture表示目标设备键鼠穿越的开关开启,返回false表示开关未开启。 | 1203e41f4b71Sopenharmony_ci 1204e41f4b71Sopenharmony_ci 1205e41f4b71Sopenharmony_ci 1206e41f4b71Sopenharmony_ci**示例**: 1207e41f4b71Sopenharmony_ci 1208e41f4b71Sopenharmony_ci```ts 1209e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 1210e41f4b71Sopenharmony_cilet deviceDescriptor = "networkId"; 1211e41f4b71Sopenharmony_citry { 1212e41f4b71Sopenharmony_ci cooperate.getCrossingSwitchState(deviceDescriptor).then((data: boolean) => { 1213e41f4b71Sopenharmony_ci console.log(`Get the status success, data: ${JSON.stringify(data)}`); 1214e41f4b71Sopenharmony_ci }, (error: BusinessError) => { 1215e41f4b71Sopenharmony_ci console.log(`Get the status failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 1216e41f4b71Sopenharmony_ci }); 1217e41f4b71Sopenharmony_ci} catch (error) { 1218e41f4b71Sopenharmony_ci console.log(`Get the status failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 1219e41f4b71Sopenharmony_ci} 1220e41f4b71Sopenharmony_ci``` 1221e41f4b71Sopenharmony_ci 1222e41f4b71Sopenharmony_ci 1223e41f4b71Sopenharmony_ci 1224e41f4b71Sopenharmony_ci## on('cooperate')<sup>(deprecated)</sup> 1225e41f4b71Sopenharmony_ci 1226e41f4b71Sopenharmony_cion(type: 'cooperate', callback: Callback<{ networkId: string, msg: CooperateMsg }>): void; 1227e41f4b71Sopenharmony_ci 1228e41f4b71Sopenharmony_ci注册监听键鼠穿越状态。 1229e41f4b71Sopenharmony_ci 1230e41f4b71Sopenharmony_ci> **说明:** 1231e41f4b71Sopenharmony_ci> 1232e41f4b71Sopenharmony_ci> 从API version 10开始不在维护。建议使用[on('cooperateMessage')](#oncooperatemessage11)替代 1233e41f4b71Sopenharmony_ci 1234e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 1235e41f4b71Sopenharmony_ci 1236e41f4b71Sopenharmony_ci**参数**: 1237e41f4b71Sopenharmony_ci 1238e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 1239e41f4b71Sopenharmony_ci| -------- | ---------------------------- | ---- | ---------------------------- | 1240e41f4b71Sopenharmony_ci| type | string | 是 | 监听类型,取值为'cooperate' | 1241e41f4b71Sopenharmony_ci| callback | Callback<{ networkId: string, msg: [CooperateMsg](#cooperatemsgdeprecated) }> | 是 | 回调函数,异步返回键鼠穿越状态消息。 | 1242e41f4b71Sopenharmony_ci 1243e41f4b71Sopenharmony_ci**错误码:** 1244e41f4b71Sopenharmony_ci 1245e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 1246e41f4b71Sopenharmony_ci 1247e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 1248e41f4b71Sopenharmony_ci| -------- | ----------------- | 1249e41f4b71Sopenharmony_ci| 202 | Not system application. | 1250e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 1251e41f4b71Sopenharmony_ci 1252e41f4b71Sopenharmony_ci**示例**: 1253e41f4b71Sopenharmony_ci 1254e41f4b71Sopenharmony_ci```ts 1255e41f4b71Sopenharmony_cifunction callback(networkId: string, msg: cooperate.CooperateMsg) { 1256e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing event: ${JSON.stringify(networkId)}`); 1257e41f4b71Sopenharmony_ci return false; 1258e41f4b71Sopenharmony_ci} 1259e41f4b71Sopenharmony_citry { 1260e41f4b71Sopenharmony_ci cooperate.on('cooperate', callback); 1261e41f4b71Sopenharmony_ci} catch (error) { 1262e41f4b71Sopenharmony_ci console.log(`Register failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 1263e41f4b71Sopenharmony_ci} 1264e41f4b71Sopenharmony_ci``` 1265e41f4b71Sopenharmony_ci 1266e41f4b71Sopenharmony_ci 1267e41f4b71Sopenharmony_ci 1268e41f4b71Sopenharmony_ci## off('cooperate')<sup>(deprecated)</sup> 1269e41f4b71Sopenharmony_ci 1270e41f4b71Sopenharmony_cioff(type: 'cooperate', callback?: Callback<void>): void; 1271e41f4b71Sopenharmony_ci 1272e41f4b71Sopenharmony_ci取消监听键鼠穿越状态。 1273e41f4b71Sopenharmony_ci 1274e41f4b71Sopenharmony_ci> **说明:** 1275e41f4b71Sopenharmony_ci> 1276e41f4b71Sopenharmony_ci> 从API version 10开始不在维护。建议使用[off('cooperateMessage')](#offcooperatemessage11)替代 1277e41f4b71Sopenharmony_ci 1278e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 1279e41f4b71Sopenharmony_ci 1280e41f4b71Sopenharmony_ci**参数**: 1281e41f4b71Sopenharmony_ci 1282e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 1283e41f4b71Sopenharmony_ci| -------- | ---------------------------- | ---- | ---------------------------- | 1284e41f4b71Sopenharmony_ci| type | string | 是 | 监听类型,取值为'cooperate'。 | 1285e41f4b71Sopenharmony_ci| callback | AsyncCallback<void> | 否 | 需要取消注册的回调函数,若无此参数,则取消当前应用注册的所有回调函数。 | 1286e41f4b71Sopenharmony_ci 1287e41f4b71Sopenharmony_ci**错误码:** 1288e41f4b71Sopenharmony_ci 1289e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[ohos.devicestatus错误码](errorcode-devicestatus.md)。 1290e41f4b71Sopenharmony_ci 1291e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 1292e41f4b71Sopenharmony_ci| -------- | ----------------- | 1293e41f4b71Sopenharmony_ci| 202 | Not system application. | 1294e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. | 1295e41f4b71Sopenharmony_ci 1296e41f4b71Sopenharmony_ci**示例**: 1297e41f4b71Sopenharmony_ci 1298e41f4b71Sopenharmony_ci```ts 1299e41f4b71Sopenharmony_ci// 取消注册单个回调函数 1300e41f4b71Sopenharmony_cifunction callbackOn(networkId: string, msg: cooperate.CooperateMsg) { 1301e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing event: ${JSON.stringify(networkId)}`); 1302e41f4b71Sopenharmony_ci return false; 1303e41f4b71Sopenharmony_ci} 1304e41f4b71Sopenharmony_cifunction callbackOff() { 1305e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing event`); 1306e41f4b71Sopenharmony_ci return false; 1307e41f4b71Sopenharmony_ci} 1308e41f4b71Sopenharmony_citry { 1309e41f4b71Sopenharmony_ci cooperate.on('cooperate', callbackOn); 1310e41f4b71Sopenharmony_ci cooperate.off('cooperate', callbackOff); 1311e41f4b71Sopenharmony_ci} catch (error) { 1312e41f4b71Sopenharmony_ci console.log(`Execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 1313e41f4b71Sopenharmony_ci} 1314e41f4b71Sopenharmony_ci``` 1315e41f4b71Sopenharmony_ci```ts 1316e41f4b71Sopenharmony_ci// 取消注册所有回调函数 1317e41f4b71Sopenharmony_cifunction callbackOn(networkId: string, msg: cooperate.CooperateMsg) { 1318e41f4b71Sopenharmony_ci console.log(`Keyboard mouse crossing event: ${JSON.stringify(networkId)}`); 1319e41f4b71Sopenharmony_ci return false; 1320e41f4b71Sopenharmony_ci} 1321e41f4b71Sopenharmony_citry { 1322e41f4b71Sopenharmony_ci cooperate.on('cooperate', callbackOn); 1323e41f4b71Sopenharmony_ci cooperate.off('cooperate'); 1324e41f4b71Sopenharmony_ci} catch (error) { 1325e41f4b71Sopenharmony_ci console.log(`Execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`); 1326e41f4b71Sopenharmony_ci} 1327e41f4b71Sopenharmony_ci``` 1328e41f4b71Sopenharmony_ci 1329e41f4b71Sopenharmony_ci 1330e41f4b71Sopenharmony_ci 1331e41f4b71Sopenharmony_ci## CooperateMsg<sup>(deprecated)</sup> 1332e41f4b71Sopenharmony_ci 1333e41f4b71Sopenharmony_ci键鼠穿越的消息通知。 1334e41f4b71Sopenharmony_ci 1335e41f4b71Sopenharmony_ci> **说明:** 1336e41f4b71Sopenharmony_ci> 1337e41f4b71Sopenharmony_ci> 从API version 10开始不在维护。建议使用[CooperateMessage](#cooperatemessage11)替代 1338e41f4b71Sopenharmony_ci 1339e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Msdp.DeviceStatus.Cooperate 1340e41f4b71Sopenharmony_ci 1341e41f4b71Sopenharmony_ci| 名称 | 值 | 说明 | 1342e41f4b71Sopenharmony_ci| -------- | ----------------- | ----------------- | 1343e41f4b71Sopenharmony_ci| COOPERATE_PREPARE | 0 | 表示准备键鼠穿越。 | 1344e41f4b71Sopenharmony_ci| COOPERATE_UNPREPARE | 1 | 表示取消键鼠穿越准备。 | 1345e41f4b71Sopenharmony_ci| COOPERATE_ACTIVATE | 2 | 表示启动键鼠穿越。 | 1346e41f4b71Sopenharmony_ci| COOPERATE_ACTIVATE_SUCCESS | 3 | 表示键鼠穿越启动成功。 | 1347e41f4b71Sopenharmony_ci| COOPERATE_ACTIVATE_FAIL | 4 | 表示键鼠穿越启动失败。 | 1348e41f4b71Sopenharmony_ci| COOPERATE_DEACTIVATE_SUCCESS | 5 | 表示键鼠穿越停止成功。 | 1349e41f4b71Sopenharmony_ci| COOPERATE_DEACTIVATE_FAIL | 6 | 表示键鼠穿越停止失败。 | 1350e41f4b71Sopenharmony_ci| COOPERATE_SESSION_DISCONNECTED | 7 | 表示键鼠穿越会话断开。 | 1351