1# 有源标签 2 3>  **说明:** 4> 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 5 6 7## 导入模块 8 9``` 10import connectedTag from '@ohos.connectedTag'; 11``` 12 13 14## connectedTag.init 15 16init(): boolean 17 18初始化有源标签芯片。 19 20**需要权限**:ohos.permission.NFC_TAG 21 22**系统能力**:SystemCapability.Communication.ConnectedTag 23 24- 返回值: 25 | **类型** | **说明** | 26 | -------- | -------- | 27 | boolean | true:初始化成功, false:初始化失败。 | 28 29 30## connectedTag.uninit 31 32uninit(): boolean 33 34卸载有源标签芯片资源。 35 36**需要权限**:ohos.permission.NFC_TAG 37 38**系统能力**:SystemCapability.Communication.ConnectedTag 39 40- 返回值: 41 | **类型** | **说明** | 42 | -------- | -------- | 43 | boolean | true:卸载操作成功, false:卸载操作失败。 | 44 45 46## connectedTag.readNdefTag 47 48readNdefTag(): Promise<string> 49 50读取有源标签内容,使用promise方式作为异步方法。 51 52**需要权限**:ohos.permission.NFC_TAG 53 54**系统能力**:SystemCapability.Communication.ConnectedTag 55 56- 返回值: 57 | **类型** | **说明** | 58 | -------- | -------- | 59 | Promise<string> | 返回读取有源标签内容。 | 60 61- 示例 62 ``` 63 import connectedTag from '@ohos.connectedTag'; 64 65 connectedTag.readNdefTag().then(result => { 66 console.log("promise recv ndef response: " + result); 67 }); 68 ``` 69 70## connectedTag.readNdefTag 71 72readNdefTag(callback: AsyncCallback<string>): void 73 74读取有源标签内容,使用callback方式作为异步方法。 75 76**需要权限**:ohos.permission.NFC_TAG 77 78**系统能力**:SystemCapability.Communication.ConnectedTag 79 80- 参数 81 | **参数名** | **类型** | **必填** | **说明** | 82 | -------- | -------- | -------- | -------- | 83 | callback | AsyncCallback<string> | 是 | 读取有源标签内容回调函数。 | 84 85- 示例 86 ``` 87 import connectedTag from '@ohos.connectedTag'; 88 89 connectedTag.readNdefTag(result => { 90 console.log("callback recv ndef response: " + result); 91 }); 92 ``` 93 94## connectedTag.writeNdefTag 95 96writeNdefTag(data: string): Promise<void> 97 98写入内容到有源标签,使用promise方式作为异步方法。 99 100**需要权限**:ohos.permission.NFC_TAG 101 102**系统能力**:SystemCapability.Communication.ConnectedTag 103 104- 参数 105 | **参数名** | **类型** | **必填** | **说明** | 106 | -------- | -------- | -------- | -------- | 107 | data | string | 是 | 有源标签内容, 长度最大是1024个字节。 | 108 109- 返回值: 110 | **类型** | **说明** | 111 | -------- | -------- | 112 | Promise<void> | 无返回值。 | 113 114- 示例 115 ``` 116 import connectedTag from '@ohos.connectedTag'; 117 118 writeNdefTag.write("010203") 119 .then((value) => { 120 // 事件写入正常 121 console.log(`success to write event: ${value}`); 122 }).catch((err) => { 123 // 事件写入异常 124 console.error(`failed to write event because ${err.code}`); 125 }); 126 ``` 127 128## connectedTag.writeNdefTag 129 130writeNdefTag(data: string, callback: AsyncCallback<string>): void 131 132写入内容到有源标签,使用callback方式作为异步方法。 133 134**需要权限**:ohos.permission.NFC_TAG 135 136**系统能力**:SystemCapability.Communication.ConnectedTag 137 138- 参数 139 | **参数名** | **类型** | **必填** | **说明** | 140 | -------- | -------- | -------- | -------- | 141 | data | string | 是 | 有源标签内容, 长度最大是1024个字节。 | 142 | callback | AsyncCallback<string> | 是 | 读取有源标签内容回调函数。 | 143 144- 示例 145 ``` 146 import connectedTag from '@ohos.connectedTag'; 147 148 connectedTag.writeNdefTag("010203", (err, value) => { 149 if (err) { 150 // 事件写入异常 151 console.error(`failed to write event because ${err.code}`); 152 return; 153 } 154 155 // 事件写入正常 156 console.log(`success to write event: ${value}`); 157 }); 158 ``` 159 160## connectedTag.on('notify') 161 162on(type: "notify", callback: Callback<number>): void 163 164注册NFC场强状态事件。 165 166**需要权限**:ohos.permission.NFC_TAG 167 168**系统能力**:SystemCapability.Communication.ConnectedTag 169 170- 参数 171 | **参数名** | **类型** | **必填** | **说明** | 172 | -------- | -------- | -------- | -------- | 173 | type | string | 是 | 固定填"notify"字符串 | 174 | callback | Callback<number> | 是 | 状态改变回调函数。 | 175 176- 状态改变事件的枚举。 177 | **枚举值** | **说明** | 178 | -------- | -------- | 179 | 0 | NFC离场事件 | 180 | 1 | NFC进场事件 | 181 182 183## connectedTag.off('notify') 184 185off(type: "notify", callback?: Callback<number>): void 186 187取消NFC场强状态事件的注册。 188 189**需要权限**:ohos.permission.NFC_TAG 190 191**系统能力**:SystemCapability.Communication.ConnectedTag 192 193- 参数 194 | **参数名** | **类型** | **必填** | **说明** | 195 | -------- | -------- | -------- | -------- | 196 | type | string | 是 | 固定填"notify"字符串 | 197 | callback | Callback<number> | 否 | 状态改变回调函数。如果callback不填,将“去注册”该事件关联的所有回调函数。 | 198 199- 示例 200 ``` 201 import connectedTag from '@ohos.connectedTag'; 202 203 var NFC_RF_NOTIFY = "notify"; 204 205 var recvNfcRfNotifyFunc = result => { 206 console.info("nfc rf receive state: " + result); 207 } 208 209 // Register event 210 connectedTag.on(NFC_RF_NOTIFY, recvNfcRfNotifyFunc); 211 212 // Unregister event 213 connectedTag.off(NFC_RF_NOTIFY, recvNfcRfNotifyFunc); 214 ``` 215 216## NfcRfType 217 218表示NFC场强状态的枚举。 219 220| 名称 | 默认值 | 说明 | 221| -------- | -------- | -------- | 222| NFC_RF_LEAVE | 0 | NFC离场事件 | 223| NFC_RF_ENTER | 1 | NFC进场事件 | 224