1# HdiLpfenceGeofence
2
3
4## 概述
5
6为低功耗围栏服务提供地理围栏的API。
7
8本模块接口提供添加圆形和多边形地理围栏,删除地理围栏,获取地理围栏状态信息,获取设备地理位置等功能。本模块可在AP休眠状态下持续工作。 应用场景:判断用户设备是否达到某个精确地理位置区域,从而进行一些后续服务,如门禁卡的切换、定制消息的提醒等。
9
10**起始版本:** 4.0
11
12
13## 汇总
14
15
16### 文件
17
18| 名称 | 描述 |
19| -------- | -------- |
20| [GeofenceTypes.idl](lpfence_geofence_types_8idl.md) | 定义地理围栏使用的数据类型。 |
21| [IGeofenceCallback.idl](lpfence_i_geofence_callback_8idl.md) | 定义地理围栏模块回调接口。 |
22| [IGeofenceIntf.idl](lpfence_i_geofence_intf_8idl.md) | 声明基站围栏模块提供的API,用于添加多种地理围栏,删除地理围栏,获取地理围栏状态信息,获取设备地理位置,下发基站离线数据库。 |
23
24
25### 类
26
27| 名称 | 描述 |
28| -------- | -------- |
29| struct  [Point](lpfence_point.md) | 定义位置坐标的数据结构。 |
30| struct  [GeofenceCircleRequest](lpfence_geofence_circle_request.md) | 定义添加圆形地理围栏的数据结构。 |
31| struct  [GeofencePolygonRequest](lpfence_geofence_polygon_request.md) | 定义添加多边形地理围栏的数据结构。 |
32| struct  [GeofenceResult](lpfence_geofence_result.md) | 定义添加或删除地理围栏执行结果的数据结构。 |
33| struct  [OfflineDb](lpfence_offline_db.md) | 定义下发基站离线数据库的数据结构。 |
34| struct  [GeoLocationInfo](lpfence_geo_location_info.md) | 定义设备具体位置信息的数据结构。 |
35| struct  [GeofenceSize](lpfence_geofence_size.md) | 定义地理围栏使用信息的数据结构。 |
36| struct  [CurrentCell](lpfence_current_cell.md) | 定义设备驻留的基站主区信息的数据结构。 |
37| struct  [NeighborCell](lpfence_neighbor_cell.md) | 定义设备驻留的基站邻区信息的数据结构。 |
38| struct  [GeofenceCellInfo](lpfence_geofence_cell_info.md) | 定义设备驻留的基站小区信息的数据结构。 |
39| struct  [RequestCellDb](lpfence_request_cell_db.md) | 定义请求基站离线数据库数据的数据结构。 |
40| interface  [IGeofenceCallback](lpfence_interface_i_geofence_callback.md) | 定义地理围栏模块的回调函数 |
41| interface  [IGeofenceInterface](lpfence_interface_i_geofence_interface.md) | 定义对地理围栏模块进行基本操作的接口。 |
42
43
44### 枚举
45
46| 名称 | 描述 |
47| -------- | -------- |
48| [GeofenceTransition](#geofencetransition) {<br/>GEOFENCE_TRANSITION_ENTERED = (1 &lt;&lt; 0) , GEOFENCE_TRANSITION_EXITED = (1 &lt;&lt; 1) , GEOFENCE_TRANSITION_UNCERTAIN = (1 &lt;&lt; 2) , GEOFENCE_TRANSITION_DWELL = (1 &lt;&lt; 3) , GEOFENCE_TRANSITION_INDOOR = (1 &lt;&lt; 4) , GEOFENCE_TRANSITION_OUTDOOR = (1 &lt;&lt; 5)<br/>} | 枚举可关注的地理围栏状态事件。 |
49| [GeofenceAttribute](#geofenceattribute) { GEOFENCE_ATTRI_COORDINATE_WGS84 = 16 } | 枚举地理围栏支持的设置项。 |
50| [GeofenceAccuracy](#geofenceaccuracy) { ACCURACY_FINE = 1 , ACCURACY_BALANCE = 2 , ACCURACY_COARSE = 3 } | 枚举地理围栏支持的精度模式。 |
51| [GeofenceCellType](#geofencecelltype) { GEOFENCE_CELL_G4 = 0 , GEOFENCE_CELL_NR = 1 } | 枚举移动通信技术代。 |
52| [GeofenceLocSource](#geofencelocsource) {<br/>GEOFENCE_GNSS = 1 , GEOFENCE_WIFI = 2 , GEOFENCE_SENSOR = 4 , GEOFENCE_CELL = 8 , GEOFENCE_BT = 16<br/>} | 枚举位置信息来源。 |
53
54
55## 枚举类型说明
56
57
58### GeofenceAccuracy
59
60```
61enum GeofenceAccuracy
62```
63
64**描述**
65
66
67枚举地理围栏支持的精度模式。
68
69**起始版本:** 4.0
70
71| 枚举值 | 描述 |
72| -------- | -------- |
73| ACCURACY_FINE | 高精度模式,GNSS模块接收GPS定位信号频率为1秒1次,功耗较高。 |
74| ACCURACY_BALANCE | 中精度模式,GNSS模块接收GPS定位信号频率为60秒1次,功耗较低。 |
75| ACCURACY_COARSE | 低精度模式,只使用基站定位,不依赖GNSS模块。 |
76
77
78### GeofenceAttribute
79
80```
81enum GeofenceAttribute
82```
83
84**描述**
85
86
87枚举地理围栏支持的设置项。
88
89**起始版本:** 4.0
90
91| 枚举值 | 描述 |
92| -------- | -------- |
93| GEOFENCE_ATTRI_COORDINATE_WGS84 | 地理位置使用WGS-84地心坐标系。 |
94
95
96### GeofenceCellType
97
98```
99enum GeofenceCellType
100```
101
102**描述**
103
104
105枚举移动通信技术代。
106
107**起始版本:** 4.0
108
109| 枚举值 | 描述 |
110| -------- | -------- |
111| GEOFENCE_CELL_G4 | 第2、3、4代移动通信技术 |
112| GEOFENCE_CELL_NR | 第5代移动通信技术 |
113
114
115### GeofenceLocSource
116
117```
118enum GeofenceLocSource
119```
120
121**描述**
122
123
124枚举位置信息来源。
125
126**起始版本:** 4.0
127
128| 枚举值 | 描述 |
129| -------- | -------- |
130| GEOFENCE_GNSS | 位置信息来源于GNSS模块 |
131| GEOFENCE_WIFI | 位置信息来源于Wi-Fi模块 |
132| GEOFENCE_SENSOR | 位置信息来源于Sensor模块 |
133| GEOFENCE_CELL | 位置信息来源于基站模块 |
134| GEOFENCE_BT | 位置信息来源于蓝牙模块 |
135
136
137### GeofenceTransition
138
139```
140enum GeofenceTransition
141```
142
143**描述**
144
145
146枚举可关注的地理围栏状态事件。
147
148**起始版本:** 4.0
149
150| 枚举值 | 描述 |
151| -------- | -------- |
152| GEOFENCE_TRANSITION_ENTERED | 设备在地理围栏范围内。 |
153| GEOFENCE_TRANSITION_EXITED | 设备在地理围栏范围外。 |
154| GEOFENCE_TRANSITION_UNCERTAIN | 无法确定设备与地理围栏位置关系。 |
155| GEOFENCE_TRANSITION_DWELL | 设备在地理围栏内,且持续徘徊一段时间。 |
156| GEOFENCE_TRANSITION_INDOOR | 设备在地理围栏内,且在室内。 |
157| GEOFENCE_TRANSITION_OUTDOOR | 设备在地理围栏内,且在室外。 |
158