cordova-gizwits-geofencing
v1.1.7
Published
Gizwits Geofencing tool
Downloads
3
Readme
Gizwits 地理围栏工具
iOS注意事项:
- 地理围栏功能起作用前提:用户授予始终使用定位功能的权限;
- 地理围栏最多设置20个。
安装移除
cordova plugin add cordova-gizwits-geofencing
(Android添加插件需要传入高德地图的AppKey,添加方法如下:cordova plugin add cordova-gizwits-geofencing --variable AMAP_KEY=your_key --variable GMAP_KEY=your_google_map_key)
cordova plugin rm cordova-gizwits-geofencing
接口使用说明
App 使用该插件时,需调用 setServerInfo 方法设置服务器信息。
当发生错误时,error 返回的是错误码。错误码请参照最后的错误码表。
设置主题 setThemeInfo
// themeColor: 主题色 // navi_bg: 导航栏背景色 // titleColor: 标题颜色 // title: 标题 // right_title: 导航右侧按钮标题 cordova.plugins.gizGeofencing.setThemeInfo({"themeColor": "FFFFFF", "navi_bg": "FFFFFF", "titleColor": "FFFFFF", "title": "标题", "right_title": "导航栏右侧按钮标题"}, success, error);
设置服务器信息 setServerInfo
// url: 服务器地址 // token // appKey // type: 表明 appKey 类型, 传入的值为 appId 或 enterpriseId(不传时默认值) // version: 接口版本 cordova.plugins.gizGeofencing.setServerInfo({"url": "", "version": "", "token": "", "appKey": "", "type": ""}, success, error);
选择或编辑区域 pickRegion
// 区域参数 region = {"latitude": 22.123456, "longitude": 113.123456, "radius": 200, "status": "enter/leave", "conditionId": ""}; // 选择新区域时,传入空的 JSON 对象。 cordova.plugins.gizGeofencing.pickRegion({}, func (newRegion) { // newRegion 区域参数 }, func (errorCode) { // errorCode 错误码,请参照最后的错误码表。 }); // 编辑区域时,传入要编辑的区域 cordova.plugins.gizGeofencing.pickRegion(region, func (editedRegion) { // editedRegion 区域参数 }, func (errorCode) { // errorCode 错误码,请参照最后的错误码表。 });
选择地址 pickAddress
// 地址参数 address = {"latitude": 22.123456, "longitude": 113.123456}; // 选择新地址时,传入空的 JSON 对象。 cordova.plugins.gizGeofencing.pickAddress({}, func (newAddress) { // newAddress 地址参数 }, func (errorCode) { // errorCode 错误码,请参照最后的错误码表。 }); // 编辑地址时,传入要编辑的地址 cordova.plugins.gizGeofencing.pickAddress(address, func (editedAddress) { // editedAddress 地址参数 }, func (errorCode) { // errorCode 错误码,请参照最后的错误码表。 });
添加区域 addRegion
region = {"latitude": 22.123456, "longitude": 113.123456, "radius": 200, "status": "enter/leave", "conditionId": ""}; cordova.plugins.gizGeofencing.addRegion(region, success, error);
移除区域 removeRegion
region = {"latitude": 22.123456, "longitude": 113.123456, "radius": 200, "status": "enter/leave", "conditionId": ""}; cordova.plugins.gizGeofencing.removeRegion(region, success, error);
移除所有区域 removeAllRegions
cordova.plugins.gizGeofencing.removeAllRegions(success, error);
获取区域列表 getRegionList
cordova.plugins.gizGeofencing.getRegionList(func (regionList) { // regionList 区域列表 }, error);
设置区域列表 setRegionList
region = {"latitude": 22.123456, "longitude": 113.123456, "radius": 200, "status": "enter/leave", "conditionId": ""}; regionList = [region]; cordova.plugins.gizGeofencing.setRegionList(regionList, success, error);
获取位置功能授权状态 getAuthorizationStatus
cordova.plugins.gizGeofencing.getAuthorizationStatus(func (status) { // status 授权状态值 (整型) }, error);
授权状态值及对应说明:
| 授权状态值 | 描述 | |---|---| | 0 | 未授权 Authorization status not determined | | 1 | 位置功能不可用 Authorization status restricted | | 2 | 拒绝授权 Authorization status denied | | 3 | 位置功能总是可用 Authorization status authorized always | | 4 | 位置功能在App运行时可用 Authorization status authorized when in use |
请求总是使用位置信息的权限 requestAlwaysAuthorization
cordova.plugins.gizGeofencing.requestAlwaysAuthorization(func (status) { // status 授权状态值请参照第10接口的说明。 }, error);
获取当前位置 getCurrentLocation
cordova.plugins.gizGeofencing.getCurrentLocation(func (coordinate) { // coordinate 当前位置GPS坐标 {"latitude": 23.123456, "longitude": 123.123456} }, func (errorCode) { // errorCode 错误码,请参照最后的错误码表。 });
解析地址 getAddressInfo
// 位置GPS坐标 coordinate = {"latitude": 23.123456, "longitude": 123.123456}; cordova.plugins.gizGeofencing.getAddressInfo(coordinate, func (address) { // address 地址。地址格式如下。 }, func (errorCode) { // errorCode 错误码,请参照最后的错误码表。 });
// 地址格式 { "FormattedAddressLines": [ "中国广东省广州市天河区沙东街道沙太路陶庄5号" ], "Street": "沙太路陶庄5号", "Thoroughfare": "沙太路陶庄5号", "Name": "沙东轻工业大厦", "City": "广州市", "Country": "中国", "State": "广东省", "SubLocality": "天河区", "CountryCode": "CN" }
坐标转换
- WGS-84:是国际标准,GPS坐标(Google Earth使用、或者GPS模块)
- GCJ-02:中国坐标偏移标准,Google Map、高德、腾讯使用 (火星坐标系)
- BD-09 :百度坐标偏移标准,Baidu Map使用
- transformFromWGSToGCJ: WGS-84 转换为 GCJ-02
- transformFromGCJToWGS: GCJ-02 转换为 WGS-84
- transformFromGCJToBaidu: GCJ-02 转换为 BD-09
- transformFromBaiduToGCJ: BD-09 转换为 GCJ-02
coordinate = {"latitude": 23.123456, "longitude": 123.123456};
cordova.plugins.gizGeofencing.transformFromWGSToGCJ(coordinate, func (targetCoordinate) {
// targetCoordinate 坐标 {"latitude": 23.123456, "longitude": 123.123456}
}, error);
错误码
当发生错误时,所有接口都只返回一个错误码。错误码及对应信息如下:
| 错误码 | 描述 | |---|---| | 0 | (保留) | | 1 | 取消选择位置 (在选择位置界面按了“返回”键) | | 2 | 没有使用定位功能的权限 | | 3 | 没有始终允许定位 | | 4 | 参数不正确 | | 5 | 定位功能受限 | | 6 | 位置解析失败 | | 7 | 高德地图用户Key不正确或过期 | | 8 | 高德地图MD5安全码未通过验证 | | 9 | google paly服务不可用 |