1e41f4b71Sopenharmony_ci# @ohos.pasteboard (Pasteboard) 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ciThe **Pasteboard** module provides the copy and paste support for the system pasteboard. You can use the APIs of this module to operate pasteboard content of the plain text, HTML, URI, Want, pixel map, and other types. 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ci> **NOTE** 6e41f4b71Sopenharmony_ci> 7e41f4b71Sopenharmony_ci> The initial APIs of this module are supported since API version 6. Newly added APIs will be marked with a superscript to indicate their earliest API version. 8e41f4b71Sopenharmony_ci 9e41f4b71Sopenharmony_ci## Modules to Import 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ci```ts 12e41f4b71Sopenharmony_ciimport { pasteboard } from '@kit.BasicServicesKit'; 13e41f4b71Sopenharmony_ci``` 14e41f4b71Sopenharmony_ci 15e41f4b71Sopenharmony_ci## Constants 16e41f4b71Sopenharmony_ci 17e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 18e41f4b71Sopenharmony_ci 19e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ci| Name| Type| Value | Description | 22e41f4b71Sopenharmony_ci| -------- | -------- |--------------|-------------------------------------------------------------------------------------------------------------------------------------------| 23e41f4b71Sopenharmony_ci| MAX_RECORD_NUM<sup>7+</sup> | number | - | Maximum number of records in a **PasteData** object. In versions earlier than API version 10, the value is 512, indicating that no more records can be added once the number of records reaches 512.<br>Since API version 10, no limit is placed on the number of records in a **PasteData** object.| 24e41f4b71Sopenharmony_ci| MIMETYPE_TEXT_HTML<sup>7+</sup> | string | 'text/html' | MIME type of the HTML content. | 25e41f4b71Sopenharmony_ci| MIMETYPE_TEXT_WANT<sup>7+</sup> | string | 'text/want' | MIME type of the Want content. | 26e41f4b71Sopenharmony_ci| MIMETYPE_TEXT_PLAIN<sup>7+</sup> | string | 'text/plain' | MIME type of the plain text content. | 27e41f4b71Sopenharmony_ci| MIMETYPE_TEXT_URI<sup>7+</sup> | string | 'text/uri' | MIME type of the URI content. | 28e41f4b71Sopenharmony_ci| MIMETYPE_PIXELMAP<sup>9+</sup> | string | 'pixelMap' | MIME type of the pixel map. | 29e41f4b71Sopenharmony_ci 30e41f4b71Sopenharmony_ci## ValueType<sup>9+</sup> 31e41f4b71Sopenharmony_ci 32e41f4b71Sopenharmony_citype ValueType = string | image.PixelMap | Want | ArrayBuffer 33e41f4b71Sopenharmony_ci 34e41f4b71Sopenharmony_ciEnumerates the value types. 35e41f4b71Sopenharmony_ci 36e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 37e41f4b71Sopenharmony_ci 38e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 39e41f4b71Sopenharmony_ci 40e41f4b71Sopenharmony_ci| Type| Description| 41e41f4b71Sopenharmony_ci| -------- | -------- | 42e41f4b71Sopenharmony_ci| string | The value is a string.| 43e41f4b71Sopenharmony_ci| image.PixelMap | The value is of the [image.PixelMap](../apis-image-kit/js-apis-image.md#pixelmap7) type.| 44e41f4b71Sopenharmony_ci| Want | The value is of the [Want](../apis-ability-kit/js-apis-app-ability-want.md) type.| 45e41f4b71Sopenharmony_ci| ArrayBuffer | The value is of the **ArrayBuffer** type.| 46e41f4b71Sopenharmony_ci 47e41f4b71Sopenharmony_ci## pasteboard.createData<sup>9+</sup> 48e41f4b71Sopenharmony_ci 49e41f4b71Sopenharmony_cicreateData(mimeType: string, value: ValueType): PasteData 50e41f4b71Sopenharmony_ci 51e41f4b71Sopenharmony_ciCreates a **PasteData** object of a custom type. 52e41f4b71Sopenharmony_ci 53e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 54e41f4b71Sopenharmony_ci 55e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 56e41f4b71Sopenharmony_ci 57e41f4b71Sopenharmony_ci**Parameters** 58e41f4b71Sopenharmony_ci 59e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description | 60e41f4b71Sopenharmony_ci| -------- | -------- | -------- |--------------------------------------------------------------------------------------------------------| 61e41f4b71Sopenharmony_ci| mimeType | string | Yes| MIME type of custom data. The value can a predefined MIME type listed in [Constants](#constants), including HTML, WANT, plain text, URI, and pixel map, or a custom MIME type. The value of **mimeType** cannot exceed 1024 bytes.| 62e41f4b71Sopenharmony_ci| value | [ValueType](#valuetype9) | Yes| Content of custom data. | 63e41f4b71Sopenharmony_ci 64e41f4b71Sopenharmony_ci**Return value** 65e41f4b71Sopenharmony_ci 66e41f4b71Sopenharmony_ci| Type| Description| 67e41f4b71Sopenharmony_ci| -------- | -------- | 68e41f4b71Sopenharmony_ci| [PasteData](#pastedata) | **PasteData** object.| 69e41f4b71Sopenharmony_ci 70e41f4b71Sopenharmony_ci**Error codes** 71e41f4b71Sopenharmony_ci 72e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 73e41f4b71Sopenharmony_ci 74e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 75e41f4b71Sopenharmony_ci| -------- | -------- | 76e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 77e41f4b71Sopenharmony_ci 78e41f4b71Sopenharmony_ci**Example 1** 79e41f4b71Sopenharmony_ci 80e41f4b71Sopenharmony_ci ```ts 81e41f4b71Sopenharmony_ci let dataXml = new ArrayBuffer(256); 82e41f4b71Sopenharmony_ci let pasteData: pasteboard.PasteData = pasteboard.createData('app/xml', dataXml); 83e41f4b71Sopenharmony_ci ``` 84e41f4b71Sopenharmony_ci 85e41f4b71Sopenharmony_ci**Example 2** 86e41f4b71Sopenharmony_ci 87e41f4b71Sopenharmony_ci ```ts 88e41f4b71Sopenharmony_ci let dataText = 'hello'; 89e41f4b71Sopenharmony_ci let pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, dataText); 90e41f4b71Sopenharmony_ci ``` 91e41f4b71Sopenharmony_ci 92e41f4b71Sopenharmony_ci 93e41f4b71Sopenharmony_ci## pasteboard.createRecord<sup>9+</sup> 94e41f4b71Sopenharmony_ci 95e41f4b71Sopenharmony_cicreateRecord(mimeType: string, value: ValueType):PasteDataRecord; 96e41f4b71Sopenharmony_ci 97e41f4b71Sopenharmony_ciCreates a **PasteDataRecord** object of the custom type. 98e41f4b71Sopenharmony_ci 99e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 100e41f4b71Sopenharmony_ci 101e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 102e41f4b71Sopenharmony_ci 103e41f4b71Sopenharmony_ci**Parameters** 104e41f4b71Sopenharmony_ci 105e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description | 106e41f4b71Sopenharmony_ci| -------- | -------- | -------- |-------------------| 107e41f4b71Sopenharmony_ci| mimeType | string | Yes| MIME type of custom data. The value can a predefined MIME type listed in [Constants](#constants), including HTML, WANT, plain text, URI, and pixel map, or a custom MIME type. The value of **mimeType** cannot exceed 1024 bytes. | 108e41f4b71Sopenharmony_ci| value | [ValueType](#valuetype9) | Yes| Content of custom data. | 109e41f4b71Sopenharmony_ci 110e41f4b71Sopenharmony_ci**Return value** 111e41f4b71Sopenharmony_ci 112e41f4b71Sopenharmony_ci| Type| Description| 113e41f4b71Sopenharmony_ci| -------- | -------- | 114e41f4b71Sopenharmony_ci| [PasteDataRecord](#pastedatarecord7) | New **PasteDataRecord** object of the custom type.| 115e41f4b71Sopenharmony_ci 116e41f4b71Sopenharmony_ci**Error codes** 117e41f4b71Sopenharmony_ci 118e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 119e41f4b71Sopenharmony_ci 120e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 121e41f4b71Sopenharmony_ci| -------- | -------- | 122e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 123e41f4b71Sopenharmony_ci 124e41f4b71Sopenharmony_ci**Example 1** 125e41f4b71Sopenharmony_ci 126e41f4b71Sopenharmony_ci ```ts 127e41f4b71Sopenharmony_cilet dataXml = new ArrayBuffer(256); 128e41f4b71Sopenharmony_cilet pasteDataRecord: pasteboard.PasteDataRecord = pasteboard.createRecord('app/xml', dataXml); 129e41f4b71Sopenharmony_ci ``` 130e41f4b71Sopenharmony_ci 131e41f4b71Sopenharmony_ci**Example 2** 132e41f4b71Sopenharmony_ci 133e41f4b71Sopenharmony_ci ```ts 134e41f4b71Sopenharmony_cilet dataUri = 'dataability:///com.example.myapplication1/user.txt'; 135e41f4b71Sopenharmony_cilet record: pasteboard.PasteDataRecord = pasteboard.createRecord(pasteboard.MIMETYPE_TEXT_URI, dataUri); 136e41f4b71Sopenharmony_ci ``` 137e41f4b71Sopenharmony_ci 138e41f4b71Sopenharmony_ci## pasteboard.getSystemPasteboard 139e41f4b71Sopenharmony_ci 140e41f4b71Sopenharmony_cigetSystemPasteboard(): SystemPasteboard 141e41f4b71Sopenharmony_ci 142e41f4b71Sopenharmony_ciObtains this **SystemPasteboard** object. 143e41f4b71Sopenharmony_ci 144e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 145e41f4b71Sopenharmony_ci 146e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 147e41f4b71Sopenharmony_ci 148e41f4b71Sopenharmony_ci**Return value** 149e41f4b71Sopenharmony_ci 150e41f4b71Sopenharmony_ci| Type| Description| 151e41f4b71Sopenharmony_ci| -------- | -------- | 152e41f4b71Sopenharmony_ci| [SystemPasteboard](#systempasteboard) | **SystemPasteboard** object.| 153e41f4b71Sopenharmony_ci 154e41f4b71Sopenharmony_ci**Example** 155e41f4b71Sopenharmony_ci 156e41f4b71Sopenharmony_ci```ts 157e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 158e41f4b71Sopenharmony_ci``` 159e41f4b71Sopenharmony_ci 160e41f4b71Sopenharmony_ci## ShareOption<sup>9+</sup> 161e41f4b71Sopenharmony_ci 162e41f4b71Sopenharmony_ciEnumerates the paste options of data. 163e41f4b71Sopenharmony_ci 164e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 165e41f4b71Sopenharmony_ci 166e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 167e41f4b71Sopenharmony_ci 168e41f4b71Sopenharmony_ci| Name | Value | Description | 169e41f4b71Sopenharmony_ci| ---------------------------------- | --- | ------------------------------------------------------------------------------------- | 170e41f4b71Sopenharmony_ci| INAPP | 0 | Only intra-application pasting is allowed. | 171e41f4b71Sopenharmony_ci| LOCALDEVICE | 1 | Paste is allowed in any application on the local device. | 172e41f4b71Sopenharmony_ci| CROSSDEVICE<sup>(deprecated)</sup> | 2 | Paste is allowed in any application across devices.<br>This API has been deprecated since API Version 12. No alternative API or method is available. You can choose **Settings** > **Multi-Device Collaboration** > **Cross-Device Clipboard Switch** to set whether to allow cross-device pasting.| 173e41f4b71Sopenharmony_ci 174e41f4b71Sopenharmony_ci## pasteboard.createHtmlData<sup>(deprecated)</sup> 175e41f4b71Sopenharmony_ci 176e41f4b71Sopenharmony_cicreateHtmlData(htmlText: string): PasteData 177e41f4b71Sopenharmony_ci 178e41f4b71Sopenharmony_ciCreates a **PasteData** object of the HTML type. 179e41f4b71Sopenharmony_ci> **NOTE** 180e41f4b71Sopenharmony_ci> 181e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [pasteboard.createData](#pasteboardcreatedata9). 182e41f4b71Sopenharmony_ci 183e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 184e41f4b71Sopenharmony_ci 185e41f4b71Sopenharmony_ci**Parameters** 186e41f4b71Sopenharmony_ci 187e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 188e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 189e41f4b71Sopenharmony_ci| htmlText | string | Yes| HTML content.| 190e41f4b71Sopenharmony_ci 191e41f4b71Sopenharmony_ci**Return value** 192e41f4b71Sopenharmony_ci 193e41f4b71Sopenharmony_ci| Type| Description| 194e41f4b71Sopenharmony_ci| -------- | -------- | 195e41f4b71Sopenharmony_ci| [PasteData](#pastedata) | **PasteData** object.| 196e41f4b71Sopenharmony_ci 197e41f4b71Sopenharmony_ci**Example** 198e41f4b71Sopenharmony_ci 199e41f4b71Sopenharmony_ci```ts 200e41f4b71Sopenharmony_cilet html = "<!DOCTYPE html>\n" + "<html>\n" + "<head>\n" + "<meta charset=\"utf-8\">\n" + "<title>HTML-PASTEBOARD_HTML</title>\n" + "</head>\n" + "<body>\n" + " <h1>HEAD</h1>\n" + " <p></p>\n" + "</body>\n" + "</html>"; 201e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createHtmlData(html); 202e41f4b71Sopenharmony_ci``` 203e41f4b71Sopenharmony_ci 204e41f4b71Sopenharmony_ci## pasteboard.createWantData<sup>(deprecated)</sup> 205e41f4b71Sopenharmony_ci 206e41f4b71Sopenharmony_cicreateWantData(want: Want): PasteData 207e41f4b71Sopenharmony_ci 208e41f4b71Sopenharmony_ciCreates a **PasteData** object of the Want type. 209e41f4b71Sopenharmony_ci> **NOTE** 210e41f4b71Sopenharmony_ci> 211e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [pasteboard.createData](#pasteboardcreatedata9). 212e41f4b71Sopenharmony_ci 213e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 214e41f4b71Sopenharmony_ci 215e41f4b71Sopenharmony_ci**Parameters** 216e41f4b71Sopenharmony_ci 217e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 218e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 219e41f4b71Sopenharmony_ci| want | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | Yes| Want content.| 220e41f4b71Sopenharmony_ci 221e41f4b71Sopenharmony_ci**Return value** 222e41f4b71Sopenharmony_ci 223e41f4b71Sopenharmony_ci| Type| Description| 224e41f4b71Sopenharmony_ci| -------- | -------- | 225e41f4b71Sopenharmony_ci| [PasteData](#pastedata) | **PasteData** object.| 226e41f4b71Sopenharmony_ci 227e41f4b71Sopenharmony_ci**Example** 228e41f4b71Sopenharmony_ci 229e41f4b71Sopenharmony_ci```ts 230e41f4b71Sopenharmony_ciimport { Want } from '@kit.AbilityKit'; 231e41f4b71Sopenharmony_ci 232e41f4b71Sopenharmony_cilet object: Want = { 233e41f4b71Sopenharmony_ci bundleName: "com.example.aafwk.test", 234e41f4b71Sopenharmony_ci abilityName: "com.example.aafwk.test.TwoAbility" 235e41f4b71Sopenharmony_ci}; 236e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createWantData(object); 237e41f4b71Sopenharmony_ci``` 238e41f4b71Sopenharmony_ci 239e41f4b71Sopenharmony_ci## pasteboard.createPlainTextData<sup>(deprecated)</sup> 240e41f4b71Sopenharmony_ci 241e41f4b71Sopenharmony_cicreatePlainTextData(text: string): PasteData 242e41f4b71Sopenharmony_ci 243e41f4b71Sopenharmony_ciCreates a **PasteData** object of the plain text type. 244e41f4b71Sopenharmony_ci> **NOTE** 245e41f4b71Sopenharmony_ci> 246e41f4b71Sopenharmony_ci> This API is supported since API version 6 and deprecated since API version 9. You are advised to use [pasteboard.createData](#pasteboardcreatedata9). 247e41f4b71Sopenharmony_ci 248e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 249e41f4b71Sopenharmony_ci 250e41f4b71Sopenharmony_ci**Parameters** 251e41f4b71Sopenharmony_ci 252e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 253e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 254e41f4b71Sopenharmony_ci| text | string | Yes| Plain text.| 255e41f4b71Sopenharmony_ci 256e41f4b71Sopenharmony_ci**Return value** 257e41f4b71Sopenharmony_ci 258e41f4b71Sopenharmony_ci| Type| Description| 259e41f4b71Sopenharmony_ci| -------- | -------- | 260e41f4b71Sopenharmony_ci| [PasteData](#pastedata) | **PasteData** object.| 261e41f4b71Sopenharmony_ci 262e41f4b71Sopenharmony_ci**Example** 263e41f4b71Sopenharmony_ci 264e41f4b71Sopenharmony_ci```ts 265e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createPlainTextData('content'); 266e41f4b71Sopenharmony_ci``` 267e41f4b71Sopenharmony_ci 268e41f4b71Sopenharmony_ci## pasteboard.createUriData<sup>(deprecated)</sup> 269e41f4b71Sopenharmony_ci 270e41f4b71Sopenharmony_cicreateUriData(uri: string): PasteData 271e41f4b71Sopenharmony_ci 272e41f4b71Sopenharmony_ciCreates a **PasteData** object of the URI type. 273e41f4b71Sopenharmony_ci> **NOTE** 274e41f4b71Sopenharmony_ci> 275e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [pasteboard.createData](#pasteboardcreatedata9). 276e41f4b71Sopenharmony_ci 277e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 278e41f4b71Sopenharmony_ci 279e41f4b71Sopenharmony_ci**Parameters** 280e41f4b71Sopenharmony_ci 281e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 282e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 283e41f4b71Sopenharmony_ci| uri | string | Yes| URI content.| 284e41f4b71Sopenharmony_ci 285e41f4b71Sopenharmony_ci**Return value** 286e41f4b71Sopenharmony_ci 287e41f4b71Sopenharmony_ci| Type| Description| 288e41f4b71Sopenharmony_ci| -------- | -------- | 289e41f4b71Sopenharmony_ci| [PasteData](#pastedata) | **PasteData** object.| 290e41f4b71Sopenharmony_ci 291e41f4b71Sopenharmony_ci**Example** 292e41f4b71Sopenharmony_ci 293e41f4b71Sopenharmony_ci```ts 294e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createUriData('dataability:///com.example.myapplication1/user.txt'); 295e41f4b71Sopenharmony_ci``` 296e41f4b71Sopenharmony_ci## pasteboard.createHtmlTextRecord<sup>(deprecated)</sup> 297e41f4b71Sopenharmony_ci 298e41f4b71Sopenharmony_cicreateHtmlTextRecord(htmlText: string): PasteDataRecord 299e41f4b71Sopenharmony_ci 300e41f4b71Sopenharmony_ciCreates a **PasteDataRecord** object of the HTML text type. 301e41f4b71Sopenharmony_ci> **NOTE** 302e41f4b71Sopenharmony_ci> 303e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [pasteboard.createRecord](#pasteboardcreaterecord9). 304e41f4b71Sopenharmony_ci 305e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 306e41f4b71Sopenharmony_ci 307e41f4b71Sopenharmony_ci**Parameters** 308e41f4b71Sopenharmony_ci 309e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 310e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 311e41f4b71Sopenharmony_ci| htmlText | string | Yes| HTML content.| 312e41f4b71Sopenharmony_ci 313e41f4b71Sopenharmony_ci**Return value** 314e41f4b71Sopenharmony_ci 315e41f4b71Sopenharmony_ci| Type| Description| 316e41f4b71Sopenharmony_ci| -------- | -------- | 317e41f4b71Sopenharmony_ci| [PasteDataRecord](#pastedatarecord7) | **PasteDataRecord** object of the HTML text type.| 318e41f4b71Sopenharmony_ci 319e41f4b71Sopenharmony_ci**Example** 320e41f4b71Sopenharmony_ci 321e41f4b71Sopenharmony_ci```ts 322e41f4b71Sopenharmony_cilet html = "<!DOCTYPE html>\n" + "<html>\n" + "<head>\n" + "<meta charset=\"utf-8\">\n" + "<title>HTML-PASTEBOARD_HTML</title>\n" + "</head>\n" + "<body>\n" + " <h1>HEAD</h1>\n" + " <p></p>\n" + "</body>\n" + "</html>"; 323e41f4b71Sopenharmony_cilet record: pasteboard.PasteDataRecord = pasteboard.createHtmlTextRecord(html); 324e41f4b71Sopenharmony_ci``` 325e41f4b71Sopenharmony_ci 326e41f4b71Sopenharmony_ci## pasteboard.createWantRecord<sup>(deprecated)</sup> 327e41f4b71Sopenharmony_ci 328e41f4b71Sopenharmony_cicreateWantRecord(want: Want): PasteDataRecord 329e41f4b71Sopenharmony_ci 330e41f4b71Sopenharmony_ciCreates a **PasteDataRecord** object of the Want type. 331e41f4b71Sopenharmony_ci> **NOTE** 332e41f4b71Sopenharmony_ci> 333e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [pasteboard.createRecord](#pasteboardcreaterecord9). 334e41f4b71Sopenharmony_ci 335e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 336e41f4b71Sopenharmony_ci 337e41f4b71Sopenharmony_ci**Parameters** 338e41f4b71Sopenharmony_ci 339e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 340e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 341e41f4b71Sopenharmony_ci| want | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | Yes| Want content.| 342e41f4b71Sopenharmony_ci 343e41f4b71Sopenharmony_ci**Return value** 344e41f4b71Sopenharmony_ci 345e41f4b71Sopenharmony_ci| Type| Description| 346e41f4b71Sopenharmony_ci| -------- | -------- | 347e41f4b71Sopenharmony_ci| [PasteDataRecord](#pastedatarecord7) | New **PasteDataRecord** object of the Want type.| 348e41f4b71Sopenharmony_ci 349e41f4b71Sopenharmony_ci**Example** 350e41f4b71Sopenharmony_ci 351e41f4b71Sopenharmony_ci```ts 352e41f4b71Sopenharmony_ciimport { Want } from '@kit.AbilityKit'; 353e41f4b71Sopenharmony_ci 354e41f4b71Sopenharmony_cilet object: Want = { 355e41f4b71Sopenharmony_ci bundleName: "com.example.aafwk.test", 356e41f4b71Sopenharmony_ci abilityName: "com.example.aafwk.test.TwoAbility" 357e41f4b71Sopenharmony_ci}; 358e41f4b71Sopenharmony_cilet record: pasteboard.PasteDataRecord = pasteboard.createWantRecord(object); 359e41f4b71Sopenharmony_ci``` 360e41f4b71Sopenharmony_ci 361e41f4b71Sopenharmony_ci## pasteboard.createPlainTextRecord<sup>(deprecated)</sup> 362e41f4b71Sopenharmony_ci 363e41f4b71Sopenharmony_cicreatePlainTextRecord(text: string): PasteDataRecord 364e41f4b71Sopenharmony_ci 365e41f4b71Sopenharmony_ciCreates a **PasteDataRecord** object of the plain text type. 366e41f4b71Sopenharmony_ci> **NOTE** 367e41f4b71Sopenharmony_ci> 368e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [pasteboard.createRecord](#pasteboardcreaterecord9). 369e41f4b71Sopenharmony_ci 370e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 371e41f4b71Sopenharmony_ci 372e41f4b71Sopenharmony_ci**Parameters** 373e41f4b71Sopenharmony_ci 374e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 375e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 376e41f4b71Sopenharmony_ci| text | string | Yes| Plain text.| 377e41f4b71Sopenharmony_ci 378e41f4b71Sopenharmony_ci**Return value** 379e41f4b71Sopenharmony_ci 380e41f4b71Sopenharmony_ci| Type| Description| 381e41f4b71Sopenharmony_ci| -------- | -------- | 382e41f4b71Sopenharmony_ci| [PasteDataRecord](#pastedatarecord7) | New **PasteDataRecord** object of the plain text type.| 383e41f4b71Sopenharmony_ci 384e41f4b71Sopenharmony_ci**Example** 385e41f4b71Sopenharmony_ci 386e41f4b71Sopenharmony_ci```ts 387e41f4b71Sopenharmony_cilet record: pasteboard.PasteDataRecord = pasteboard.createPlainTextRecord('hello'); 388e41f4b71Sopenharmony_ci``` 389e41f4b71Sopenharmony_ci 390e41f4b71Sopenharmony_ci## pasteboard.createUriRecord<sup>(deprecated)</sup> 391e41f4b71Sopenharmony_ci 392e41f4b71Sopenharmony_cicreateUriRecord(uri: string): PasteDataRecord 393e41f4b71Sopenharmony_ci 394e41f4b71Sopenharmony_ciCreates a **PasteDataRecord** object of the URI type. 395e41f4b71Sopenharmony_ci> **NOTE** 396e41f4b71Sopenharmony_ci> 397e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [pasteboard.createRecord](#pasteboardcreaterecord9). 398e41f4b71Sopenharmony_ci 399e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 400e41f4b71Sopenharmony_ci 401e41f4b71Sopenharmony_ci**Parameters** 402e41f4b71Sopenharmony_ci 403e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 404e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 405e41f4b71Sopenharmony_ci| uri | string | Yes| URI content.| 406e41f4b71Sopenharmony_ci 407e41f4b71Sopenharmony_ci**Return value** 408e41f4b71Sopenharmony_ci 409e41f4b71Sopenharmony_ci| Type| Description| 410e41f4b71Sopenharmony_ci| -------- | -------- | 411e41f4b71Sopenharmony_ci| [PasteDataRecord](#pastedatarecord7) | New **PasteDataRecord** object of the URI type.| 412e41f4b71Sopenharmony_ci 413e41f4b71Sopenharmony_ci**Example** 414e41f4b71Sopenharmony_ci 415e41f4b71Sopenharmony_ci```ts 416e41f4b71Sopenharmony_cilet record: pasteboard.PasteDataRecord = pasteboard.createUriRecord('dataability:///com.example.myapplication1/user.txt'); 417e41f4b71Sopenharmony_ci``` 418e41f4b71Sopenharmony_ci 419e41f4b71Sopenharmony_ci 420e41f4b71Sopenharmony_ci## PasteDataProperty<sup>7+</sup> 421e41f4b71Sopenharmony_ci 422e41f4b71Sopenharmony_ciDefines the properties of all data records on the pasteboard, including the timestamp, data type, and additional data. 423e41f4b71Sopenharmony_ciThe defined properties can be applied to the pasteboard only with the [setProperty](#setproperty9) API. 424e41f4b71Sopenharmony_ci 425e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 426e41f4b71Sopenharmony_ci 427e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 428e41f4b71Sopenharmony_ci 429e41f4b71Sopenharmony_ci| Name| Type| Readable| Writable| Description | 430e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- |------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| 431e41f4b71Sopenharmony_ci| additions<sup>7+</sup> | {[key:string]:object} | Yes| Yes| Additional data. It does not allow for dynamic adding of attributes. Attributes can be added only by re-assigning values. For details, see the example of **setProperty**. | 432e41f4b71Sopenharmony_ci| mimeTypes<sup>7+</sup> | Array<string> | Yes| No| Non-repeating data types of the data records on the pasteboard. | 433e41f4b71Sopenharmony_ci| tag<sup>7+</sup> | string | Yes| Yes| Custom tag. | 434e41f4b71Sopenharmony_ci| timestamp<sup>7+</sup> | number | Yes| No| Timestamp when data is written to the pasteboard (unit: ms). | 435e41f4b71Sopenharmony_ci| localOnly<sup>7+</sup> | boolean | Yes| Yes| Whether the pasteboard content is for local access only. The default value is **false**. The value will be overwritten by the value of the **shareOption** attribute. You are advised to use the **shareOption** attribute instead. **ShareOption.INAPP** and **ShareOption.LOCALDEVICE** set **localOnly** to **true**, and **ShareOption.CROSSDEVICE** sets **localOnly** to false.<br>- **true**: The pasteboard content is set for local access only.<br>- **false**: The pasteboard content can be shared between devices.| 436e41f4b71Sopenharmony_ci| shareOption<sup>9+</sup> | [ShareOption](#shareoption9) | Yes| Yes| Where the pasteboard content can be pasted. If this attribute is set incorrectly or not set, the default value **CROSSDEVICE** is used. | 437e41f4b71Sopenharmony_ci 438e41f4b71Sopenharmony_ci## PasteDataRecord<sup>7+</sup> 439e41f4b71Sopenharmony_ci 440e41f4b71Sopenharmony_ciProvides **PasteDataRecord** APIs. A **PasteDataRecord** is an abstract definition of the content on the pasteboard. The pasteboard content consists of one or more plain text, HTML, URI, or Want records. 441e41f4b71Sopenharmony_ci 442e41f4b71Sopenharmony_ci### Attributes 443e41f4b71Sopenharmony_ci 444e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 445e41f4b71Sopenharmony_ci 446e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 447e41f4b71Sopenharmony_ci 448e41f4b71Sopenharmony_ci| Name| Type| Readable| Writable| Description| 449e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | -------- | 450e41f4b71Sopenharmony_ci| htmlText<sup>7+</sup> | string | Yes| No| HTML content.| 451e41f4b71Sopenharmony_ci| want<sup>7+</sup> | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | Yes| No| Want content.| 452e41f4b71Sopenharmony_ci| mimeType<sup>7+</sup> | string | Yes| No| Data type.| 453e41f4b71Sopenharmony_ci| plainText<sup>7+</sup> | string | Yes| No| Plain text.| 454e41f4b71Sopenharmony_ci| uri<sup>7+</sup> | string | Yes| No| URI content.| 455e41f4b71Sopenharmony_ci| pixelMap<sup>9+</sup> | [image.PixelMap](../apis-image-kit/js-apis-image.md#pixelmap7) | Yes| No| Pixel map.| 456e41f4b71Sopenharmony_ci| data<sup>9+</sup> | {[mimeType: string]: ArrayBuffer} | Yes| No| Content of custom data.| 457e41f4b71Sopenharmony_ci 458e41f4b71Sopenharmony_ci### toPlainText<sup>9+</sup> 459e41f4b71Sopenharmony_ci 460e41f4b71Sopenharmony_citoPlainText(): string 461e41f4b71Sopenharmony_ci 462e41f4b71Sopenharmony_ciForcibly converts the content in a **PasteData** object to text. 463e41f4b71Sopenharmony_ci 464e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 465e41f4b71Sopenharmony_ci 466e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 467e41f4b71Sopenharmony_ci 468e41f4b71Sopenharmony_ci**Return value** 469e41f4b71Sopenharmony_ci 470e41f4b71Sopenharmony_ci| Type| Description| 471e41f4b71Sopenharmony_ci| -------- | -------- | 472e41f4b71Sopenharmony_ci| string | Plain text.| 473e41f4b71Sopenharmony_ci 474e41f4b71Sopenharmony_ci**Example** 475e41f4b71Sopenharmony_ci 476e41f4b71Sopenharmony_ci```ts 477e41f4b71Sopenharmony_cilet record: pasteboard.PasteDataRecord = pasteboard.createRecord(pasteboard.MIMETYPE_TEXT_URI, 'dataability:///com.example.myapplication1/user.txt'); 478e41f4b71Sopenharmony_cilet data: string = record.toPlainText(); 479e41f4b71Sopenharmony_ciconsole.info(`Succeeded in converting to text. Data: ${data}`); 480e41f4b71Sopenharmony_ci``` 481e41f4b71Sopenharmony_ci 482e41f4b71Sopenharmony_ci### convertToText<sup>(deprecated)</sup> 483e41f4b71Sopenharmony_ci 484e41f4b71Sopenharmony_ciconvertToText(callback: AsyncCallback<string>): void 485e41f4b71Sopenharmony_ci 486e41f4b71Sopenharmony_ciForcibly converts the content in a **PasteData** object to text. This API uses an asynchronous callback to return the result. 487e41f4b71Sopenharmony_ci> **NOTE** 488e41f4b71Sopenharmony_ci> 489e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [toPlainText](#toplaintext9). 490e41f4b71Sopenharmony_ci 491e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 492e41f4b71Sopenharmony_ci 493e41f4b71Sopenharmony_ci**Parameters** 494e41f4b71Sopenharmony_ci 495e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 496e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 497e41f4b71Sopenharmony_ci| callback | AsyncCallback<string> | Yes| Callback used to return the result. If the operation is successful, **err** is **undefined** and **data** is the text obtained from the conversion. Otherwise, **err** is error information.| 498e41f4b71Sopenharmony_ci 499e41f4b71Sopenharmony_ci**Error codes** 500e41f4b71Sopenharmony_ci 501e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 502e41f4b71Sopenharmony_ci 503e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 504e41f4b71Sopenharmony_ci| -------- | -------- | 505e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: Incorrect parameter types. | 506e41f4b71Sopenharmony_ci 507e41f4b71Sopenharmony_ci**Example** 508e41f4b71Sopenharmony_ci 509e41f4b71Sopenharmony_ci```ts 510e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 511e41f4b71Sopenharmony_ci 512e41f4b71Sopenharmony_cilet record: pasteboard.PasteDataRecord = pasteboard.createUriRecord('dataability:///com.example.myapplication1/user.txt'); 513e41f4b71Sopenharmony_cirecord.convertToText((err: BusinessError, data: string) => { 514e41f4b71Sopenharmony_ci if (err) { 515e41f4b71Sopenharmony_ci console.error(`Failed to convert to text. Cause: ${err.message}`); 516e41f4b71Sopenharmony_ci return; 517e41f4b71Sopenharmony_ci } 518e41f4b71Sopenharmony_ci console.info(`Succeeded in converting to text. Data: ${data}`); 519e41f4b71Sopenharmony_ci}); 520e41f4b71Sopenharmony_ci``` 521e41f4b71Sopenharmony_ci 522e41f4b71Sopenharmony_ci### convertToText<sup>(deprecated)</sup> 523e41f4b71Sopenharmony_ci 524e41f4b71Sopenharmony_ciconvertToText(): Promise<string> 525e41f4b71Sopenharmony_ci 526e41f4b71Sopenharmony_ciForcibly converts the content in a **PasteData** object to text. This API uses a promise to return the result. 527e41f4b71Sopenharmony_ci> **NOTE** 528e41f4b71Sopenharmony_ci> 529e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [toPlainText](#toplaintext9). 530e41f4b71Sopenharmony_ci 531e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 532e41f4b71Sopenharmony_ci 533e41f4b71Sopenharmony_ci**Return value** 534e41f4b71Sopenharmony_ci 535e41f4b71Sopenharmony_ci| Type| Description| 536e41f4b71Sopenharmony_ci| -------- | -------- | 537e41f4b71Sopenharmony_ci| Promise<string> | Promise used to return the text obtained from the conversion.| 538e41f4b71Sopenharmony_ci 539e41f4b71Sopenharmony_ci**Example** 540e41f4b71Sopenharmony_ci 541e41f4b71Sopenharmony_ci```ts 542e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 543e41f4b71Sopenharmony_ci 544e41f4b71Sopenharmony_cilet record: pasteboard.PasteDataRecord = pasteboard.createUriRecord('dataability:///com.example.myapplication1/user.txt'); 545e41f4b71Sopenharmony_cirecord.convertToText().then((data: string) => { 546e41f4b71Sopenharmony_ci console.info(`Succeeded in converting to text. Data: ${data}`); 547e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => { 548e41f4b71Sopenharmony_ci console.error(`Failed to convert to text. Cause: ${err.message}`); 549e41f4b71Sopenharmony_ci}); 550e41f4b71Sopenharmony_ci``` 551e41f4b71Sopenharmony_ci 552e41f4b71Sopenharmony_ci## PasteData 553e41f4b71Sopenharmony_ci 554e41f4b71Sopenharmony_ciImplements a **PasteData** object. Paste data contains one or more data records ([PasteDataRecord](#pastedatarecord7)) and property description objects ([PasteDataProperty](#pastedataproperty7)). 555e41f4b71Sopenharmony_ci 556e41f4b71Sopenharmony_ciBefore calling any API in **PasteData**, you must use **[createData()](#pasteboardcreatedata9)** or **[getData()](#getdata9)** to create a **PasteData** object. 557e41f4b71Sopenharmony_ci 558e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 559e41f4b71Sopenharmony_ci 560e41f4b71Sopenharmony_ci### getPrimaryText 561e41f4b71Sopenharmony_ci 562e41f4b71Sopenharmony_cigetPrimaryText(): string 563e41f4b71Sopenharmony_ci 564e41f4b71Sopenharmony_ciObtains the plain text of the primary record. 565e41f4b71Sopenharmony_ci 566e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 567e41f4b71Sopenharmony_ci 568e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 569e41f4b71Sopenharmony_ci 570e41f4b71Sopenharmony_ci**Return value** 571e41f4b71Sopenharmony_ci 572e41f4b71Sopenharmony_ci| Type| Description| 573e41f4b71Sopenharmony_ci| -------- | -------- | 574e41f4b71Sopenharmony_ci| string | Plain text.| 575e41f4b71Sopenharmony_ci 576e41f4b71Sopenharmony_ci**Example** 577e41f4b71Sopenharmony_ci 578e41f4b71Sopenharmony_ci```ts 579e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'hello'); 580e41f4b71Sopenharmony_cilet plainText: string = pasteData.getPrimaryText(); 581e41f4b71Sopenharmony_ci``` 582e41f4b71Sopenharmony_ci 583e41f4b71Sopenharmony_ci### getPrimaryHtml<sup>7+</sup> 584e41f4b71Sopenharmony_ci 585e41f4b71Sopenharmony_cigetPrimaryHtml(): string 586e41f4b71Sopenharmony_ci 587e41f4b71Sopenharmony_ciObtains the HTML content of the primary record. 588e41f4b71Sopenharmony_ci 589e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 590e41f4b71Sopenharmony_ci 591e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 592e41f4b71Sopenharmony_ci 593e41f4b71Sopenharmony_ci**Return value** 594e41f4b71Sopenharmony_ci 595e41f4b71Sopenharmony_ci| Type| Description| 596e41f4b71Sopenharmony_ci| -------- | -------- | 597e41f4b71Sopenharmony_ci| string | HTML content.| 598e41f4b71Sopenharmony_ci 599e41f4b71Sopenharmony_ci**Example** 600e41f4b71Sopenharmony_ci 601e41f4b71Sopenharmony_ci```ts 602e41f4b71Sopenharmony_cilet html = "<!DOCTYPE html>\n" + "<html>\n" + "<head>\n" + "<meta charset=\"utf-8\">\n" + "<title>HTML-PASTEBOARD_HTML</title>\n" + "</head>\n" + "<body>\n" + " <h1>HEAD</h1>\n" + " <p></p>\n" + "</body>\n" + "</html>"; 603e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_HTML, html); 604e41f4b71Sopenharmony_cilet htmlText: string = pasteData.getPrimaryHtml(); 605e41f4b71Sopenharmony_ci``` 606e41f4b71Sopenharmony_ci 607e41f4b71Sopenharmony_ci### getPrimaryWant<sup>7+</sup> 608e41f4b71Sopenharmony_ci 609e41f4b71Sopenharmony_cigetPrimaryWant(): Want 610e41f4b71Sopenharmony_ci 611e41f4b71Sopenharmony_ciObtains the Want object of the primary record. 612e41f4b71Sopenharmony_ci 613e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 614e41f4b71Sopenharmony_ci 615e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 616e41f4b71Sopenharmony_ci 617e41f4b71Sopenharmony_ci**Return value** 618e41f4b71Sopenharmony_ci 619e41f4b71Sopenharmony_ci| Type| Description| 620e41f4b71Sopenharmony_ci| -------- | -------- | 621e41f4b71Sopenharmony_ci| [Want](../apis-ability-kit/js-apis-app-ability-want.md) | Want object.| 622e41f4b71Sopenharmony_ci 623e41f4b71Sopenharmony_ci**Example** 624e41f4b71Sopenharmony_ci 625e41f4b71Sopenharmony_ci```ts 626e41f4b71Sopenharmony_ciimport { Want } from '@kit.AbilityKit'; 627e41f4b71Sopenharmony_ci 628e41f4b71Sopenharmony_cilet object: Want = { 629e41f4b71Sopenharmony_ci bundleName: "com.example.aafwk.test", 630e41f4b71Sopenharmony_ci abilityName: "com.example.aafwk.test.TwoAbility" 631e41f4b71Sopenharmony_ci}; 632e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_WANT, object); 633e41f4b71Sopenharmony_cilet want: Want = pasteData.getPrimaryWant(); 634e41f4b71Sopenharmony_ci``` 635e41f4b71Sopenharmony_ci 636e41f4b71Sopenharmony_ci### getPrimaryUri<sup>7+</sup> 637e41f4b71Sopenharmony_ci 638e41f4b71Sopenharmony_cigetPrimaryUri(): string 639e41f4b71Sopenharmony_ci 640e41f4b71Sopenharmony_ciObtains the URI of the primary record. 641e41f4b71Sopenharmony_ci 642e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 643e41f4b71Sopenharmony_ci 644e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 645e41f4b71Sopenharmony_ci 646e41f4b71Sopenharmony_ci**Return value** 647e41f4b71Sopenharmony_ci 648e41f4b71Sopenharmony_ci| Type| Description| 649e41f4b71Sopenharmony_ci| -------- | -------- | 650e41f4b71Sopenharmony_ci| string | URI content.| 651e41f4b71Sopenharmony_ci 652e41f4b71Sopenharmony_ci**Example** 653e41f4b71Sopenharmony_ci 654e41f4b71Sopenharmony_ci```ts 655e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_URI, 'dataability:///com.example.myapplication1/user.txt'); 656e41f4b71Sopenharmony_cilet uri: string = pasteData.getPrimaryUri(); 657e41f4b71Sopenharmony_ci``` 658e41f4b71Sopenharmony_ci 659e41f4b71Sopenharmony_ci### getPrimaryPixelMap<sup>9+</sup> 660e41f4b71Sopenharmony_ci 661e41f4b71Sopenharmony_cigetPrimaryPixelMap(): image.PixelMap 662e41f4b71Sopenharmony_ci 663e41f4b71Sopenharmony_ciObtains the pixel map of the primary record. 664e41f4b71Sopenharmony_ci 665e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 666e41f4b71Sopenharmony_ci 667e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 668e41f4b71Sopenharmony_ci 669e41f4b71Sopenharmony_ci**Return value** 670e41f4b71Sopenharmony_ci 671e41f4b71Sopenharmony_ci| Type| Description| 672e41f4b71Sopenharmony_ci| -------- | -------- | 673e41f4b71Sopenharmony_ci| [image.PixelMap](../apis-image-kit/js-apis-image.md#pixelmap7) | Pixel map.| 674e41f4b71Sopenharmony_ci 675e41f4b71Sopenharmony_ci**Example** 676e41f4b71Sopenharmony_ci 677e41f4b71Sopenharmony_ci```ts 678e41f4b71Sopenharmony_ciimport { image } from '@kit.ImageKit'; 679e41f4b71Sopenharmony_ci 680e41f4b71Sopenharmony_cilet buffer = new ArrayBuffer(128); 681e41f4b71Sopenharmony_cilet realSize: image.Size = { height: 3, width: 5 }; 682e41f4b71Sopenharmony_cilet opt: image.InitializationOptions = { 683e41f4b71Sopenharmony_ci size: realSize, 684e41f4b71Sopenharmony_ci pixelFormat: 3, 685e41f4b71Sopenharmony_ci editable: true, 686e41f4b71Sopenharmony_ci alphaType: 1, 687e41f4b71Sopenharmony_ci scaleMode: 1 688e41f4b71Sopenharmony_ci}; 689e41f4b71Sopenharmony_ciimage.createPixelMap(buffer, opt).then((pixelMap: image.PixelMap) => { 690e41f4b71Sopenharmony_ci let pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_PIXELMAP, pixelMap); 691e41f4b71Sopenharmony_ci let PixelMap: image.PixelMap = pasteData.getPrimaryPixelMap(); 692e41f4b71Sopenharmony_ci}); 693e41f4b71Sopenharmony_ci``` 694e41f4b71Sopenharmony_ci 695e41f4b71Sopenharmony_ci### addRecord<sup>7+</sup> 696e41f4b71Sopenharmony_ci 697e41f4b71Sopenharmony_ciaddRecord(record: PasteDataRecord): void 698e41f4b71Sopenharmony_ci 699e41f4b71Sopenharmony_ciAdds a data record to this pasteboard, and adds its type to **mimeTypes** in [PasteDataProperty](#pastedataproperty7). The parameters cannot be empty. Otherwise, the operation fails. 700e41f4b71Sopenharmony_ci 701e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 702e41f4b71Sopenharmony_ci 703e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 704e41f4b71Sopenharmony_ci 705e41f4b71Sopenharmony_ci**Parameters** 706e41f4b71Sopenharmony_ci 707e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 708e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 709e41f4b71Sopenharmony_ci| record | [PasteDataRecord](#pastedatarecord7) | Yes| Record to add.| 710e41f4b71Sopenharmony_ci 711e41f4b71Sopenharmony_ci**Example** 712e41f4b71Sopenharmony_ci 713e41f4b71Sopenharmony_ci```ts 714e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_URI, 'dataability:///com.example.myapplication1/user.txt'); 715e41f4b71Sopenharmony_cilet textRecord: pasteboard.PasteDataRecord = pasteboard.createRecord(pasteboard.MIMETYPE_TEXT_PLAIN, 'hello'); 716e41f4b71Sopenharmony_cilet html: string = "<!DOCTYPE html>\n" + "<html>\n" + "<head>\n" + "<meta charset=\"utf-8\">\n" + "<title>HTML-PASTEBOARD_HTML</title>\n" + "</head>\n" + "<body>\n" + " <h1>HEAD</h1>\n" + " <p></p>\n" + "</body>\n" + "</html>"; 717e41f4b71Sopenharmony_cilet htmlRecord: pasteboard.PasteDataRecord = pasteboard.createRecord(pasteboard.MIMETYPE_TEXT_HTML, html); 718e41f4b71Sopenharmony_cipasteData.addRecord(textRecord); 719e41f4b71Sopenharmony_cipasteData.addRecord(htmlRecord); 720e41f4b71Sopenharmony_ci``` 721e41f4b71Sopenharmony_ci### addRecord<sup>9+</sup> 722e41f4b71Sopenharmony_ci 723e41f4b71Sopenharmony_ciaddRecord(mimeType: string, value: ValueType): void 724e41f4b71Sopenharmony_ci 725e41f4b71Sopenharmony_ciAdds a custom-type record to this pasteboard, and adds the custom type to **mimeTypes** in [PasteDataProperty](#pastedataproperty7). The parameters cannot be empty. Otherwise, the operation fails. 726e41f4b71Sopenharmony_ci 727e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 728e41f4b71Sopenharmony_ci 729e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 730e41f4b71Sopenharmony_ci 731e41f4b71Sopenharmony_ci**Parameters** 732e41f4b71Sopenharmony_ci 733e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 734e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 735e41f4b71Sopenharmony_ci| mimeType | string | Yes| MIME type of custom data. The length cannot exceed 1024 bytes.| 736e41f4b71Sopenharmony_ci| value | [ValueType](#valuetype9) | Yes| Content of custom data.| 737e41f4b71Sopenharmony_ci 738e41f4b71Sopenharmony_ci**Error codes** 739e41f4b71Sopenharmony_ci 740e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md) and [Pasteboard Error Codes](errorcode-pasteboard.md). 741e41f4b71Sopenharmony_ci 742e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 743e41f4b71Sopenharmony_ci| -------- | -------- | 744e41f4b71Sopenharmony_ci| 12900002 | The number of records exceeds the upper limit. | 745e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameters types; 3. Parameter verification failed. | 746e41f4b71Sopenharmony_ci 747e41f4b71Sopenharmony_ci**Example** 748e41f4b71Sopenharmony_ci 749e41f4b71Sopenharmony_ci ```ts 750e41f4b71Sopenharmony_ci let pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_URI, 'dataability:///com.example.myapplication1/user.txt'); 751e41f4b71Sopenharmony_ci let dataXml = new ArrayBuffer(256); 752e41f4b71Sopenharmony_ci pasteData.addRecord('app/xml', dataXml); 753e41f4b71Sopenharmony_ci ``` 754e41f4b71Sopenharmony_ci 755e41f4b71Sopenharmony_ci### getMimeTypes<sup>7+</sup> 756e41f4b71Sopenharmony_ci 757e41f4b71Sopenharmony_cigetMimeTypes(): Array<string> 758e41f4b71Sopenharmony_ci 759e41f4b71Sopenharmony_ciObtains a list of **mimeTypes** objects in [PasteDataProperty](#pastedataproperty7) from this pasteboard. If the pasteboard is empty, the returned list is also empty. 760e41f4b71Sopenharmony_ci 761e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 762e41f4b71Sopenharmony_ci 763e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 764e41f4b71Sopenharmony_ci 765e41f4b71Sopenharmony_ci**Return value** 766e41f4b71Sopenharmony_ci 767e41f4b71Sopenharmony_ci| Type| Description| 768e41f4b71Sopenharmony_ci| -------- | -------- | 769e41f4b71Sopenharmony_ci| Array<string> | Non-repeating data types of the data records on the pasteboard.| 770e41f4b71Sopenharmony_ci 771e41f4b71Sopenharmony_ci**Example** 772e41f4b71Sopenharmony_ci 773e41f4b71Sopenharmony_ci```ts 774e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'hello'); 775e41f4b71Sopenharmony_cilet types: string[] = pasteData.getMimeTypes(); 776e41f4b71Sopenharmony_ci``` 777e41f4b71Sopenharmony_ci 778e41f4b71Sopenharmony_ci### getPrimaryMimeType<sup>7+</sup> 779e41f4b71Sopenharmony_ci 780e41f4b71Sopenharmony_cigetPrimaryMimeType(): string 781e41f4b71Sopenharmony_ci 782e41f4b71Sopenharmony_ciObtains the data type of the primary record in this pasteboard. 783e41f4b71Sopenharmony_ci 784e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 785e41f4b71Sopenharmony_ci 786e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 787e41f4b71Sopenharmony_ci 788e41f4b71Sopenharmony_ci**Return value** 789e41f4b71Sopenharmony_ci 790e41f4b71Sopenharmony_ci| Type| Description| 791e41f4b71Sopenharmony_ci| -------- | -------- | 792e41f4b71Sopenharmony_ci| string | Data type of the primary record.| 793e41f4b71Sopenharmony_ci 794e41f4b71Sopenharmony_ci**Example** 795e41f4b71Sopenharmony_ci 796e41f4b71Sopenharmony_ci```ts 797e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'hello'); 798e41f4b71Sopenharmony_cilet type: string = pasteData.getPrimaryMimeType(); 799e41f4b71Sopenharmony_ci``` 800e41f4b71Sopenharmony_ci 801e41f4b71Sopenharmony_ci### getProperty<sup>7+</sup> 802e41f4b71Sopenharmony_ci 803e41f4b71Sopenharmony_cigetProperty(): PasteDataProperty 804e41f4b71Sopenharmony_ci 805e41f4b71Sopenharmony_ciObtains the property of the pasteboard data. 806e41f4b71Sopenharmony_ci 807e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 808e41f4b71Sopenharmony_ci 809e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 810e41f4b71Sopenharmony_ci 811e41f4b71Sopenharmony_ci**Return value** 812e41f4b71Sopenharmony_ci 813e41f4b71Sopenharmony_ci| Type| Description| 814e41f4b71Sopenharmony_ci| -------- | -------- | 815e41f4b71Sopenharmony_ci| [PasteDataProperty](#pastedataproperty7) | Property of the pasteboard data.| 816e41f4b71Sopenharmony_ci 817e41f4b71Sopenharmony_ci**Example** 818e41f4b71Sopenharmony_ci 819e41f4b71Sopenharmony_ci```ts 820e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'hello'); 821e41f4b71Sopenharmony_cilet property: pasteboard.PasteDataProperty = pasteData.getProperty(); 822e41f4b71Sopenharmony_ci``` 823e41f4b71Sopenharmony_ci 824e41f4b71Sopenharmony_ci### setProperty<sup>9+</sup> 825e41f4b71Sopenharmony_ci 826e41f4b71Sopenharmony_cisetProperty(property: PasteDataProperty): void 827e41f4b71Sopenharmony_ci 828e41f4b71Sopenharmony_ciSets a [PasteDataProperty](#pastedataproperty7) object. 829e41f4b71Sopenharmony_ci 830e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 831e41f4b71Sopenharmony_ci 832e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 833e41f4b71Sopenharmony_ci 834e41f4b71Sopenharmony_ci**Parameters** 835e41f4b71Sopenharmony_ci 836e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 837e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 838e41f4b71Sopenharmony_ci| property | [PasteDataProperty](#pastedataproperty7) | Yes| Property of the pasteboard data.| 839e41f4b71Sopenharmony_ci 840e41f4b71Sopenharmony_ci**Error codes** 841e41f4b71Sopenharmony_ci 842e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 843e41f4b71Sopenharmony_ci 844e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 845e41f4b71Sopenharmony_ci| -------- | -------- | 846e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 847e41f4b71Sopenharmony_ci 848e41f4b71Sopenharmony_ci**Example** 849e41f4b71Sopenharmony_ci 850e41f4b71Sopenharmony_ci```ts 851e41f4b71Sopenharmony_citype AdditionType = Record<string, Record<string, Object>>; 852e41f4b71Sopenharmony_ci 853e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_HTML, 'application/xml'); 854e41f4b71Sopenharmony_cilet prop: pasteboard.PasteDataProperty = pasteData.getProperty(); 855e41f4b71Sopenharmony_ciprop.shareOption = pasteboard.ShareOption.INAPP; 856e41f4b71Sopenharmony_ci// Note that attributes cannot be added to additions. Attributes can be added only by re-assigning values. 857e41f4b71Sopenharmony_ciprop.additions = { 'TestOne': { 'Test': 123 }, 'TestTwo': { 'Test': 'additions' } } as AdditionType; 858e41f4b71Sopenharmony_ciprop.tag = 'TestTag'; 859e41f4b71Sopenharmony_cipasteData.setProperty(prop); 860e41f4b71Sopenharmony_ci``` 861e41f4b71Sopenharmony_ciThe **localOnly** and **shareOption** attributes of [PasteDataProperty](#pastedataproperty7) are mutually exclusive. The **shareOption** attribute is prioritized, and its value affects the value of **localOnly**. 862e41f4b71Sopenharmony_ci```ts 863e41f4b71Sopenharmony_ci(async () => { 864e41f4b71Sopenharmony_ci let pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'hello'); 865e41f4b71Sopenharmony_ci let prop: pasteboard.PasteDataProperty = pasteData.getProperty(); 866e41f4b71Sopenharmony_ci prop.shareOption = pasteboard.ShareOption.INAPP; 867e41f4b71Sopenharmony_ci prop.localOnly = false; 868e41f4b71Sopenharmony_ci pasteData.setProperty(prop); 869e41f4b71Sopenharmony_ci let systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 870e41f4b71Sopenharmony_ci 871e41f4b71Sopenharmony_ci await systemPasteboard.setData(pasteData).then(async () => { 872e41f4b71Sopenharmony_ci console.info('Succeeded in setting PasteData.'); 873e41f4b71Sopenharmony_ci await systemPasteboard.getData().then((pasteData: pasteboard.PasteData) => { 874e41f4b71Sopenharmony_ci let prop: pasteboard.PasteDataProperty = pasteData.getProperty(); 875e41f4b71Sopenharmony_ci prop.localOnly; // true 876e41f4b71Sopenharmony_ci }); 877e41f4b71Sopenharmony_ci }); 878e41f4b71Sopenharmony_ci 879e41f4b71Sopenharmony_ci prop.shareOption = pasteboard.ShareOption.LOCALDEVICE; 880e41f4b71Sopenharmony_ci prop.localOnly = false; 881e41f4b71Sopenharmony_ci pasteData.setProperty(prop); 882e41f4b71Sopenharmony_ci 883e41f4b71Sopenharmony_ci await systemPasteboard.setData(pasteData).then(async () => { 884e41f4b71Sopenharmony_ci console.info('Succeeded in setting PasteData.'); 885e41f4b71Sopenharmony_ci await systemPasteboard.getData().then((pasteData: pasteboard.PasteData) => { 886e41f4b71Sopenharmony_ci let prop: pasteboard.PasteDataProperty = pasteData.getProperty(); 887e41f4b71Sopenharmony_ci prop.localOnly; // true 888e41f4b71Sopenharmony_ci }); 889e41f4b71Sopenharmony_ci }); 890e41f4b71Sopenharmony_ci 891e41f4b71Sopenharmony_ci prop.shareOption = pasteboard.ShareOption.CROSSDEVICE; 892e41f4b71Sopenharmony_ci prop.localOnly = true; 893e41f4b71Sopenharmony_ci pasteData.setProperty(prop); 894e41f4b71Sopenharmony_ci 895e41f4b71Sopenharmony_ci await systemPasteboard.setData(pasteData).then(async () => { 896e41f4b71Sopenharmony_ci console.info('Succeeded in setting PasteData.'); 897e41f4b71Sopenharmony_ci await systemPasteboard.getData().then((pasteData: pasteboard.PasteData) => { 898e41f4b71Sopenharmony_ci let prop: pasteboard.PasteDataProperty = pasteData.getProperty(); 899e41f4b71Sopenharmony_ci prop.localOnly; // false 900e41f4b71Sopenharmony_ci }); 901e41f4b71Sopenharmony_ci }); 902e41f4b71Sopenharmony_ci})() 903e41f4b71Sopenharmony_ci``` 904e41f4b71Sopenharmony_ci 905e41f4b71Sopenharmony_ci### getRecord<sup>9+</sup> 906e41f4b71Sopenharmony_ci 907e41f4b71Sopenharmony_cigetRecord(index: number): PasteDataRecord 908e41f4b71Sopenharmony_ci 909e41f4b71Sopenharmony_ciObtains the specified record in the pasteboard. 910e41f4b71Sopenharmony_ci 911e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 912e41f4b71Sopenharmony_ci 913e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 914e41f4b71Sopenharmony_ci 915e41f4b71Sopenharmony_ci**Parameters** 916e41f4b71Sopenharmony_ci 917e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 918e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 919e41f4b71Sopenharmony_ci| index | number | Yes| Index of the target record.| 920e41f4b71Sopenharmony_ci 921e41f4b71Sopenharmony_ci**Return value** 922e41f4b71Sopenharmony_ci 923e41f4b71Sopenharmony_ci| Type| Description| 924e41f4b71Sopenharmony_ci| -------- | -------- | 925e41f4b71Sopenharmony_ci| [PasteDataRecord](#pastedatarecord7) | Record with the specified index.| 926e41f4b71Sopenharmony_ci 927e41f4b71Sopenharmony_ci**Error codes** 928e41f4b71Sopenharmony_ci 929e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md) and [Pasteboard Error Codes](errorcode-pasteboard.md). 930e41f4b71Sopenharmony_ci 931e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 932e41f4b71Sopenharmony_ci| -------- | -------- | 933e41f4b71Sopenharmony_ci| 12900001 | The index is out of the record. | 934e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 935e41f4b71Sopenharmony_ci 936e41f4b71Sopenharmony_ci**Example** 937e41f4b71Sopenharmony_ci 938e41f4b71Sopenharmony_ci```ts 939e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'hello'); 940e41f4b71Sopenharmony_cilet record: pasteboard.PasteDataRecord = pasteData.getRecord(0); 941e41f4b71Sopenharmony_ci``` 942e41f4b71Sopenharmony_ci 943e41f4b71Sopenharmony_ci### getRecordCount<sup>7+</sup> 944e41f4b71Sopenharmony_ci 945e41f4b71Sopenharmony_cigetRecordCount(): number 946e41f4b71Sopenharmony_ci 947e41f4b71Sopenharmony_ciObtains the number of records in the pasteboard. 948e41f4b71Sopenharmony_ci 949e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 950e41f4b71Sopenharmony_ci 951e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 952e41f4b71Sopenharmony_ci 953e41f4b71Sopenharmony_ci**Return value** 954e41f4b71Sopenharmony_ci 955e41f4b71Sopenharmony_ci| Type| Description| 956e41f4b71Sopenharmony_ci| -------- | -------- | 957e41f4b71Sopenharmony_ci| number | Number of records.| 958e41f4b71Sopenharmony_ci 959e41f4b71Sopenharmony_ci**Example** 960e41f4b71Sopenharmony_ci 961e41f4b71Sopenharmony_ci```ts 962e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'hello'); 963e41f4b71Sopenharmony_cilet count: number = pasteData.getRecordCount(); 964e41f4b71Sopenharmony_ci``` 965e41f4b71Sopenharmony_ci 966e41f4b71Sopenharmony_ci### getTag<sup>7+</sup> 967e41f4b71Sopenharmony_ci 968e41f4b71Sopenharmony_cigetTag(): string 969e41f4b71Sopenharmony_ci 970e41f4b71Sopenharmony_ciObtains the custom tag from the pasteboard. If no custom tag is set, null is returned. 971e41f4b71Sopenharmony_ci 972e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 973e41f4b71Sopenharmony_ci 974e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 975e41f4b71Sopenharmony_ci 976e41f4b71Sopenharmony_ci**Return value** 977e41f4b71Sopenharmony_ci 978e41f4b71Sopenharmony_ci| Type| Description| 979e41f4b71Sopenharmony_ci| -------- | -------- | 980e41f4b71Sopenharmony_ci| string | Custom tag. If no custom tag is set, null is returned.| 981e41f4b71Sopenharmony_ci 982e41f4b71Sopenharmony_ci**Example** 983e41f4b71Sopenharmony_ci 984e41f4b71Sopenharmony_ci```ts 985e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'hello'); 986e41f4b71Sopenharmony_cilet tag: string = pasteData.getTag(); 987e41f4b71Sopenharmony_ci``` 988e41f4b71Sopenharmony_ci 989e41f4b71Sopenharmony_ci### hasType<sup>9+</sup> 990e41f4b71Sopenharmony_ci 991e41f4b71Sopenharmony_cihasType(mimeType: string): boolean 992e41f4b71Sopenharmony_ci 993e41f4b71Sopenharmony_ciChecks whether the pasteboard contains data of the specified type. 994e41f4b71Sopenharmony_ci 995e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 996e41f4b71Sopenharmony_ci 997e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 998e41f4b71Sopenharmony_ci 999e41f4b71Sopenharmony_ci**Parameters** 1000e41f4b71Sopenharmony_ci 1001e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1002e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1003e41f4b71Sopenharmony_ci| mimeType | string | Yes| Type of the data to query.| 1004e41f4b71Sopenharmony_ci 1005e41f4b71Sopenharmony_ci**Return value** 1006e41f4b71Sopenharmony_ci 1007e41f4b71Sopenharmony_ci| Type| Description| 1008e41f4b71Sopenharmony_ci| -------- | -------- | 1009e41f4b71Sopenharmony_ci| boolean | Returns **true** if the specified data type exists; returns **false** otherwise.| 1010e41f4b71Sopenharmony_ci 1011e41f4b71Sopenharmony_ci**Error codes** 1012e41f4b71Sopenharmony_ci 1013e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 1014e41f4b71Sopenharmony_ci 1015e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1016e41f4b71Sopenharmony_ci| -------- | -------- | 1017e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1018e41f4b71Sopenharmony_ci 1019e41f4b71Sopenharmony_ci**Example** 1020e41f4b71Sopenharmony_ci 1021e41f4b71Sopenharmony_ci```ts 1022e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'hello'); 1023e41f4b71Sopenharmony_cilet hasType: boolean = pasteData.hasType(pasteboard.MIMETYPE_TEXT_PLAIN); 1024e41f4b71Sopenharmony_ci``` 1025e41f4b71Sopenharmony_ci 1026e41f4b71Sopenharmony_ci### removeRecord<sup>9+</sup> 1027e41f4b71Sopenharmony_ci 1028e41f4b71Sopenharmony_ciremoveRecord(index: number): void 1029e41f4b71Sopenharmony_ci 1030e41f4b71Sopenharmony_ciRemoves the record with the specified index from the pasteboard. 1031e41f4b71Sopenharmony_ci 1032e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 1033e41f4b71Sopenharmony_ci 1034e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1035e41f4b71Sopenharmony_ci 1036e41f4b71Sopenharmony_ci**Parameters** 1037e41f4b71Sopenharmony_ci 1038e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1039e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1040e41f4b71Sopenharmony_ci| index | number | Yes| Specified index.| 1041e41f4b71Sopenharmony_ci 1042e41f4b71Sopenharmony_ci**Error codes** 1043e41f4b71Sopenharmony_ci 1044e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md) and [Pasteboard Error Codes](errorcode-pasteboard.md). 1045e41f4b71Sopenharmony_ci 1046e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1047e41f4b71Sopenharmony_ci| -------- | -------- | 1048e41f4b71Sopenharmony_ci| 12900001 | The index is out of the record. | 1049e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1050e41f4b71Sopenharmony_ci 1051e41f4b71Sopenharmony_ci**Example** 1052e41f4b71Sopenharmony_ci 1053e41f4b71Sopenharmony_ci```ts 1054e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'hello'); 1055e41f4b71Sopenharmony_cipasteData.removeRecord(0); 1056e41f4b71Sopenharmony_ci``` 1057e41f4b71Sopenharmony_ci 1058e41f4b71Sopenharmony_ci### replaceRecord<sup>9+</sup> 1059e41f4b71Sopenharmony_ci 1060e41f4b71Sopenharmony_cireplaceRecord(index: number, record: PasteDataRecord): void 1061e41f4b71Sopenharmony_ci 1062e41f4b71Sopenharmony_ciReplaces the record with the specified index in the pasteboard with a new record. 1063e41f4b71Sopenharmony_ci 1064e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 1065e41f4b71Sopenharmony_ci 1066e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1067e41f4b71Sopenharmony_ci 1068e41f4b71Sopenharmony_ci**Parameters** 1069e41f4b71Sopenharmony_ci 1070e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1071e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1072e41f4b71Sopenharmony_ci| index | number | Yes| Specified index.| 1073e41f4b71Sopenharmony_ci| record | [PasteDataRecord](#pastedatarecord7) | Yes| New record.| 1074e41f4b71Sopenharmony_ci 1075e41f4b71Sopenharmony_ci**Error codes** 1076e41f4b71Sopenharmony_ci 1077e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md) and [Pasteboard Error Codes](errorcode-pasteboard.md). 1078e41f4b71Sopenharmony_ci 1079e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1080e41f4b71Sopenharmony_ci| -------- | -------- | 1081e41f4b71Sopenharmony_ci| 12900001 | The index is out of the record. | 1082e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1083e41f4b71Sopenharmony_ci 1084e41f4b71Sopenharmony_ci**Example** 1085e41f4b71Sopenharmony_ci 1086e41f4b71Sopenharmony_ci```ts 1087e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'hello'); 1088e41f4b71Sopenharmony_cilet record: pasteboard.PasteDataRecord = pasteboard.createRecord(pasteboard.MIMETYPE_TEXT_URI, 'dataability:///com.example.myapplication1/user.txt'); 1089e41f4b71Sopenharmony_cipasteData.replaceRecord(0, record); 1090e41f4b71Sopenharmony_ci``` 1091e41f4b71Sopenharmony_ci### addHtmlRecord<sup>(deprecated)</sup> 1092e41f4b71Sopenharmony_ci 1093e41f4b71Sopenharmony_ciaddHtmlRecord(htmlText: string): void 1094e41f4b71Sopenharmony_ci 1095e41f4b71Sopenharmony_ciAdds an HTML record to this pasteboard, and adds **MIMETYPE_TEXT_HTML** to **mimeTypes** in [PasteDataProperty](#pastedataproperty7). The parameters cannot be empty. Otherwise, the operation fails. 1096e41f4b71Sopenharmony_ci 1097e41f4b71Sopenharmony_ci> **NOTE** 1098e41f4b71Sopenharmony_ci> 1099e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [addRecord](#addrecord9). 1100e41f4b71Sopenharmony_ci 1101e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1102e41f4b71Sopenharmony_ci 1103e41f4b71Sopenharmony_ci**Parameters** 1104e41f4b71Sopenharmony_ci 1105e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1106e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1107e41f4b71Sopenharmony_ci| htmlText | string | Yes| HTML content.| 1108e41f4b71Sopenharmony_ci 1109e41f4b71Sopenharmony_ci**Example** 1110e41f4b71Sopenharmony_ci 1111e41f4b71Sopenharmony_ci```ts 1112e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createPlainTextData('hello'); 1113e41f4b71Sopenharmony_cilet html: string = "<!DOCTYPE html>\n" + "<html>\n" + "<head>\n" + "<meta charset=\"utf-8\">\n" + "<title>HTML-PASTEBOARD_HTML</title>\n" + "</head>\n" + "<body>\n" + " <h1>HEAD</h1>\n" + " <p></p>\n" + "</body>\n" + "</html>"; 1114e41f4b71Sopenharmony_cipasteData.addHtmlRecord(html); 1115e41f4b71Sopenharmony_ci``` 1116e41f4b71Sopenharmony_ci 1117e41f4b71Sopenharmony_ci### addWantRecord<sup>(deprecated)</sup> 1118e41f4b71Sopenharmony_ci 1119e41f4b71Sopenharmony_ciaddWantRecord(want: Want): void 1120e41f4b71Sopenharmony_ci 1121e41f4b71Sopenharmony_ciAdds a Want record to this pasteboard, and adds **MIMETYPE_TEXT_WANT** to **mimeTypes** in [PasteDataProperty](#pastedataproperty7). The parameters cannot be empty. Otherwise, the operation fails. 1122e41f4b71Sopenharmony_ci 1123e41f4b71Sopenharmony_ci> **NOTE** 1124e41f4b71Sopenharmony_ci> 1125e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [addRecord](#addrecord9). 1126e41f4b71Sopenharmony_ci 1127e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1128e41f4b71Sopenharmony_ci 1129e41f4b71Sopenharmony_ci**Parameters** 1130e41f4b71Sopenharmony_ci 1131e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1132e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1133e41f4b71Sopenharmony_ci| want | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | Yes| Want object.| 1134e41f4b71Sopenharmony_ci 1135e41f4b71Sopenharmony_ci**Example** 1136e41f4b71Sopenharmony_ci 1137e41f4b71Sopenharmony_ci```ts 1138e41f4b71Sopenharmony_ciimport { Want } from '@kit.AbilityKit'; 1139e41f4b71Sopenharmony_ci 1140e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createPlainTextData('hello'); 1141e41f4b71Sopenharmony_cilet object: Want = { 1142e41f4b71Sopenharmony_ci bundleName: "com.example.aafwk.test", 1143e41f4b71Sopenharmony_ci abilityName: "com.example.aafwk.test.TwoAbility" 1144e41f4b71Sopenharmony_ci}; 1145e41f4b71Sopenharmony_cipasteData.addWantRecord(object); 1146e41f4b71Sopenharmony_ci``` 1147e41f4b71Sopenharmony_ci 1148e41f4b71Sopenharmony_ci### addTextRecord<sup>(deprecated)</sup> 1149e41f4b71Sopenharmony_ci 1150e41f4b71Sopenharmony_ciaddTextRecord(text: string): void 1151e41f4b71Sopenharmony_ci 1152e41f4b71Sopenharmony_ciAdds a plain text record to this pasteboard, and adds **MIME_TEXT_PLAIN** to **mimeTypes** in [PasteDataProperty](#pastedataproperty7). The parameters cannot be empty. Otherwise, the operation fails. 1153e41f4b71Sopenharmony_ci 1154e41f4b71Sopenharmony_ci> **NOTE** 1155e41f4b71Sopenharmony_ci> 1156e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [addRecord](#addrecord9). 1157e41f4b71Sopenharmony_ci 1158e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1159e41f4b71Sopenharmony_ci 1160e41f4b71Sopenharmony_ci**Parameters** 1161e41f4b71Sopenharmony_ci 1162e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1163e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1164e41f4b71Sopenharmony_ci| text | string | Yes| Plain text.| 1165e41f4b71Sopenharmony_ci 1166e41f4b71Sopenharmony_ci**Example** 1167e41f4b71Sopenharmony_ci 1168e41f4b71Sopenharmony_ci```ts 1169e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createPlainTextData('hello'); 1170e41f4b71Sopenharmony_cipasteData.addTextRecord('good'); 1171e41f4b71Sopenharmony_ci``` 1172e41f4b71Sopenharmony_ci 1173e41f4b71Sopenharmony_ci### addUriRecord<sup>(deprecated)</sup> 1174e41f4b71Sopenharmony_ci 1175e41f4b71Sopenharmony_ciaddUriRecord(uri: string): void 1176e41f4b71Sopenharmony_ci 1177e41f4b71Sopenharmony_ciAdds a URI record to this pasteboard, and adds **MIMETYPE_TEXT_URI** to **mimeTypes** in [PasteDataProperty](#pastedataproperty7). The parameters cannot be empty. Otherwise, the operation fails. 1178e41f4b71Sopenharmony_ci 1179e41f4b71Sopenharmony_ci> **NOTE** 1180e41f4b71Sopenharmony_ci> 1181e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [addRecord](#addrecord9). 1182e41f4b71Sopenharmony_ci 1183e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1184e41f4b71Sopenharmony_ci 1185e41f4b71Sopenharmony_ci**Parameters** 1186e41f4b71Sopenharmony_ci 1187e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1188e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1189e41f4b71Sopenharmony_ci| uri | string | Yes| URI content.| 1190e41f4b71Sopenharmony_ci 1191e41f4b71Sopenharmony_ci**Example** 1192e41f4b71Sopenharmony_ci 1193e41f4b71Sopenharmony_ci```ts 1194e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createPlainTextData('hello'); 1195e41f4b71Sopenharmony_cipasteData.addUriRecord('dataability:///com.example.myapplication1/user.txt'); 1196e41f4b71Sopenharmony_ci``` 1197e41f4b71Sopenharmony_ci### getRecordAt<sup>(deprecated)</sup> 1198e41f4b71Sopenharmony_ci 1199e41f4b71Sopenharmony_cigetRecordAt(index: number): PasteDataRecord 1200e41f4b71Sopenharmony_ci 1201e41f4b71Sopenharmony_ciObtains the specified record in the pasteboard. 1202e41f4b71Sopenharmony_ci> **NOTE** 1203e41f4b71Sopenharmony_ci> 1204e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [getRecord](#getrecord9). 1205e41f4b71Sopenharmony_ci 1206e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1207e41f4b71Sopenharmony_ci 1208e41f4b71Sopenharmony_ci**Parameters** 1209e41f4b71Sopenharmony_ci 1210e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1211e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1212e41f4b71Sopenharmony_ci| index | number | Yes| Index of the target record.| 1213e41f4b71Sopenharmony_ci 1214e41f4b71Sopenharmony_ci**Return value** 1215e41f4b71Sopenharmony_ci 1216e41f4b71Sopenharmony_ci| Type| Description| 1217e41f4b71Sopenharmony_ci| -------- | -------- | 1218e41f4b71Sopenharmony_ci| [PasteDataRecord](#pastedatarecord7) | Record with the specified index.| 1219e41f4b71Sopenharmony_ci 1220e41f4b71Sopenharmony_ci**Error codes** 1221e41f4b71Sopenharmony_ci 1222e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 1223e41f4b71Sopenharmony_ci 1224e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1225e41f4b71Sopenharmony_ci| -------- | -------- | 1226e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1227e41f4b71Sopenharmony_ci 1228e41f4b71Sopenharmony_ci**Example** 1229e41f4b71Sopenharmony_ci 1230e41f4b71Sopenharmony_ci```ts 1231e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createPlainTextData('hello'); 1232e41f4b71Sopenharmony_cilet record: pasteboard.PasteDataRecord = pasteData.getRecordAt(0); 1233e41f4b71Sopenharmony_ci``` 1234e41f4b71Sopenharmony_ci 1235e41f4b71Sopenharmony_ci### hasMimeType<sup>(deprecated)</sup> 1236e41f4b71Sopenharmony_ci 1237e41f4b71Sopenharmony_cihasMimeType(mimeType: string): boolean 1238e41f4b71Sopenharmony_ci 1239e41f4b71Sopenharmony_ciChecks whether the pasteboard contains data of the specified type. 1240e41f4b71Sopenharmony_ci> **NOTE** 1241e41f4b71Sopenharmony_ci> 1242e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [hasType](#hastype9). 1243e41f4b71Sopenharmony_ci 1244e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1245e41f4b71Sopenharmony_ci 1246e41f4b71Sopenharmony_ci**Parameters** 1247e41f4b71Sopenharmony_ci 1248e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1249e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1250e41f4b71Sopenharmony_ci| mimeType | string | Yes| Type of the data to query.| 1251e41f4b71Sopenharmony_ci 1252e41f4b71Sopenharmony_ci**Return value** 1253e41f4b71Sopenharmony_ci 1254e41f4b71Sopenharmony_ci| Type| Description| 1255e41f4b71Sopenharmony_ci| -------- | -------- | 1256e41f4b71Sopenharmony_ci| boolean | Returns **true** if the specified data type exists; returns **false** otherwise.| 1257e41f4b71Sopenharmony_ci 1258e41f4b71Sopenharmony_ci**Error codes** 1259e41f4b71Sopenharmony_ci 1260e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 1261e41f4b71Sopenharmony_ci 1262e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1263e41f4b71Sopenharmony_ci| -------- | -------- | 1264e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1265e41f4b71Sopenharmony_ci 1266e41f4b71Sopenharmony_ci**Example** 1267e41f4b71Sopenharmony_ci 1268e41f4b71Sopenharmony_ci```ts 1269e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createPlainTextData('hello'); 1270e41f4b71Sopenharmony_cilet hasType: boolean = pasteData.hasMimeType(pasteboard.MIMETYPE_TEXT_PLAIN); 1271e41f4b71Sopenharmony_ci``` 1272e41f4b71Sopenharmony_ci### removeRecordAt<sup>(deprecated)</sup> 1273e41f4b71Sopenharmony_ci 1274e41f4b71Sopenharmony_ciremoveRecordAt(index: number): boolean 1275e41f4b71Sopenharmony_ci 1276e41f4b71Sopenharmony_ciRemoves the record with the specified index from the pasteboard. 1277e41f4b71Sopenharmony_ci> **NOTE** 1278e41f4b71Sopenharmony_ci> 1279e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [removeRecord](#removerecord9). 1280e41f4b71Sopenharmony_ci 1281e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1282e41f4b71Sopenharmony_ci 1283e41f4b71Sopenharmony_ci**Parameters** 1284e41f4b71Sopenharmony_ci 1285e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1286e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1287e41f4b71Sopenharmony_ci| index | number | Yes| Specified index.| 1288e41f4b71Sopenharmony_ci 1289e41f4b71Sopenharmony_ci**Return value** 1290e41f4b71Sopenharmony_ci 1291e41f4b71Sopenharmony_ci| Type| Description| 1292e41f4b71Sopenharmony_ci| -------- | -------- | 1293e41f4b71Sopenharmony_ci| boolean | Returns **true** if the operation is successful; returns **false** otherwise.| 1294e41f4b71Sopenharmony_ci 1295e41f4b71Sopenharmony_ci**Error codes** 1296e41f4b71Sopenharmony_ci 1297e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 1298e41f4b71Sopenharmony_ci 1299e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1300e41f4b71Sopenharmony_ci| -------- | -------- | 1301e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1302e41f4b71Sopenharmony_ci 1303e41f4b71Sopenharmony_ci**Example** 1304e41f4b71Sopenharmony_ci 1305e41f4b71Sopenharmony_ci```ts 1306e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createPlainTextData('hello'); 1307e41f4b71Sopenharmony_cilet isRemove: boolean = pasteData.removeRecordAt(0); 1308e41f4b71Sopenharmony_ci``` 1309e41f4b71Sopenharmony_ci### replaceRecordAt<sup>(deprecated)</sup> 1310e41f4b71Sopenharmony_ci 1311e41f4b71Sopenharmony_cireplaceRecordAt(index: number, record: PasteDataRecord): boolean 1312e41f4b71Sopenharmony_ci 1313e41f4b71Sopenharmony_ciReplaces the record with the specified index in the pasteboard with a new record. 1314e41f4b71Sopenharmony_ci> **NOTE** 1315e41f4b71Sopenharmony_ci> 1316e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [replaceRecord](#replacerecord9). 1317e41f4b71Sopenharmony_ci 1318e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1319e41f4b71Sopenharmony_ci 1320e41f4b71Sopenharmony_ci**Parameters** 1321e41f4b71Sopenharmony_ci 1322e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1323e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1324e41f4b71Sopenharmony_ci| index | number | Yes| Specified index.| 1325e41f4b71Sopenharmony_ci| record | [PasteDataRecord](#pastedatarecord7) | Yes| New record.| 1326e41f4b71Sopenharmony_ci 1327e41f4b71Sopenharmony_ci**Return value** 1328e41f4b71Sopenharmony_ci 1329e41f4b71Sopenharmony_ci| Type| Description| 1330e41f4b71Sopenharmony_ci| -------- | -------- | 1331e41f4b71Sopenharmony_ci| boolean | Returns **true** if the operation is successful; returns **false** otherwise.| 1332e41f4b71Sopenharmony_ci 1333e41f4b71Sopenharmony_ci**Example** 1334e41f4b71Sopenharmony_ci 1335e41f4b71Sopenharmony_ci```ts 1336e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createPlainTextData('hello'); 1337e41f4b71Sopenharmony_cilet record: pasteboard.PasteDataRecord = pasteboard.createUriRecord('dataability:///com.example.myapplication1/user.txt'); 1338e41f4b71Sopenharmony_cilet isReplace: boolean = pasteData.replaceRecordAt(0, record); 1339e41f4b71Sopenharmony_ci``` 1340e41f4b71Sopenharmony_ci 1341e41f4b71Sopenharmony_ci## SystemPasteboard 1342e41f4b71Sopenharmony_ci 1343e41f4b71Sopenharmony_ciProvides **SystemPasteboard** APIs. 1344e41f4b71Sopenharmony_ci 1345e41f4b71Sopenharmony_ciBefore calling any **SystemPasteboard** API, you must obtain a **SystemPasteboard** object using [getSystemPasteboard](#pasteboardgetsystempasteboard). 1346e41f4b71Sopenharmony_ci 1347e41f4b71Sopenharmony_ci```ts 1348e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1349e41f4b71Sopenharmony_ci``` 1350e41f4b71Sopenharmony_ci 1351e41f4b71Sopenharmony_ci### on('update')<sup>7+</sup> 1352e41f4b71Sopenharmony_ci 1353e41f4b71Sopenharmony_cion(type: 'update', callback: () =>void ): void 1354e41f4b71Sopenharmony_ci 1355e41f4b71Sopenharmony_ciSubscribes to the content change event of the system pasteboard. 1356e41f4b71Sopenharmony_ci 1357e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1358e41f4b71Sopenharmony_ci 1359e41f4b71Sopenharmony_ci**Parameters** 1360e41f4b71Sopenharmony_ci 1361e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1362e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1363e41f4b71Sopenharmony_ci| type | string | Yes| Event type. The value **'update'** indicates changes in the pasteboard content.| 1364e41f4b71Sopenharmony_ci| callback | function | Yes| Callback invoked when the pasteboard content changes.| 1365e41f4b71Sopenharmony_ci 1366e41f4b71Sopenharmony_ci**Error codes** 1367e41f4b71Sopenharmony_ci 1368e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 1369e41f4b71Sopenharmony_ci 1370e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1371e41f4b71Sopenharmony_ci| -------- | -------- | 1372e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1373e41f4b71Sopenharmony_ci 1374e41f4b71Sopenharmony_ci**Example** 1375e41f4b71Sopenharmony_ci 1376e41f4b71Sopenharmony_ci```ts 1377e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1378e41f4b71Sopenharmony_cilet listener = () => { 1379e41f4b71Sopenharmony_ci console.info('The system pasteboard has changed.'); 1380e41f4b71Sopenharmony_ci}; 1381e41f4b71Sopenharmony_cisystemPasteboard.on('update', listener); 1382e41f4b71Sopenharmony_ci``` 1383e41f4b71Sopenharmony_ci 1384e41f4b71Sopenharmony_ci### off('update')<sup>7+</sup> 1385e41f4b71Sopenharmony_ci 1386e41f4b71Sopenharmony_cioff(type: 'update', callback?: () =>void ): void 1387e41f4b71Sopenharmony_ci 1388e41f4b71Sopenharmony_ciUnsubscribes from the system pasteboard content change event. 1389e41f4b71Sopenharmony_ci 1390e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1391e41f4b71Sopenharmony_ci 1392e41f4b71Sopenharmony_ci**Parameters** 1393e41f4b71Sopenharmony_ci 1394e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description | 1395e41f4b71Sopenharmony_ci| -------- | -------- | -------- |---------------------------------------------------------| 1396e41f4b71Sopenharmony_ci| type | string | Yes| Event type. The value **'update'** indicates changes in the pasteboard content. | 1397e41f4b71Sopenharmony_ci| callback | function | No| Callback invoked when the pasteboard content changes. If this parameter is not specified, listening will be disabled for all callbacks registered by the current application.| 1398e41f4b71Sopenharmony_ci 1399e41f4b71Sopenharmony_ci**Error codes** 1400e41f4b71Sopenharmony_ci 1401e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 1402e41f4b71Sopenharmony_ci 1403e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1404e41f4b71Sopenharmony_ci| -------- | -------- | 1405e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1406e41f4b71Sopenharmony_ci 1407e41f4b71Sopenharmony_ci**Example** 1408e41f4b71Sopenharmony_ci 1409e41f4b71Sopenharmony_ci```ts 1410e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1411e41f4b71Sopenharmony_cilet listener = () => { 1412e41f4b71Sopenharmony_ci console.info('The system pasteboard has changed.'); 1413e41f4b71Sopenharmony_ci}; 1414e41f4b71Sopenharmony_cisystemPasteboard.off('update', listener); 1415e41f4b71Sopenharmony_ci``` 1416e41f4b71Sopenharmony_ci 1417e41f4b71Sopenharmony_ci### clearData<sup>9+</sup> 1418e41f4b71Sopenharmony_ci 1419e41f4b71Sopenharmony_ciclearData(callback: AsyncCallback<void>): void 1420e41f4b71Sopenharmony_ci 1421e41f4b71Sopenharmony_ciClears the system pasteboard. This API uses an asynchronous callback to return the result. 1422e41f4b71Sopenharmony_ci 1423e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 1424e41f4b71Sopenharmony_ci 1425e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1426e41f4b71Sopenharmony_ci 1427e41f4b71Sopenharmony_ci**Parameters** 1428e41f4b71Sopenharmony_ci 1429e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1430e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1431e41f4b71Sopenharmony_ci| callback | AsyncCallback<void> | Yes| Callback used to return the result. If the operation is successful, **err** is **undefined**; otherwise, **err** is an error object.| 1432e41f4b71Sopenharmony_ci 1433e41f4b71Sopenharmony_ci**Error codes** 1434e41f4b71Sopenharmony_ci 1435e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 1436e41f4b71Sopenharmony_ci 1437e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1438e41f4b71Sopenharmony_ci| -------- | -------- | 1439e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1440e41f4b71Sopenharmony_ci 1441e41f4b71Sopenharmony_ci**Example** 1442e41f4b71Sopenharmony_ci 1443e41f4b71Sopenharmony_ci```ts 1444e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1445e41f4b71Sopenharmony_cisystemPasteboard.clearData((err, data) => { 1446e41f4b71Sopenharmony_ci if (err) { 1447e41f4b71Sopenharmony_ci console.error(`Failed to clear the pasteboard. Cause: ${err.message}`); 1448e41f4b71Sopenharmony_ci return; 1449e41f4b71Sopenharmony_ci } 1450e41f4b71Sopenharmony_ci console.info('Succeeded in clearing the pasteboard.'); 1451e41f4b71Sopenharmony_ci}); 1452e41f4b71Sopenharmony_ci``` 1453e41f4b71Sopenharmony_ci 1454e41f4b71Sopenharmony_ci### clearData<sup>9+</sup> 1455e41f4b71Sopenharmony_ci 1456e41f4b71Sopenharmony_ciclearData(): Promise<void> 1457e41f4b71Sopenharmony_ci 1458e41f4b71Sopenharmony_ciClears the system pasteboard. This API uses a promise to return the result. 1459e41f4b71Sopenharmony_ci 1460e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 1461e41f4b71Sopenharmony_ci 1462e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1463e41f4b71Sopenharmony_ci 1464e41f4b71Sopenharmony_ci**Return value** 1465e41f4b71Sopenharmony_ci 1466e41f4b71Sopenharmony_ci| Type| Description| 1467e41f4b71Sopenharmony_ci| -------- | -------- | 1468e41f4b71Sopenharmony_ci| Promise<void> | Promise that returns no value.| 1469e41f4b71Sopenharmony_ci 1470e41f4b71Sopenharmony_ci**Example** 1471e41f4b71Sopenharmony_ci 1472e41f4b71Sopenharmony_ci```ts 1473e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 1474e41f4b71Sopenharmony_ci 1475e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1476e41f4b71Sopenharmony_cisystemPasteboard.clearData().then((data: void) => { 1477e41f4b71Sopenharmony_ci console.info('Succeeded in clearing the pasteboard.'); 1478e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => { 1479e41f4b71Sopenharmony_ci console.error(`Failed to clear the pasteboard. Cause: ${err.message}`); 1480e41f4b71Sopenharmony_ci}); 1481e41f4b71Sopenharmony_ci``` 1482e41f4b71Sopenharmony_ci 1483e41f4b71Sopenharmony_ci### setData<sup>9+</sup> 1484e41f4b71Sopenharmony_ci 1485e41f4b71Sopenharmony_cisetData(data: PasteData, callback: AsyncCallback<void>): void 1486e41f4b71Sopenharmony_ci 1487e41f4b71Sopenharmony_ciWrites a **PasteData** object to the pasteboard. This API uses an asynchronous callback to return the result. 1488e41f4b71Sopenharmony_ci 1489e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 1490e41f4b71Sopenharmony_ci 1491e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1492e41f4b71Sopenharmony_ci 1493e41f4b71Sopenharmony_ci**Parameters** 1494e41f4b71Sopenharmony_ci 1495e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1496e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1497e41f4b71Sopenharmony_ci| data | [PasteData](#pastedata) | Yes| **PasteData** object.| 1498e41f4b71Sopenharmony_ci| callback | AsyncCallback<void> | Yes| Callback used to return the result. If the operation is successful, **err** is **undefined**; otherwise, **err** is an error object.| 1499e41f4b71Sopenharmony_ci 1500e41f4b71Sopenharmony_ci**Error codes** 1501e41f4b71Sopenharmony_ci 1502e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md) and [Pasteboard Error Codes](errorcode-pasteboard.md). 1503e41f4b71Sopenharmony_ci 1504e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1505e41f4b71Sopenharmony_ci| -------- | -------- | 1506e41f4b71Sopenharmony_ci| 12900003 | Another copy or paste operation is in progress. | 1507e41f4b71Sopenharmony_ci| 12900004 | Replication is prohibited. | 1508e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1509e41f4b71Sopenharmony_ci 1510e41f4b71Sopenharmony_ci**Example** 1511e41f4b71Sopenharmony_ci 1512e41f4b71Sopenharmony_ci```ts 1513e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'content'); 1514e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1515e41f4b71Sopenharmony_cisystemPasteboard.setData(pasteData, (err, data) => { 1516e41f4b71Sopenharmony_ci if (err) { 1517e41f4b71Sopenharmony_ci console.error('Failed to set PasteData. Cause: ' + err.message); 1518e41f4b71Sopenharmony_ci return; 1519e41f4b71Sopenharmony_ci } 1520e41f4b71Sopenharmony_ci console.info('Succeeded in setting PasteData.'); 1521e41f4b71Sopenharmony_ci}); 1522e41f4b71Sopenharmony_ci``` 1523e41f4b71Sopenharmony_ci 1524e41f4b71Sopenharmony_ci### setData<sup>9+</sup> 1525e41f4b71Sopenharmony_ci 1526e41f4b71Sopenharmony_cisetData(data: PasteData): Promise<void> 1527e41f4b71Sopenharmony_ci 1528e41f4b71Sopenharmony_ciWrites a **PasteData** object to the pasteboard. This API uses a promise to return the result. 1529e41f4b71Sopenharmony_ci 1530e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 1531e41f4b71Sopenharmony_ci 1532e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1533e41f4b71Sopenharmony_ci 1534e41f4b71Sopenharmony_ci**Parameters** 1535e41f4b71Sopenharmony_ci 1536e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1537e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1538e41f4b71Sopenharmony_ci| data | [PasteData](#pastedata) | Yes| **PasteData** object.| 1539e41f4b71Sopenharmony_ci 1540e41f4b71Sopenharmony_ci**Return value** 1541e41f4b71Sopenharmony_ci 1542e41f4b71Sopenharmony_ci| Type| Description| 1543e41f4b71Sopenharmony_ci| -------- | -------- | 1544e41f4b71Sopenharmony_ci| Promise<void> | Promise that returns no value.| 1545e41f4b71Sopenharmony_ci 1546e41f4b71Sopenharmony_ci**Error codes** 1547e41f4b71Sopenharmony_ci 1548e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md) and [Pasteboard Error Codes](errorcode-pasteboard.md). 1549e41f4b71Sopenharmony_ci 1550e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1551e41f4b71Sopenharmony_ci| -------- | -------- | 1552e41f4b71Sopenharmony_ci| 12900003 | Another copy or paste operation is in progress. | 1553e41f4b71Sopenharmony_ci| 12900004 | Replication is prohibited. | 1554e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1555e41f4b71Sopenharmony_ci 1556e41f4b71Sopenharmony_ci**Example** 1557e41f4b71Sopenharmony_ci 1558e41f4b71Sopenharmony_ci```ts 1559e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 1560e41f4b71Sopenharmony_ci 1561e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'content'); 1562e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1563e41f4b71Sopenharmony_cisystemPasteboard.setData(pasteData).then((data: void) => { 1564e41f4b71Sopenharmony_ci console.info('Succeeded in setting PasteData.'); 1565e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => { 1566e41f4b71Sopenharmony_ci console.error('Failed to set PasteData. Cause: ' + err.message); 1567e41f4b71Sopenharmony_ci}); 1568e41f4b71Sopenharmony_ci``` 1569e41f4b71Sopenharmony_ci 1570e41f4b71Sopenharmony_ci### getData<sup>9+</sup> 1571e41f4b71Sopenharmony_ci 1572e41f4b71Sopenharmony_cigetData( callback: AsyncCallback<PasteData>): void 1573e41f4b71Sopenharmony_ci 1574e41f4b71Sopenharmony_ciObtains a **PasteData** object from the pasteboard. This API uses an asynchronous callback to return the result. 1575e41f4b71Sopenharmony_ci 1576e41f4b71Sopenharmony_ci**Required permissions**: ohos.permission.READ_PASTEBOARD 1577e41f4b71Sopenharmony_ci 1578e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 1579e41f4b71Sopenharmony_ci 1580e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1581e41f4b71Sopenharmony_ci 1582e41f4b71Sopenharmony_ci**Parameters** 1583e41f4b71Sopenharmony_ci 1584e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1585e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1586e41f4b71Sopenharmony_ci| callback | AsyncCallback<[PasteData](#pastedata)> | Yes| Callback used to return the result. If the operation is successful, **err** is **undefined** and **data** is the system pasteboard data. Otherwise, **err** is an error object.| 1587e41f4b71Sopenharmony_ci 1588e41f4b71Sopenharmony_ci**Error codes** 1589e41f4b71Sopenharmony_ci 1590e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md) and [Pasteboard Error Codes](errorcode-pasteboard.md). 1591e41f4b71Sopenharmony_ci 1592e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1593e41f4b71Sopenharmony_ci| -------- | -------- | 1594e41f4b71Sopenharmony_ci| 12900003 | Another copy or paste operation is in progress. | 1595e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1596e41f4b71Sopenharmony_ci 1597e41f4b71Sopenharmony_ci**Example** 1598e41f4b71Sopenharmony_ci 1599e41f4b71Sopenharmony_ci```ts 1600e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 1601e41f4b71Sopenharmony_ci 1602e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1603e41f4b71Sopenharmony_cisystemPasteboard.getData((err: BusinessError, pasteData: pasteboard.PasteData) => { 1604e41f4b71Sopenharmony_ci if (err) { 1605e41f4b71Sopenharmony_ci console.error('Failed to get PasteData. Cause: ' + err.message); 1606e41f4b71Sopenharmony_ci return; 1607e41f4b71Sopenharmony_ci } 1608e41f4b71Sopenharmony_ci let text: string = pasteData.getPrimaryText(); 1609e41f4b71Sopenharmony_ci}); 1610e41f4b71Sopenharmony_ci``` 1611e41f4b71Sopenharmony_ci 1612e41f4b71Sopenharmony_ci### getData<sup>9+</sup> 1613e41f4b71Sopenharmony_ci 1614e41f4b71Sopenharmony_cigetData(): Promise<PasteData> 1615e41f4b71Sopenharmony_ci 1616e41f4b71Sopenharmony_ciObtains a **PasteData** object from the pasteboard. This API uses a promise to return the result. 1617e41f4b71Sopenharmony_ci 1618e41f4b71Sopenharmony_ci**Required permissions**: ohos.permission.READ_PASTEBOARD 1619e41f4b71Sopenharmony_ci 1620e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 1621e41f4b71Sopenharmony_ci 1622e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1623e41f4b71Sopenharmony_ci 1624e41f4b71Sopenharmony_ci**Return value** 1625e41f4b71Sopenharmony_ci 1626e41f4b71Sopenharmony_ci| Type| Description| 1627e41f4b71Sopenharmony_ci| -------- | -------- | 1628e41f4b71Sopenharmony_ci| Promise<[PasteData](#pastedata)> | Promise used to return the system pasteboard data.| 1629e41f4b71Sopenharmony_ci 1630e41f4b71Sopenharmony_ci**Error codes** 1631e41f4b71Sopenharmony_ci 1632e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md) and [Pasteboard Error Codes](errorcode-pasteboard.md). 1633e41f4b71Sopenharmony_ci 1634e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1635e41f4b71Sopenharmony_ci| -------- | -------- | 1636e41f4b71Sopenharmony_ci| 12900003 | Another copy or paste operation is in progress. | 1637e41f4b71Sopenharmony_ci| 201 | Permission verification failed. The application does not have the permission required to call the API. | 1638e41f4b71Sopenharmony_ci 1639e41f4b71Sopenharmony_ci**Example** 1640e41f4b71Sopenharmony_ci 1641e41f4b71Sopenharmony_ci```ts 1642e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 1643e41f4b71Sopenharmony_ci 1644e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1645e41f4b71Sopenharmony_cisystemPasteboard.getData().then((pasteData: pasteboard.PasteData) => { 1646e41f4b71Sopenharmony_ci let text: string = pasteData.getPrimaryText(); 1647e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => { 1648e41f4b71Sopenharmony_ci console.error('Failed to get PasteData. Cause: ' + err.message); 1649e41f4b71Sopenharmony_ci}); 1650e41f4b71Sopenharmony_ci``` 1651e41f4b71Sopenharmony_ci 1652e41f4b71Sopenharmony_ci### hasData<sup>9+</sup> 1653e41f4b71Sopenharmony_ci 1654e41f4b71Sopenharmony_cihasData(callback: AsyncCallback<boolean>): void 1655e41f4b71Sopenharmony_ci 1656e41f4b71Sopenharmony_ciChecks whether the system pasteboard contains data. This API uses an asynchronous callback to return the result. 1657e41f4b71Sopenharmony_ci 1658e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 1659e41f4b71Sopenharmony_ci 1660e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1661e41f4b71Sopenharmony_ci 1662e41f4b71Sopenharmony_ci**Parameters** 1663e41f4b71Sopenharmony_ci 1664e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1665e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1666e41f4b71Sopenharmony_ci| callback | AsyncCallback<boolean> | Yes| Callback used to return the result. Returns **true** if the system pasteboard contains data; returns **false** otherwise.| 1667e41f4b71Sopenharmony_ci 1668e41f4b71Sopenharmony_ci**Error codes** 1669e41f4b71Sopenharmony_ci 1670e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 1671e41f4b71Sopenharmony_ci 1672e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1673e41f4b71Sopenharmony_ci| -------- | -------- | 1674e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1675e41f4b71Sopenharmony_ci 1676e41f4b71Sopenharmony_ci**Example** 1677e41f4b71Sopenharmony_ci 1678e41f4b71Sopenharmony_ci```ts 1679e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 1680e41f4b71Sopenharmony_ci 1681e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1682e41f4b71Sopenharmony_cisystemPasteboard.hasData((err: BusinessError, data: boolean) => { 1683e41f4b71Sopenharmony_ci if (err) { 1684e41f4b71Sopenharmony_ci console.error(`Failed to check the PasteData. Cause: ${err.message}`); 1685e41f4b71Sopenharmony_ci return; 1686e41f4b71Sopenharmony_ci } 1687e41f4b71Sopenharmony_ci console.info(`Succeeded in checking the PasteData. Data: ${data}`); 1688e41f4b71Sopenharmony_ci}); 1689e41f4b71Sopenharmony_ci``` 1690e41f4b71Sopenharmony_ci 1691e41f4b71Sopenharmony_ci### hasData<sup>9+</sup> 1692e41f4b71Sopenharmony_ci 1693e41f4b71Sopenharmony_cihasData(): Promise<boolean> 1694e41f4b71Sopenharmony_ci 1695e41f4b71Sopenharmony_ciChecks whether the system pasteboard contains data. This API uses a promise to return the result. 1696e41f4b71Sopenharmony_ci 1697e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 1698e41f4b71Sopenharmony_ci 1699e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1700e41f4b71Sopenharmony_ci 1701e41f4b71Sopenharmony_ci**Return value** 1702e41f4b71Sopenharmony_ci 1703e41f4b71Sopenharmony_ci| Type| Description| 1704e41f4b71Sopenharmony_ci| -------- | -------- | 1705e41f4b71Sopenharmony_ci| Promise<boolean> | Callback used to return the result. Returns **true** if the system pasteboard contains data; returns **false** otherwise.| 1706e41f4b71Sopenharmony_ci 1707e41f4b71Sopenharmony_ci**Example** 1708e41f4b71Sopenharmony_ci 1709e41f4b71Sopenharmony_ci```ts 1710e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 1711e41f4b71Sopenharmony_ci 1712e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1713e41f4b71Sopenharmony_cisystemPasteboard.hasData().then((data: boolean) => { 1714e41f4b71Sopenharmony_ci console.info(`Succeeded in checking the PasteData. Data: ${data}`); 1715e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => { 1716e41f4b71Sopenharmony_ci console.error(`Failed to check the PasteData. Cause: ${err.message}`); 1717e41f4b71Sopenharmony_ci}); 1718e41f4b71Sopenharmony_ci``` 1719e41f4b71Sopenharmony_ci 1720e41f4b71Sopenharmony_ci### clear<sup>(deprecated)</sup> 1721e41f4b71Sopenharmony_ci 1722e41f4b71Sopenharmony_ciclear(callback: AsyncCallback<void>): void 1723e41f4b71Sopenharmony_ci 1724e41f4b71Sopenharmony_ciClears the system pasteboard. This API uses an asynchronous callback to return the result. 1725e41f4b71Sopenharmony_ci> **NOTE** 1726e41f4b71Sopenharmony_ci> 1727e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [pasteboard.clearData](#cleardata9). 1728e41f4b71Sopenharmony_ci 1729e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1730e41f4b71Sopenharmony_ci 1731e41f4b71Sopenharmony_ci**Parameters** 1732e41f4b71Sopenharmony_ci 1733e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1734e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1735e41f4b71Sopenharmony_ci| callback | AsyncCallback<void> | Yes| Callback used to return the result. If the operation is successful, **err** is **undefined**; otherwise, **err** is an error object.| 1736e41f4b71Sopenharmony_ci 1737e41f4b71Sopenharmony_ci**Error codes** 1738e41f4b71Sopenharmony_ci 1739e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 1740e41f4b71Sopenharmony_ci 1741e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1742e41f4b71Sopenharmony_ci| -------- | -------- | 1743e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1744e41f4b71Sopenharmony_ci 1745e41f4b71Sopenharmony_ci**Example** 1746e41f4b71Sopenharmony_ci 1747e41f4b71Sopenharmony_ci```ts 1748e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1749e41f4b71Sopenharmony_cisystemPasteboard.clear((err, data) => { 1750e41f4b71Sopenharmony_ci if (err) { 1751e41f4b71Sopenharmony_ci console.error(`Failed to clear the PasteData. Cause: ${err.message}`); 1752e41f4b71Sopenharmony_ci return; 1753e41f4b71Sopenharmony_ci } 1754e41f4b71Sopenharmony_ci console.info('Succeeded in clearing the PasteData.'); 1755e41f4b71Sopenharmony_ci}); 1756e41f4b71Sopenharmony_ci``` 1757e41f4b71Sopenharmony_ci 1758e41f4b71Sopenharmony_ci### clear<sup>(deprecated)</sup> 1759e41f4b71Sopenharmony_ci 1760e41f4b71Sopenharmony_ciclear(): Promise<void> 1761e41f4b71Sopenharmony_ci 1762e41f4b71Sopenharmony_ciClears the system pasteboard. This API uses a promise to return the result. 1763e41f4b71Sopenharmony_ci> **NOTE** 1764e41f4b71Sopenharmony_ci> 1765e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [pasteboard.clearData](#cleardata9-1). 1766e41f4b71Sopenharmony_ci 1767e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1768e41f4b71Sopenharmony_ci 1769e41f4b71Sopenharmony_ci**Return value** 1770e41f4b71Sopenharmony_ci 1771e41f4b71Sopenharmony_ci| Type| Description| 1772e41f4b71Sopenharmony_ci| -------- | -------- | 1773e41f4b71Sopenharmony_ci| Promise<void> | Promise that returns no value.| 1774e41f4b71Sopenharmony_ci 1775e41f4b71Sopenharmony_ci**Example** 1776e41f4b71Sopenharmony_ci 1777e41f4b71Sopenharmony_ci```ts 1778e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 1779e41f4b71Sopenharmony_ci 1780e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1781e41f4b71Sopenharmony_cisystemPasteboard.clear().then((data) => { 1782e41f4b71Sopenharmony_ci console.info('Succeeded in clearing the PasteData.'); 1783e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => { 1784e41f4b71Sopenharmony_ci console.error(`Failed to clear the PasteData. Cause: ${err.message}`); 1785e41f4b71Sopenharmony_ci}); 1786e41f4b71Sopenharmony_ci``` 1787e41f4b71Sopenharmony_ci 1788e41f4b71Sopenharmony_ci### getPasteData<sup>(deprecated)</sup> 1789e41f4b71Sopenharmony_ci 1790e41f4b71Sopenharmony_cigetPasteData( callback: AsyncCallback<PasteData>): void 1791e41f4b71Sopenharmony_ci 1792e41f4b71Sopenharmony_ciObtains a **PasteData** object from the pasteboard. This API uses an asynchronous callback to return the result. 1793e41f4b71Sopenharmony_ci> **NOTE** 1794e41f4b71Sopenharmony_ci> 1795e41f4b71Sopenharmony_ci> This API is supported since API version 6 and deprecated since API version 9. You are advised to use [getData](#getdata9). 1796e41f4b71Sopenharmony_ci 1797e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1798e41f4b71Sopenharmony_ci 1799e41f4b71Sopenharmony_ci**Parameters** 1800e41f4b71Sopenharmony_ci 1801e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1802e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1803e41f4b71Sopenharmony_ci| callback | AsyncCallback<[PasteData](#pastedata)> | Yes| Callback used to return the result. If the operation is successful, **err** is **undefined** and **data** is the system pasteboard data. Otherwise, **err** is an error object.| 1804e41f4b71Sopenharmony_ci 1805e41f4b71Sopenharmony_ci**Error codes** 1806e41f4b71Sopenharmony_ci 1807e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 1808e41f4b71Sopenharmony_ci 1809e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1810e41f4b71Sopenharmony_ci| -------- | -------- | 1811e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1812e41f4b71Sopenharmony_ci 1813e41f4b71Sopenharmony_ci**Example** 1814e41f4b71Sopenharmony_ci 1815e41f4b71Sopenharmony_ci```ts 1816e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 1817e41f4b71Sopenharmony_ci 1818e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1819e41f4b71Sopenharmony_cisystemPasteboard.getPasteData((err: BusinessError, pasteData: pasteboard.PasteData) => { 1820e41f4b71Sopenharmony_ci if (err) { 1821e41f4b71Sopenharmony_ci console.error('Failed to get PasteData. Cause: ' + err.message); 1822e41f4b71Sopenharmony_ci return; 1823e41f4b71Sopenharmony_ci } 1824e41f4b71Sopenharmony_ci let text: string = pasteData.getPrimaryText(); 1825e41f4b71Sopenharmony_ci}); 1826e41f4b71Sopenharmony_ci``` 1827e41f4b71Sopenharmony_ci 1828e41f4b71Sopenharmony_ci### getPasteData<sup>(deprecated)</sup> 1829e41f4b71Sopenharmony_ci 1830e41f4b71Sopenharmony_cigetPasteData(): Promise<PasteData> 1831e41f4b71Sopenharmony_ci 1832e41f4b71Sopenharmony_ciObtains a **PasteData** object from the pasteboard. This API uses a promise to return the result. 1833e41f4b71Sopenharmony_ci> **NOTE** 1834e41f4b71Sopenharmony_ci> 1835e41f4b71Sopenharmony_ci> This API is supported since API version 6 and deprecated since API version 9. You are advised to use [getData](#getdata9-1). 1836e41f4b71Sopenharmony_ci 1837e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1838e41f4b71Sopenharmony_ci 1839e41f4b71Sopenharmony_ci**Return value** 1840e41f4b71Sopenharmony_ci 1841e41f4b71Sopenharmony_ci| Type| Description| 1842e41f4b71Sopenharmony_ci| -------- | -------- | 1843e41f4b71Sopenharmony_ci| Promise<[PasteData](#pastedata)> | Promise used to return the system pasteboard data.| 1844e41f4b71Sopenharmony_ci 1845e41f4b71Sopenharmony_ci**Example** 1846e41f4b71Sopenharmony_ci 1847e41f4b71Sopenharmony_ci```ts 1848e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 1849e41f4b71Sopenharmony_ci 1850e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1851e41f4b71Sopenharmony_cisystemPasteboard.getPasteData().then((pasteData: pasteboard.PasteData) => { 1852e41f4b71Sopenharmony_ci let text: string = pasteData.getPrimaryText(); 1853e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => { 1854e41f4b71Sopenharmony_ci console.error('Failed to get PasteData. Cause: ' + err.message); 1855e41f4b71Sopenharmony_ci}); 1856e41f4b71Sopenharmony_ci``` 1857e41f4b71Sopenharmony_ci 1858e41f4b71Sopenharmony_ci### hasPasteData<sup>(deprecated)</sup> 1859e41f4b71Sopenharmony_ci 1860e41f4b71Sopenharmony_cihasPasteData(callback: AsyncCallback<boolean>): void 1861e41f4b71Sopenharmony_ci 1862e41f4b71Sopenharmony_ciChecks whether the system pasteboard contains data. This API uses an asynchronous callback to return the result. 1863e41f4b71Sopenharmony_ci> **NOTE** 1864e41f4b71Sopenharmony_ci> 1865e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [hasData](#hasdata9). 1866e41f4b71Sopenharmony_ci 1867e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1868e41f4b71Sopenharmony_ci 1869e41f4b71Sopenharmony_ci**Parameters** 1870e41f4b71Sopenharmony_ci 1871e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1872e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1873e41f4b71Sopenharmony_ci| callback | AsyncCallback<boolean> | Yes| Callback used to return the result. Returns **true** if the system pasteboard contains data; returns **false** otherwise.| 1874e41f4b71Sopenharmony_ci 1875e41f4b71Sopenharmony_ci**Error codes** 1876e41f4b71Sopenharmony_ci 1877e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 1878e41f4b71Sopenharmony_ci 1879e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1880e41f4b71Sopenharmony_ci| -------- | -------- | 1881e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1882e41f4b71Sopenharmony_ci 1883e41f4b71Sopenharmony_ci**Example** 1884e41f4b71Sopenharmony_ci 1885e41f4b71Sopenharmony_ci```ts 1886e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 1887e41f4b71Sopenharmony_ci 1888e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1889e41f4b71Sopenharmony_cisystemPasteboard.hasPasteData((err: BusinessError, data: boolean) => { 1890e41f4b71Sopenharmony_ci if (err) { 1891e41f4b71Sopenharmony_ci console.error(`Failed to check the PasteData. Cause: ${err.message}`); 1892e41f4b71Sopenharmony_ci return; 1893e41f4b71Sopenharmony_ci } 1894e41f4b71Sopenharmony_ci console.info(`Succeeded in checking the PasteData. Data: ${data}`); 1895e41f4b71Sopenharmony_ci}); 1896e41f4b71Sopenharmony_ci``` 1897e41f4b71Sopenharmony_ci 1898e41f4b71Sopenharmony_ci### hasPasteData<sup>(deprecated)</sup> 1899e41f4b71Sopenharmony_ci 1900e41f4b71Sopenharmony_cihasPasteData(): Promise<boolean> 1901e41f4b71Sopenharmony_ci 1902e41f4b71Sopenharmony_ciChecks whether the system pasteboard contains data. This API uses a promise to return the result. 1903e41f4b71Sopenharmony_ci> **NOTE** 1904e41f4b71Sopenharmony_ci> 1905e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [hasData](#hasdata9-1). 1906e41f4b71Sopenharmony_ci 1907e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1908e41f4b71Sopenharmony_ci 1909e41f4b71Sopenharmony_ci**Return value** 1910e41f4b71Sopenharmony_ci 1911e41f4b71Sopenharmony_ci| Type| Description| 1912e41f4b71Sopenharmony_ci| -------- | -------- | 1913e41f4b71Sopenharmony_ci| Promise<boolean> | Callback used to return the result. Returns **true** if the system pasteboard contains data; returns **false** otherwise.| 1914e41f4b71Sopenharmony_ci 1915e41f4b71Sopenharmony_ci**Example** 1916e41f4b71Sopenharmony_ci 1917e41f4b71Sopenharmony_ci```ts 1918e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 1919e41f4b71Sopenharmony_ci 1920e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1921e41f4b71Sopenharmony_cisystemPasteboard.hasPasteData().then((data: boolean) => { 1922e41f4b71Sopenharmony_ci console.info(`Succeeded in checking the PasteData. Data: ${data}`); 1923e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => { 1924e41f4b71Sopenharmony_ci console.error(`Failed to check the PasteData. Cause: ${err.message}`); 1925e41f4b71Sopenharmony_ci}); 1926e41f4b71Sopenharmony_ci``` 1927e41f4b71Sopenharmony_ci 1928e41f4b71Sopenharmony_ci### setPasteData<sup>(deprecated)</sup> 1929e41f4b71Sopenharmony_ci 1930e41f4b71Sopenharmony_cisetPasteData(data: PasteData, callback: AsyncCallback<void>): void 1931e41f4b71Sopenharmony_ci 1932e41f4b71Sopenharmony_ciWrites a **PasteData** object to the pasteboard. This API uses an asynchronous callback to return the result. 1933e41f4b71Sopenharmony_ci> **NOTE** 1934e41f4b71Sopenharmony_ci> 1935e41f4b71Sopenharmony_ci> This API is supported since API version 6 and deprecated since API version 9. You are advised to use [setData](#setdata9). 1936e41f4b71Sopenharmony_ci 1937e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1938e41f4b71Sopenharmony_ci 1939e41f4b71Sopenharmony_ci**Parameters** 1940e41f4b71Sopenharmony_ci 1941e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1942e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1943e41f4b71Sopenharmony_ci| data | [PasteData](#pastedata) | Yes| **PasteData** object.| 1944e41f4b71Sopenharmony_ci| callback | AsyncCallback<void> | Yes| Callback used to return the result. If the operation is successful, **err** is **undefined**; otherwise, **err** is an error object.| 1945e41f4b71Sopenharmony_ci 1946e41f4b71Sopenharmony_ci**Error codes** 1947e41f4b71Sopenharmony_ci 1948e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 1949e41f4b71Sopenharmony_ci 1950e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 1951e41f4b71Sopenharmony_ci| -------- | -------- | 1952e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 1953e41f4b71Sopenharmony_ci 1954e41f4b71Sopenharmony_ci**Example** 1955e41f4b71Sopenharmony_ci 1956e41f4b71Sopenharmony_ci```ts 1957e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createPlainTextData('content'); 1958e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1959e41f4b71Sopenharmony_cisystemPasteboard.setPasteData(pasteData, (err, data) => { 1960e41f4b71Sopenharmony_ci if (err) { 1961e41f4b71Sopenharmony_ci console.error('Failed to set PasteData. Cause: ' + err.message); 1962e41f4b71Sopenharmony_ci return; 1963e41f4b71Sopenharmony_ci } 1964e41f4b71Sopenharmony_ci console.info('Succeeded in setting PasteData.'); 1965e41f4b71Sopenharmony_ci}); 1966e41f4b71Sopenharmony_ci``` 1967e41f4b71Sopenharmony_ci### setPasteData<sup>(deprecated)</sup> 1968e41f4b71Sopenharmony_ci 1969e41f4b71Sopenharmony_cisetPasteData(data: PasteData): Promise<void> 1970e41f4b71Sopenharmony_ci 1971e41f4b71Sopenharmony_ciWrites a **PasteData** object to the pasteboard. This API uses a promise to return the result. 1972e41f4b71Sopenharmony_ci> **NOTE** 1973e41f4b71Sopenharmony_ci> 1974e41f4b71Sopenharmony_ci> This API is supported since API version 6 and deprecated since API version 9. You are advised to use [setData](#setdata9-1). 1975e41f4b71Sopenharmony_ci 1976e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 1977e41f4b71Sopenharmony_ci 1978e41f4b71Sopenharmony_ci**Parameters** 1979e41f4b71Sopenharmony_ci 1980e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 1981e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 1982e41f4b71Sopenharmony_ci| data | [PasteData](#pastedata) | Yes| **PasteData** object.| 1983e41f4b71Sopenharmony_ci 1984e41f4b71Sopenharmony_ci**Return value** 1985e41f4b71Sopenharmony_ci 1986e41f4b71Sopenharmony_ci| Type| Description| 1987e41f4b71Sopenharmony_ci| -------- | -------- | 1988e41f4b71Sopenharmony_ci| Promise<void> | Promise that returns no value.| 1989e41f4b71Sopenharmony_ci 1990e41f4b71Sopenharmony_ci**Example** 1991e41f4b71Sopenharmony_ci 1992e41f4b71Sopenharmony_ci```ts 1993e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 1994e41f4b71Sopenharmony_ci 1995e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createPlainTextData('content'); 1996e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 1997e41f4b71Sopenharmony_cisystemPasteboard.setPasteData(pasteData).then((data: void) => { 1998e41f4b71Sopenharmony_ci console.info('Succeeded in setting PasteData.'); 1999e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => { 2000e41f4b71Sopenharmony_ci console.error('Failed to set PasteData. Cause: ' + err.message); 2001e41f4b71Sopenharmony_ci}); 2002e41f4b71Sopenharmony_ci``` 2003e41f4b71Sopenharmony_ci### isRemoteData<sup>11+</sup> 2004e41f4b71Sopenharmony_ci 2005e41f4b71Sopenharmony_ciisRemoteData(): boolean 2006e41f4b71Sopenharmony_ci 2007e41f4b71Sopenharmony_ciChecks whether the data in the pasteboard is from another device. 2008e41f4b71Sopenharmony_ci 2009e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 2010e41f4b71Sopenharmony_ci 2011e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 2012e41f4b71Sopenharmony_ci 2013e41f4b71Sopenharmony_ci**Return value** 2014e41f4b71Sopenharmony_ci 2015e41f4b71Sopenharmony_ci| Type | Description | 2016e41f4b71Sopenharmony_ci| ------- | ------------------------------------- | 2017e41f4b71Sopenharmony_ci| boolean | Returns **true** if the data in the pasteboard is from another device; returns **false** otherwise.| 2018e41f4b71Sopenharmony_ci 2019e41f4b71Sopenharmony_ci**Error codes** 2020e41f4b71Sopenharmony_ci 2021e41f4b71Sopenharmony_ciFor details about the error codes, see [Pasteboard Error Codes](errorcode-pasteboard.md). 2022e41f4b71Sopenharmony_ci 2023e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 2024e41f4b71Sopenharmony_ci| -------- | -------- | 2025e41f4b71Sopenharmony_ci| 12900005 | Request timed out. | 2026e41f4b71Sopenharmony_ci 2027e41f4b71Sopenharmony_ci**Example** 2028e41f4b71Sopenharmony_ci 2029e41f4b71Sopenharmony_ci```ts 2030e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 2031e41f4b71Sopenharmony_citry { 2032e41f4b71Sopenharmony_ci let result: boolean = systemPasteboard.isRemoteData(); 2033e41f4b71Sopenharmony_ci console.info(`Succeeded in checking the RemoteData. Result: ${result}`); 2034e41f4b71Sopenharmony_ci} catch (err) { 2035e41f4b71Sopenharmony_ci console.error('Failed to check the RemoteData. Cause:' + err.message); 2036e41f4b71Sopenharmony_ci}; 2037e41f4b71Sopenharmony_ci``` 2038e41f4b71Sopenharmony_ci 2039e41f4b71Sopenharmony_ci### getDataSource<sup>11+</sup> 2040e41f4b71Sopenharmony_ci 2041e41f4b71Sopenharmony_cigetDataSource(): string 2042e41f4b71Sopenharmony_ci 2043e41f4b71Sopenharmony_ciObtains the data source. 2044e41f4b71Sopenharmony_ci 2045e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 2046e41f4b71Sopenharmony_ci 2047e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 2048e41f4b71Sopenharmony_ci 2049e41f4b71Sopenharmony_ci**Return value** 2050e41f4b71Sopenharmony_ci 2051e41f4b71Sopenharmony_ci| Type | Description | 2052e41f4b71Sopenharmony_ci| ------ | ------ | 2053e41f4b71Sopenharmony_ci| string | Data source.| 2054e41f4b71Sopenharmony_ci 2055e41f4b71Sopenharmony_ci**Error codes** 2056e41f4b71Sopenharmony_ci 2057e41f4b71Sopenharmony_ciFor details about the error codes, see [Pasteboard Error Codes](errorcode-pasteboard.md). 2058e41f4b71Sopenharmony_ci 2059e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 2060e41f4b71Sopenharmony_ci| -------- | -------- | 2061e41f4b71Sopenharmony_ci| 12900005 | Request timed out. | 2062e41f4b71Sopenharmony_ci 2063e41f4b71Sopenharmony_ci**Example** 2064e41f4b71Sopenharmony_ci 2065e41f4b71Sopenharmony_ci```ts 2066e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 2067e41f4b71Sopenharmony_citry { 2068e41f4b71Sopenharmony_ci let result: string = systemPasteboard.getDataSource(); 2069e41f4b71Sopenharmony_ci console.info(`Succeeded in getting DataSource. Result: ${result}`); 2070e41f4b71Sopenharmony_ci} catch (err) { 2071e41f4b71Sopenharmony_ci console.error('Failed to get DataSource. Cause:' + err.message); 2072e41f4b71Sopenharmony_ci}; 2073e41f4b71Sopenharmony_ci``` 2074e41f4b71Sopenharmony_ci 2075e41f4b71Sopenharmony_ci### hasDataType<sup>11+</sup> 2076e41f4b71Sopenharmony_ci 2077e41f4b71Sopenharmony_cihasDataType(mimeType: string): boolean 2078e41f4b71Sopenharmony_ci 2079e41f4b71Sopenharmony_ciChecks whether the pasteboard contains data of the specified type. 2080e41f4b71Sopenharmony_ci 2081e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 2082e41f4b71Sopenharmony_ci 2083e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 2084e41f4b71Sopenharmony_ci 2085e41f4b71Sopenharmony_ci**Parameters** 2086e41f4b71Sopenharmony_ci 2087e41f4b71Sopenharmony_ci| Name | Type | Mandatory| Description | 2088e41f4b71Sopenharmony_ci| -------- | ------ | ---- | ------------------ | 2089e41f4b71Sopenharmony_ci| mimeType | string | Yes | Data type.| 2090e41f4b71Sopenharmony_ci 2091e41f4b71Sopenharmony_ci**Return value** 2092e41f4b71Sopenharmony_ci 2093e41f4b71Sopenharmony_ci| Type | Description | 2094e41f4b71Sopenharmony_ci| ------- | ------------------------------------------- | 2095e41f4b71Sopenharmony_ci| boolean | Returns **true** if the pasteboard contains data of the specified type; returns **false** otherwise.| 2096e41f4b71Sopenharmony_ci 2097e41f4b71Sopenharmony_ci**Error codes** 2098e41f4b71Sopenharmony_ci 2099e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md) and [Pasteboard Error Codes](errorcode-pasteboard.md). 2100e41f4b71Sopenharmony_ci 2101e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 2102e41f4b71Sopenharmony_ci| -------- | -------- | 2103e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 2104e41f4b71Sopenharmony_ci| 12900005 | Request timed out. | 2105e41f4b71Sopenharmony_ci 2106e41f4b71Sopenharmony_ci**Example** 2107e41f4b71Sopenharmony_ci 2108e41f4b71Sopenharmony_ci```ts 2109e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 2110e41f4b71Sopenharmony_citry { 2111e41f4b71Sopenharmony_ci let result: boolean = systemPasteboard.hasDataType(pasteboard.MIMETYPE_TEXT_PLAIN); 2112e41f4b71Sopenharmony_ci console.info(`Succeeded in checking the DataType. Result: ${result}`); 2113e41f4b71Sopenharmony_ci} catch (err) { 2114e41f4b71Sopenharmony_ci console.error('Failed to check the DataType. Cause:' + err.message); 2115e41f4b71Sopenharmony_ci}; 2116e41f4b71Sopenharmony_ci``` 2117e41f4b71Sopenharmony_ci 2118e41f4b71Sopenharmony_ci### clearDataSync<sup>11+</sup> 2119e41f4b71Sopenharmony_ci 2120e41f4b71Sopenharmony_ciclearDataSync(): void 2121e41f4b71Sopenharmony_ci 2122e41f4b71Sopenharmony_ciClears the system pasteboard. This API returns the result synchronously. 2123e41f4b71Sopenharmony_ci 2124e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 2125e41f4b71Sopenharmony_ci 2126e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 2127e41f4b71Sopenharmony_ci 2128e41f4b71Sopenharmony_ci**Error codes** 2129e41f4b71Sopenharmony_ci 2130e41f4b71Sopenharmony_ciFor details about the error codes, see [Pasteboard Error Codes](errorcode-pasteboard.md). 2131e41f4b71Sopenharmony_ci 2132e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 2133e41f4b71Sopenharmony_ci| -------- | -------- | 2134e41f4b71Sopenharmony_ci| 12900005 | Request timed out. | 2135e41f4b71Sopenharmony_ci 2136e41f4b71Sopenharmony_ci**Example** 2137e41f4b71Sopenharmony_ci 2138e41f4b71Sopenharmony_ci```ts 2139e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 2140e41f4b71Sopenharmony_citry { 2141e41f4b71Sopenharmony_ci systemPasteboard.clearDataSync(); 2142e41f4b71Sopenharmony_ci console.info('Succeeded in clearing the pasteboard.'); 2143e41f4b71Sopenharmony_ci} catch (err) { 2144e41f4b71Sopenharmony_ci console.error('Failed to clear the pasteboard. Cause:' + err.message); 2145e41f4b71Sopenharmony_ci}; 2146e41f4b71Sopenharmony_ci``` 2147e41f4b71Sopenharmony_ci 2148e41f4b71Sopenharmony_ci### getDataSync<sup>11+</sup> 2149e41f4b71Sopenharmony_ci 2150e41f4b71Sopenharmony_cigetDataSync(): PasteData 2151e41f4b71Sopenharmony_ci 2152e41f4b71Sopenharmony_ciReads data in the system pasteboard. This API returns the result synchronously. 2153e41f4b71Sopenharmony_ci 2154e41f4b71Sopenharmony_ci**Required permissions**: ohos.permission.READ_PASTEBOARD 2155e41f4b71Sopenharmony_ci 2156e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 2157e41f4b71Sopenharmony_ci 2158e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 2159e41f4b71Sopenharmony_ci 2160e41f4b71Sopenharmony_ci**Return value** 2161e41f4b71Sopenharmony_ci 2162e41f4b71Sopenharmony_ci| Type | Description | 2163e41f4b71Sopenharmony_ci| ----------------------- | -------------------- | 2164e41f4b71Sopenharmony_ci| [PasteData](#pastedata) | Data in the system pasteboard.| 2165e41f4b71Sopenharmony_ci 2166e41f4b71Sopenharmony_ci**Error codes** 2167e41f4b71Sopenharmony_ci 2168e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md) and [Pasteboard Error Codes](errorcode-pasteboard.md). 2169e41f4b71Sopenharmony_ci 2170e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 2171e41f4b71Sopenharmony_ci| -------- | -------- | 2172e41f4b71Sopenharmony_ci| 12900005 | Request timed out. | 2173e41f4b71Sopenharmony_ci| 201 | Permission verification failed. The application does not have the permission required to call the API. | 2174e41f4b71Sopenharmony_ci 2175e41f4b71Sopenharmony_ci**Example** 2176e41f4b71Sopenharmony_ci 2177e41f4b71Sopenharmony_ci```ts 2178e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 2179e41f4b71Sopenharmony_citry { 2180e41f4b71Sopenharmony_ci let result: pasteboard.PasteData = systemPasteboard.getDataSync(); 2181e41f4b71Sopenharmony_ci console.info('Succeeded in getting PasteData.'); 2182e41f4b71Sopenharmony_ci} catch (err) { 2183e41f4b71Sopenharmony_ci console.error('Failed to get PasteData. Cause:' + err.message); 2184e41f4b71Sopenharmony_ci}; 2185e41f4b71Sopenharmony_ci``` 2186e41f4b71Sopenharmony_ci 2187e41f4b71Sopenharmony_ci### setDataSync<sup>11+</sup> 2188e41f4b71Sopenharmony_ci 2189e41f4b71Sopenharmony_cisetDataSync(data: PasteData): void 2190e41f4b71Sopenharmony_ci 2191e41f4b71Sopenharmony_ciWrites data to the system pasteboard. This API returns the result synchronously. 2192e41f4b71Sopenharmony_ci 2193e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 2194e41f4b71Sopenharmony_ci 2195e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 2196e41f4b71Sopenharmony_ci 2197e41f4b71Sopenharmony_ci**Parameters** 2198e41f4b71Sopenharmony_ci 2199e41f4b71Sopenharmony_ci| Name| Type | Mandatory| Description | 2200e41f4b71Sopenharmony_ci| ------ | ----------------------- | ---- | ---------------- | 2201e41f4b71Sopenharmony_ci| data | [PasteData](#pastedata) | Yes | Data to be written to the pasteboard.| 2202e41f4b71Sopenharmony_ci 2203e41f4b71Sopenharmony_ci**Error codes** 2204e41f4b71Sopenharmony_ci 2205e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md) and [Pasteboard Error Codes](errorcode-pasteboard.md). 2206e41f4b71Sopenharmony_ci 2207e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 2208e41f4b71Sopenharmony_ci| -------- | -------- | 2209e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 2210e41f4b71Sopenharmony_ci| 12900005 | Request timed out. | 2211e41f4b71Sopenharmony_ci 2212e41f4b71Sopenharmony_ci**Example** 2213e41f4b71Sopenharmony_ci 2214e41f4b71Sopenharmony_ci```ts 2215e41f4b71Sopenharmony_cilet pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'hello'); 2216e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 2217e41f4b71Sopenharmony_citry { 2218e41f4b71Sopenharmony_ci systemPasteboard.setDataSync(pasteData); 2219e41f4b71Sopenharmony_ci console.info('Succeeded in setting PasteData.'); 2220e41f4b71Sopenharmony_ci} catch (err) { 2221e41f4b71Sopenharmony_ci console.error('Failed to set PasteData. Cause:' + err.message); 2222e41f4b71Sopenharmony_ci}; 2223e41f4b71Sopenharmony_ci``` 2224e41f4b71Sopenharmony_ci 2225e41f4b71Sopenharmony_ci### hasDataSync<sup>11+</sup> 2226e41f4b71Sopenharmony_ci 2227e41f4b71Sopenharmony_cihasDataSync(): boolean 2228e41f4b71Sopenharmony_ci 2229e41f4b71Sopenharmony_ciChecks whether the system pasteboard contains data. This API returns the result synchronously. 2230e41f4b71Sopenharmony_ci 2231e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 11. 2232e41f4b71Sopenharmony_ci 2233e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 2234e41f4b71Sopenharmony_ci 2235e41f4b71Sopenharmony_ci**Return value** 2236e41f4b71Sopenharmony_ci 2237e41f4b71Sopenharmony_ci| Type | Description | 2238e41f4b71Sopenharmony_ci| ------- | ----------------------------------------------------------------------- | 2239e41f4b71Sopenharmony_ci| boolean | Callback used to return the result. Returns **true** if the system pasteboard contains data; returns **false** otherwise.| 2240e41f4b71Sopenharmony_ci 2241e41f4b71Sopenharmony_ci**Error codes** 2242e41f4b71Sopenharmony_ci 2243e41f4b71Sopenharmony_ciFor details about the error codes, see [Pasteboard Error Codes](errorcode-pasteboard.md). 2244e41f4b71Sopenharmony_ci 2245e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 2246e41f4b71Sopenharmony_ci| -------- | -------- | 2247e41f4b71Sopenharmony_ci| 12900005 | Request timed out. | 2248e41f4b71Sopenharmony_ci 2249e41f4b71Sopenharmony_ci**Example** 2250e41f4b71Sopenharmony_ci 2251e41f4b71Sopenharmony_ci```ts 2252e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 2253e41f4b71Sopenharmony_citry { 2254e41f4b71Sopenharmony_ci let result: boolean = systemPasteboard.hasDataSync(); 2255e41f4b71Sopenharmony_ci console.info(`Succeeded in checking the PasteData. Result: ${result}`); 2256e41f4b71Sopenharmony_ci} catch (err) { 2257e41f4b71Sopenharmony_ci console.error('Failed to check the PasteData. Cause:' + err.message); 2258e41f4b71Sopenharmony_ci}; 2259e41f4b71Sopenharmony_ci``` 2260e41f4b71Sopenharmony_ci 2261e41f4b71Sopenharmony_ci### getUnifiedData<sup>12+</sup> 2262e41f4b71Sopenharmony_ci 2263e41f4b71Sopenharmony_cigetUnifiedData(): Promise<unifiedDataChannel.UnifiedData> 2264e41f4b71Sopenharmony_ci 2265e41f4b71Sopenharmony_ciObtains a **PasteData** object from the pasteboard. This API uses a promise to return the result. 2266e41f4b71Sopenharmony_ci 2267e41f4b71Sopenharmony_ci**Required permissions**: ohos.permission.READ_PASTEBOARD 2268e41f4b71Sopenharmony_ci 2269e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 12. 2270e41f4b71Sopenharmony_ci 2271e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 2272e41f4b71Sopenharmony_ci 2273e41f4b71Sopenharmony_ci**Return value** 2274e41f4b71Sopenharmony_ci 2275e41f4b71Sopenharmony_ci| Type| Description| 2276e41f4b71Sopenharmony_ci| -------- | -------- | 2277e41f4b71Sopenharmony_ci| Promise<[unifiedDataChannel.UnifiedData](../apis-arkdata/js-apis-data-unifiedDataChannel.md#unifieddata)> | Promise used to return the system pasteboard data.| 2278e41f4b71Sopenharmony_ci 2279e41f4b71Sopenharmony_ci**Error codes** 2280e41f4b71Sopenharmony_ci 2281e41f4b71Sopenharmony_ciFor details about the error codes, see [Pasteboard Error Codes](errorcode-pasteboard.md). 2282e41f4b71Sopenharmony_ci 2283e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 2284e41f4b71Sopenharmony_ci| -------- | -------- | 2285e41f4b71Sopenharmony_ci| 201 | Permission verification failed. The application does not have the permission required to call the API. | 2286e41f4b71Sopenharmony_ci| 12900003 | Another copy or paste operation is in progress. | 2287e41f4b71Sopenharmony_ci 2288e41f4b71Sopenharmony_ci**Example** 2289e41f4b71Sopenharmony_ci 2290e41f4b71Sopenharmony_ci```ts 2291e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 2292e41f4b71Sopenharmony_ciimport { unifiedDataChannel } from '@kit.ArkData'; 2293e41f4b71Sopenharmony_ciimport { uniformTypeDescriptor } from '@kit.ArkData'; 2294e41f4b71Sopenharmony_ci 2295e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 2296e41f4b71Sopenharmony_cisystemPasteboard.getUnifiedData().then((data) => { 2297e41f4b71Sopenharmony_ci let records: Array<unifiedDataChannel.UnifiedRecord> = data.getRecords(); 2298e41f4b71Sopenharmony_ci for (let j = 0; j < records.length; j++) { 2299e41f4b71Sopenharmony_ci if (records[j].getType() === uniformTypeDescriptor.UniformDataType.PLAIN_TEXT) { 2300e41f4b71Sopenharmony_ci let text = records[j] as unifiedDataChannel.PlainText; 2301e41f4b71Sopenharmony_ci console.info(`${j + 1}.${text.textContent}`); 2302e41f4b71Sopenharmony_ci } 2303e41f4b71Sopenharmony_ci } 2304e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => { 2305e41f4b71Sopenharmony_ci console.error('Failed to get UnifiedData. Cause: ' + err.message); 2306e41f4b71Sopenharmony_ci}); 2307e41f4b71Sopenharmony_ci``` 2308e41f4b71Sopenharmony_ci 2309e41f4b71Sopenharmony_ci### getUnifiedDataSync<sup>12+</sup> 2310e41f4b71Sopenharmony_ci 2311e41f4b71Sopenharmony_cigetUnifiedDataSync(): unifiedDataChannel.UnifiedData 2312e41f4b71Sopenharmony_ci 2313e41f4b71Sopenharmony_ciReads data in the system pasteboard. This API returns the result synchronously. 2314e41f4b71Sopenharmony_ci 2315e41f4b71Sopenharmony_ci**Required permissions**: ohos.permission.READ_PASTEBOARD 2316e41f4b71Sopenharmony_ci 2317e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 12. 2318e41f4b71Sopenharmony_ci 2319e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 2320e41f4b71Sopenharmony_ci 2321e41f4b71Sopenharmony_ci**Return value** 2322e41f4b71Sopenharmony_ci 2323e41f4b71Sopenharmony_ci| Type | Description | 2324e41f4b71Sopenharmony_ci| -------------------- | -------------------- | 2325e41f4b71Sopenharmony_ci| [unifiedDataChannel.UnifiedData](../apis-arkdata/js-apis-data-unifiedDataChannel.md#unifieddata) | Data in the system pasteboard.| 2326e41f4b71Sopenharmony_ci 2327e41f4b71Sopenharmony_ci**Error codes** 2328e41f4b71Sopenharmony_ci 2329e41f4b71Sopenharmony_ciFor details about the error codes, see [Pasteboard Error Codes](errorcode-pasteboard.md). 2330e41f4b71Sopenharmony_ci 2331e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 2332e41f4b71Sopenharmony_ci| -------- | -------- | 2333e41f4b71Sopenharmony_ci| 201 | Permission verification failed. The application does not have the permission required to call the API. | 2334e41f4b71Sopenharmony_ci| 12900005 | Request timed out. | 2335e41f4b71Sopenharmony_ci 2336e41f4b71Sopenharmony_ci**Example** 2337e41f4b71Sopenharmony_ci 2338e41f4b71Sopenharmony_ci```ts 2339e41f4b71Sopenharmony_ciimport { unifiedDataChannel } from '@kit.ArkData'; 2340e41f4b71Sopenharmony_ci 2341e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 2342e41f4b71Sopenharmony_citry { 2343e41f4b71Sopenharmony_ci let result: unifiedDataChannel.UnifiedData = systemPasteboard.getUnifiedDataSync(); 2344e41f4b71Sopenharmony_ci console.info('Succeeded in getting UnifiedData.'); 2345e41f4b71Sopenharmony_ci} catch (err) { 2346e41f4b71Sopenharmony_ci console.error('Failed to get UnifiedData. Cause:' + err.message); 2347e41f4b71Sopenharmony_ci}; 2348e41f4b71Sopenharmony_ci``` 2349e41f4b71Sopenharmony_ci 2350e41f4b71Sopenharmony_ci### setUnifiedData<sup>12+</sup> 2351e41f4b71Sopenharmony_ci 2352e41f4b71Sopenharmony_cisetUnifiedData(data: unifiedDataChannel.UnifiedData): Promise<void> 2353e41f4b71Sopenharmony_ci 2354e41f4b71Sopenharmony_ciWrites a **PasteData** object to the pasteboard. This API uses a promise to return the result. 2355e41f4b71Sopenharmony_ci 2356e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 2357e41f4b71Sopenharmony_ci 2358e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 12. 2359e41f4b71Sopenharmony_ci 2360e41f4b71Sopenharmony_ci**Parameters** 2361e41f4b71Sopenharmony_ci 2362e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 2363e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 2364e41f4b71Sopenharmony_ci| data | [unifiedDataChannel.UnifiedData](../apis-arkdata/js-apis-data-unifiedDataChannel.md#unifieddata) | Yes| Data to be written to the pasteboard.| 2365e41f4b71Sopenharmony_ci 2366e41f4b71Sopenharmony_ci**Return value** 2367e41f4b71Sopenharmony_ci 2368e41f4b71Sopenharmony_ci| Type| Description| 2369e41f4b71Sopenharmony_ci| -------- | -------- | 2370e41f4b71Sopenharmony_ci| Promise<void> | Promise that returns no value.| 2371e41f4b71Sopenharmony_ci 2372e41f4b71Sopenharmony_ci**Error codes** 2373e41f4b71Sopenharmony_ci 2374e41f4b71Sopenharmony_ciFor details about the error codes, see [Pasteboard Error Codes](errorcode-pasteboard.md). 2375e41f4b71Sopenharmony_ci 2376e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 2377e41f4b71Sopenharmony_ci| -------- | -------- | 2378e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 2379e41f4b71Sopenharmony_ci| 12900003 | Another copy or paste operation is in progress. | 2380e41f4b71Sopenharmony_ci| 12900004 | Replication is prohibited. | 2381e41f4b71Sopenharmony_ci 2382e41f4b71Sopenharmony_ci**Example** 2383e41f4b71Sopenharmony_ci 2384e41f4b71Sopenharmony_ci```ts 2385e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 2386e41f4b71Sopenharmony_ciimport { unifiedDataChannel } from '@kit.ArkData'; 2387e41f4b71Sopenharmony_ci 2388e41f4b71Sopenharmony_cilet plainTextData = new unifiedDataChannel.UnifiedData(); 2389e41f4b71Sopenharmony_cilet plainText = new unifiedDataChannel.PlainText(); 2390e41f4b71Sopenharmony_ciplainText.details = { 2391e41f4b71Sopenharmony_ci Key: 'delayPlaintext', 2392e41f4b71Sopenharmony_ci Value: 'delayPlaintext', 2393e41f4b71Sopenharmony_ci}; 2394e41f4b71Sopenharmony_ciplainText.textContent = 'delayTextContent'; 2395e41f4b71Sopenharmony_ciplainText.abstract = 'delayTextContent'; 2396e41f4b71Sopenharmony_ciplainTextData.addRecord(plainText); 2397e41f4b71Sopenharmony_ci 2398e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 2399e41f4b71Sopenharmony_cisystemPasteboard.setUnifiedData(plainTextData).then((data: void) => { 2400e41f4b71Sopenharmony_ci console.info('Succeeded in setting UnifiedData.'); 2401e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => { 2402e41f4b71Sopenharmony_ci console.error('Failed to set UnifiedData. Cause: ' + err.message); 2403e41f4b71Sopenharmony_ci}); 2404e41f4b71Sopenharmony_ci``` 2405e41f4b71Sopenharmony_ci 2406e41f4b71Sopenharmony_ci### setUnifiedDataSync<sup>12+</sup> 2407e41f4b71Sopenharmony_ci 2408e41f4b71Sopenharmony_cisetUnifiedDataSync(data: unifiedDataChannel.UnifiedData): void 2409e41f4b71Sopenharmony_ci 2410e41f4b71Sopenharmony_ciWrites data to the system pasteboard. This API returns the result synchronously. 2411e41f4b71Sopenharmony_ci 2412e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 2413e41f4b71Sopenharmony_ci 2414e41f4b71Sopenharmony_ci**Atomic service API**: This API can be used in atomic services since API version 12. 2415e41f4b71Sopenharmony_ci 2416e41f4b71Sopenharmony_ci**Parameters** 2417e41f4b71Sopenharmony_ci 2418e41f4b71Sopenharmony_ci| Name| Type | Mandatory| Description | 2419e41f4b71Sopenharmony_ci| ------ | ----------- | ---- | ---------------- | 2420e41f4b71Sopenharmony_ci| data | [unifiedDataChannel.UnifiedData](../apis-arkdata/js-apis-data-unifiedDataChannel.md#unifieddata) | Yes | Data to be written to the pasteboard.| 2421e41f4b71Sopenharmony_ci 2422e41f4b71Sopenharmony_ci**Error codes** 2423e41f4b71Sopenharmony_ci 2424e41f4b71Sopenharmony_ciFor details about the error codes, see [Pasteboard Error Codes](errorcode-pasteboard.md). 2425e41f4b71Sopenharmony_ci 2426e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 2427e41f4b71Sopenharmony_ci| -------- | -------- | 2428e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 2429e41f4b71Sopenharmony_ci| 12900005 | Request timed out. | 2430e41f4b71Sopenharmony_ci 2431e41f4b71Sopenharmony_ci**Example** 2432e41f4b71Sopenharmony_ci 2433e41f4b71Sopenharmony_ci```ts 2434e41f4b71Sopenharmony_ciimport { unifiedDataChannel } from '@kit.ArkData'; 2435e41f4b71Sopenharmony_ci 2436e41f4b71Sopenharmony_cilet plainTextData = new unifiedDataChannel.UnifiedData(); 2437e41f4b71Sopenharmony_cilet plainText = new unifiedDataChannel.PlainText(); 2438e41f4b71Sopenharmony_ciplainText.details = { 2439e41f4b71Sopenharmony_ci Key: 'delayPlaintext', 2440e41f4b71Sopenharmony_ci Value: 'delayPlaintext', 2441e41f4b71Sopenharmony_ci}; 2442e41f4b71Sopenharmony_ciplainText.textContent = 'delayTextContent'; 2443e41f4b71Sopenharmony_ciplainText.abstract = 'delayTextContent'; 2444e41f4b71Sopenharmony_ciplainTextData.addRecord(plainText); 2445e41f4b71Sopenharmony_ci 2446e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 2447e41f4b71Sopenharmony_citry { 2448e41f4b71Sopenharmony_ci systemPasteboard.setUnifiedDataSync(plainTextData); 2449e41f4b71Sopenharmony_ci console.info('Succeeded in setting UnifiedData.'); 2450e41f4b71Sopenharmony_ci} catch (err) { 2451e41f4b71Sopenharmony_ci console.error('Failed to set UnifiedData. Cause:' + err.message); 2452e41f4b71Sopenharmony_ci}; 2453e41f4b71Sopenharmony_ci``` 2454e41f4b71Sopenharmony_ci### Pattern<sup>13+</sup> 2455e41f4b71Sopenharmony_ciDescribes the modes supported by the pasteboard. 2456e41f4b71Sopenharmony_ci 2457e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 2458e41f4b71Sopenharmony_ci 2459e41f4b71Sopenharmony_ci| Name | Value | Description | 2460e41f4b71Sopenharmony_ci| ---------------------------------- | --- | ------------------------------------------------------------------------------------- | 2461e41f4b71Sopenharmony_ci| URL | 0 | URL. | 2462e41f4b71Sopenharmony_ci| NUMBER | 1 | Number. | 2463e41f4b71Sopenharmony_ci| EMAIL_ADDRESS | 2 | Email address.| 2464e41f4b71Sopenharmony_ci 2465e41f4b71Sopenharmony_ci### detectPatterns<sup>13+</sup> 2466e41f4b71Sopenharmony_ci 2467e41f4b71Sopenharmony_cidetectPatterns(patterns: Array<Pattern>): Promise<Array<Pattern>> 2468e41f4b71Sopenharmony_ci 2469e41f4b71Sopenharmony_ciDetects patterns on the **local** pasteboard. This API uses a promise to return the result. 2470e41f4b71Sopenharmony_ci 2471e41f4b71Sopenharmony_ci**System capability**: SystemCapability.MiscServices.Pasteboard 2472e41f4b71Sopenharmony_ci 2473e41f4b71Sopenharmony_ci**Parameters** 2474e41f4b71Sopenharmony_ci 2475e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 2476e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 2477e41f4b71Sopenharmony_ci| patterns | [Array<Pattern>](#pattern13) | Yes| Pattern to be detected in the pasteboard.| 2478e41f4b71Sopenharmony_ci 2479e41f4b71Sopenharmony_ci**Return value** 2480e41f4b71Sopenharmony_ci 2481e41f4b71Sopenharmony_ci| Type| Description| 2482e41f4b71Sopenharmony_ci| -------- | -------- | 2483e41f4b71Sopenharmony_ci| Promise<Array<Pattern>> | Promise used to return the detected pattern.| 2484e41f4b71Sopenharmony_ci 2485e41f4b71Sopenharmony_ci**Error codes** 2486e41f4b71Sopenharmony_ci 2487e41f4b71Sopenharmony_ciFor details about the error codes, see [Universal Error Codes](../errorcode-universal.md). 2488e41f4b71Sopenharmony_ci 2489e41f4b71Sopenharmony_ci| Error Code ID| Error Message| 2490e41f4b71Sopenharmony_ci| -------- | -------- | 2491e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 2492e41f4b71Sopenharmony_ci 2493e41f4b71Sopenharmony_ci**Example** 2494e41f4b71Sopenharmony_ci 2495e41f4b71Sopenharmony_ci```ts 2496e41f4b71Sopenharmony_ciimport { pasteboard } from '@kit.BasicServicesKit' 2497e41f4b71Sopenharmony_ci 2498e41f4b71Sopenharmony_cilet systemPasteboard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard(); 2499e41f4b71Sopenharmony_cilet patterns: Array<pasteboard.Pattern> = [pasteboard.Pattern.URL, pasteboard.Pattern.EMAIL_ADDRESS]; 2500e41f4b71Sopenharmony_ci 2501e41f4b71Sopenharmony_cisystemPasteboard.detectPatterns(patterns).then((data: Array<pasteboard.Pattern>) => { 2502e41f4b71Sopenharmony_ci if (patterns.sort().join('')==data.sort().join('')) { 2503e41f4b71Sopenharmony_ci console.info('All needed patterns detected, next get data'); 2504e41f4b71Sopenharmony_ci try { 2505e41f4b71Sopenharmony_ci let result: pasteboard.PasteData = systemPasteboard.getDataSync(); 2506e41f4b71Sopenharmony_ci console.info('Succeeded in getting PasteData.'); 2507e41f4b71Sopenharmony_ci } catch (err) { 2508e41f4b71Sopenharmony_ci console.error('Failed to get PasteData. Cause:' + err.message); 2509e41f4b71Sopenharmony_ci }; 2510e41f4b71Sopenharmony_ci } else { 2511e41f4b71Sopenharmony_ci console.info("Not all needed patterns detected, no need to get data."); 2512e41f4b71Sopenharmony_ci } 2513e41f4b71Sopenharmony_ci}); 2514e41f4b71Sopenharmony_ci``` 2515