• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 标准NFC
2
3本模块主要用于操作及管理NFC。
4
5> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
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