• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# IWififenceInterface
2
3
4## 概述
5
6定义对Wi-Fi围栏模块进行基本操作的接口。
7
8接口包含注册回调函数,取消注册回调函数,添加Wi-Fi围栏,删除Wi-Fi围栏,获取Wi-Fi围栏状态,获取Wi-Fi围栏使用信息的功能。
9
10**起始版本:** 4.0
11
12**相关模块:**[HdiLpfenceWififence](_hdi_lpfence_wififence.md)
13
14
15## 汇总
16
17
18### Public 成员函数
19
20| 名称 | 描述 |
21| -------- | -------- |
22| [RegisterWififenceCallback](#registerwififencecallback) ([in] [IWififenceCallback](interface_i_wififence_callback.md) callbackObj) | 注册回调函数。 |
23| [UnregisterWififenceCallback](#unregisterwififencecallback) ([in] [IWififenceCallback](interface_i_wififence_callback.md) callbackObj) | 取消注册回调函数。 |
24| [AddWififences](#addwififences) ([in] struct [WififenceRequest](_wififence_request.md)[] wififence) | 添加Wi-Fi围栏。 |
25| [RemoveWififences](#removewififences) ([in] int[] wififenceId) | 删除Wi-Fi围栏。 |
26| [GetWififenceStatus](#getwififencestatus) ([in] int wififenceId) | 获取设备与一个Wi-Fi围栏的状态关系。 |
27| [GetWififenceSize](#getwififencesize) () | 获取Wi-Fi围栏使用信息 |
28
29
30## 成员函数说明
31
32
33### AddWififences()
34
35```
36IWififenceInterface::AddWififences ([in] struct WififenceRequest[] wififence)
37```
38
39**描述**
40
41添加Wi-Fi围栏。
42
43支持一次添加多个Wi-Fi围栏,一个Wi-Fi围栏包含多组MAC地址信息。
44
45**起始版本:** 4.0
46
47**参数:**
48
49| 名称 | 描述 |
50| -------- | -------- |
51| wififence | 添加的Wi-Fi围栏信息。详见[WififenceRequest](_wififence_request.md)。 |
52
53**返回:**
54
55如果添加成功,则返回0。
56
57如果添加失败,则返回负值。
58
59
60### GetWififenceSize()
61
62```
63IWififenceInterface::GetWififenceSize ()
64```
65
66**描述**
67
68获取Wi-Fi围栏使用信息
69
70查看当前设备支持添加的Wi-Fi围栏最大个数和已添加的Wi-Fi围栏个数。通过回调函数上报通知,详见[OnGetWififenceSizeCb](interface_i_wififence_callback.md#ongetwififencesizecb)。
71
72**起始版本:** 4.0
73
74**返回:**
75
76如果调用成功,则返回0。
77
78如果调用失败,则返回负值。
79
80
81### GetWififenceStatus()
82
83```
84IWififenceInterface::GetWififenceStatus ([in] int wififenceId)
85```
86
87**描述**
88
89获取设备与一个Wi-Fi围栏的状态关系。
90
91设备与Wi-Fi围栏的状态关系详见[WififenceTransition](_hdi_lpfence_wififence.md#wififencetransition)定义。
92
93**起始版本:** 4.0
94
95**参数:**
96
97| 名称 | 描述 |
98| -------- | -------- |
99| wififenceId | Wi-Fi围栏ID号。 |
100
101**返回:**
102
103返回位置关系。详见[WififenceTransition](_hdi_lpfence_wififence.md#wififencetransition)定义。
104
105如果调用失败,则返回负值。
106
107
108### RegisterWififenceCallback()
109
110```
111IWififenceInterface::RegisterWififenceCallback ([in] IWififenceCallback callbackObj)
112```
113
114**描述**
115
116注册回调函数。
117
118用户在开启Wi-Fi围栏功能前,需要先注册该回调函数。当Wi-Fi围栏状态发生变化时,会通过回调函数进行上报。
119
120**起始版本:** 4.0
121
122**参数:**
123
124| 名称 | 描述 |
125| -------- | -------- |
126| callbackObj | 要注册的回调函数,只需成功订阅一次,无需重复订阅。详见[IWififenceCallback](interface_i_wififence_callback.md)。 |
127
128**返回:**
129
130如果注册回调函数成功,则返回0。
131
132如果注册回调函数失败,则返回负值。
133
134
135### RemoveWififences()
136
137```
138IWififenceInterface::RemoveWififences ([in] int[] wififenceId)
139```
140
141**描述**
142
143删除Wi-Fi围栏。
144
145支持一次删除多个Wi-Fi围栏。
146
147**起始版本:** 4.0
148
149**参数:**
150
151| 名称 | 描述 |
152| -------- | -------- |
153| wififenceId | Wi-Fi围栏ID号。详见[WififenceRequest](_wififence_request.md)。 |
154
155**返回:**
156
157如果删除成功,则返回0。
158
159如果删除失败,则返回负值。
160
161
162### UnregisterWififenceCallback()
163
164```
165IWififenceInterface::UnregisterWififenceCallback ([in] IWififenceCallback callbackObj)
166```
167
168**描述**
169
170取消注册回调函数。
171
172取消之前注册的回调函数。当不需要使用Wi-Fi围栏功能,或需要更换回调函数时,需要取消注册回调函数。
173
174**起始版本:** 4.0
175
176**参数:**
177
178| 名称 | 描述 |
179| -------- | -------- |
180| callbackObj | 要取消注册的回调函数,只需成功取消订阅一次,无需重复取消订阅。详见[IWififenceCallback](interface_i_wififence_callback.md)。 |
181
182**返回:**
183
184如果取消注册回调函数成功,则返回0。
185
186如果取消注册回调函数失败,则返回负值。
187