1# @ohos.app.ability.PrintExtensionAbility (PrintExtensionAbility) 2 3<!--Kit: Basic Services Kit--> 4<!--Subsystem: Print--> 5<!--Owner: @guoshengbang--> 6<!--Designer: @gcw_4D6e0BBd--> 7<!--Tester: @guoshengbang--> 8<!--Adviser: @RayShih--> 9 10The **PrintExtensionAbility** module provides operation APIs of the print extension ability. 11 12> **NOTE** 13> The initial APIs of this module are supported since API version 14. Newly added APIs will be marked with a superscript to indicate their earliest API version. 14> The APIs of this module can be used only in the stage model. 15 16## Modules to Import 17 18```ts 19import { PrintExtensionAbility } from '@kit.BasicServicesKit'; 20``` 21 22## PrintExtensionAbility.onCreate 23 24onCreate(want: Want): void 25 26Called to initialize the print extension when the system connects to the extension for the first time. 27 28**System capability**: SystemCapability.Print.PrintFramework 29 30**Parameters** 31| **Name**| **Type** | **Mandatory**| **Description**| 32| -------- | -------- | -------- | -------- | 33| want | Want | Yes| Parameters required for invoking the print page.| 34 35**Example** 36 37```ts 38import { PrintExtensionAbility } from '@kit.BasicServicesKit'; 39import Want from '@ohos.app.ability.Want'; 40 41export default class HWPrintExtension extends PrintExtensionAbility { 42 onCreate(want: Want): void { 43 console.log('onCreate'); 44 // ... 45 } 46} 47``` 48 49## PrintExtensionAbility.onStartDiscoverPrinter 50 51onStartDiscoverPrinter(): void 52 53Called when an attempt to discover printers starts. 54 55**System capability**: SystemCapability.Print.PrintFramework 56 57**Example** 58 59```ts 60import { PrintExtensionAbility } from '@kit.BasicServicesKit'; 61 62export default class HWPrintExtension extends PrintExtensionAbility { 63 onStartDiscoverPrinter(): void { 64 console.log('onStartDiscoverPrinter enter'); 65 // ... 66 } 67} 68``` 69 70## PrintExtensionAbility.onStopDiscoverPrinter 71 72onStopDiscoverPrinter(): void 73 74Called when the attempt to discover printers stops. 75 76**System capability**: SystemCapability.Print.PrintFramework 77 78**Example** 79 80```ts 81import { PrintExtensionAbility } from '@kit.BasicServicesKit'; 82 83export default class HWPrintExtension extends PrintExtensionAbility { 84 onStopDiscoverPrinter(): void { 85 console.log('onStopDiscoverPrinter enter'); 86 // ... 87 } 88} 89``` 90 91## PrintExtensionAbility.onConnectPrinter 92 93onConnectPrinter(printerId: number): void 94 95Called when the device connects to the specified printer. 96 97**System capability**: SystemCapability.Print.PrintFramework 98 99**Parameters** 100| **Name**| **Type** | **Mandatory**| **Description**| 101| -------- | -------- | -------- | -------- | 102| printerId | number | Yes| Printer ID.| 103 104**Example** 105 106```ts 107import { PrintExtensionAbility } from '@kit.BasicServicesKit'; 108 109export default class HWPrintExtension extends PrintExtensionAbility { 110 onConnectPrinter(printerId: number): void { 111 console.log('onConnectPrinter enter'); 112 // ... 113 } 114} 115``` 116 117## PrintExtensionAbility.onDisconnectPrinter 118 119onDisconnectPrinter(printerId: number): void 120 121Called when the device disconnects from the specified printer. 122 123**System capability**: SystemCapability.Print.PrintFramework 124 125**Parameters** 126| **Name**| **Type** | **Mandatory**| **Description**| 127| -------- | -------- | -------- | -------- | 128| printerId | number | Yes| Printer ID.| 129 130**Example** 131 132```ts 133import { PrintExtensionAbility } from '@kit.BasicServicesKit'; 134 135export default class HWPrintExtension extends PrintExtensionAbility { 136 onDisconnectPrinter(printerId: number): void { 137 console.log('onDisconnectPrinter enter'); 138 // ... 139 } 140} 141``` 142 143## PrintExtensionAbility.onDestroy 144 145onDestroy(): void 146 147Called when the print extension ability is stopped. 148 149**System capability**: SystemCapability.Print.PrintFramework 150 151**Example** 152 153```ts 154import { PrintExtensionAbility } from '@kit.BasicServicesKit'; 155 156export default class HWPrintExtension extends PrintExtensionAbility { 157 onDestroy(): void { 158 console.log('onDestroy'); 159 } 160} 161``` 162