1# 标准NFC 2 3本模块主要用于操作及管理NFC。 4 5>  **说明:** 6> 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 7 8 9## **导入模块** 10 11``` 12import controller from '@ohos.nfc.controller'; 13``` 14 15 16## controller.isNfcAvailable 17 18isNfcAvailable(): boolean 19 20查询是否有NFC功能 21 22**返回值:** 23 24| **类型** | **说明** | 25| -------- | -------- | 26| boolean | true:有NFC功能, false:无NFC功能。 | 27 28 29## controller.openNfc 30 31openNfc(): boolean 32 33打开NFC开关。 34 35**需要权限**:ohos.permission.MANAGE_SECURE_SETTINGS 36 37**系统能力**:SystemCapability.Communication.NFC 38 39**返回值:** 40 41| **类型** | **说明** | 42| -------- | -------- | 43| boolean | true:打开NFC成功, false:打开NFC失败。 | 44 45## controller.closeNfc 46 47closeNfc(): boolean 48 49关闭NFC开关。 50 51**需要权限**:ohos.permission.MANAGE_SECURE_SETTINGS 52 53**系统能力**:SystemCapability.Communication.NFC 54 55**返回值:** 56 57| **类型** | **说明** | 58| -------- | ------------------------------------------- | 59| boolean | true:关闭NFC成功, false:关闭NFC失败。 | 60 61## controller.isNfcOpen 62 63isNfcOpen(): boolean 64 65查询NFC是否打开。 66 67**系统能力**:SystemCapability.Communication.NFC 68 69**返回值:** 70 71| **类型** | **说明** | 72| -------- | ----------------------------------- | 73| boolean | true:NFC打开, false:NFC关闭。 | 74 75## controller.getNfcState 76 77getNfcState(): NfcState 78 79查询NFC状态。 80 81**系统能力**:SystemCapability.Communication.NFC 82 83**返回值:** 84 85| **类型** | **说明** | 86| -------- | ---------------------- | 87| NfcState | 详细请见NfcState枚举值 | 88 89## controller.on('nfcStateChange') 90 91on(type: "nfcStateChange", callback: Callback<NfcState>): void 92 93注册NFC开关状态事件。 94 95**系统能力**:SystemCapability.Communication.NFC 96 97**参数** 98 99 | **参数名** | **类型** | **必填** | **说明** | 100 | -------- | -------- | -------- | -------- | 101 | type | string | 是 | 固定填"nfcStateChange"字符串 | 102 | callback | Callback<NfcState> | 是 | 状态改变回调函数。 | 103 104 105 106## controller.off('nfcStateChange') 107 108off(type: "nfcStateChange", callback?: Callback<NfcState>): void 109 110取消NFC开关状态事件的注册。 111 112**系统能力**:SystemCapability.Communication.NFC 113 114**参数** 115 116 | **参数名** | **类型** | **必填** | **说明** | 117 | -------- | -------- | -------- | -------- | 118 | type | string | 是 | 固定填"nfcStateChange"字符串 | 119| callback | Callback<NfcState> | 否 | 状态改变回调函数。如果callback不填,将“去注册”该事件关联的所有回调函数。 | 120 121**示例** 122 123 ```js 124 import nfcController from '@ohos.nfcController'; 125 126 var NFC_STATE_NOTIFY = "nfcStateChange"; 127 128 var recvNfcStateNotifyFunc = result => { 129 console.info("nfc state receive state: " + result); 130 } 131 132 // 注册事件 133 nfcController.on(NFC_STATE_NOTIFY, recvNfcStateNotifyFunc); 134 135 // 解注册事件 136 nfcController.off(NFC_STATE_NOTIFY, recvNfcStateNotifyFunc); 137 ``` 138 139## NfcState 140 141表示NFC状态的枚举。 142 143| 名称 | 默认值 | 说明 | 144| -------- | -------- | -------- | 145| STATE_OFF | 1 | NFC关闭状态 | 146| STATE_TURNING_ON | 2 | NFC正在打开状态 | 147| STATE_ON | 3 | NFC打开状态 | 148| STATE_TURNING_OFF | 4 | NFC正在关闭状态 | 149