1.1.7 • Published 7 years ago

cordova-gizwits-geofencing v1.1.7

Weekly downloads
1
License
ISC
Repository
gitlab
Last release
7 years ago

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 返回的是错误码。错误码请参照最后的错误码表。

  1. 设置主题 setThemeInfo

    // themeColor: 主题色
    // navi_bg: 导航栏背景色 
    // titleColor: 标题颜色 
    // title: 标题 
    // right_title: 导航右侧按钮标题
    cordova.plugins.gizGeofencing.setThemeInfo({"themeColor": "FFFFFF", "navi_bg": "FFFFFF", "titleColor": "FFFFFF", "title": "标题", "right_title": "导航栏右侧按钮标题"}, success, error);
  2. 设置服务器信息 setServerInfo

    // url: 服务器地址
    // token
    // appKey
    // type: 表明 appKey 类型, 传入的值为 appId 或 enterpriseId(不传时默认值)
    // version: 接口版本
    cordova.plugins.gizGeofencing.setServerInfo({"url": "", "version": "", "token": "", "appKey": "", "type": ""}, success, error);
  3. 选择或编辑区域 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 错误码,请参照最后的错误码表。
    });
  4. 选择地址 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 错误码,请参照最后的错误码表。
    });
  5. 添加区域 addRegion

    region = {"latitude": 22.123456, "longitude": 113.123456, "radius": 200, "status": "enter/leave", "conditionId": ""};
    cordova.plugins.gizGeofencing.addRegion(region, success, error);
  6. 移除区域 removeRegion

    region = {"latitude": 22.123456, "longitude": 113.123456, "radius": 200, "status": "enter/leave", "conditionId": ""};
    cordova.plugins.gizGeofencing.removeRegion(region, success, error);
  7. 移除所有区域 removeAllRegions

    cordova.plugins.gizGeofencing.removeAllRegions(success, error);
  8. 获取区域列表 getRegionList

    cordova.plugins.gizGeofencing.getRegionList(func (regionList) {
    	// regionList 区域列表
    }, error);
  9. 设置区域列表 setRegionList

    region = {"latitude": 22.123456, "longitude": 113.123456, "radius": 200, "status": "enter/leave", "conditionId": ""};
    regionList = [region];
    cordova.plugins.gizGeofencing.setRegionList(regionList, success, error);
  10. 获取位置功能授权状态 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
  11. 请求总是使用位置信息的权限 requestAlwaysAuthorization

    cordova.plugins.gizGeofencing.requestAlwaysAuthorization(func (status) {
        // status 授权状态值请参照第10接口的说明。
    }, error);
  12. 获取当前位置 getCurrentLocation

    cordova.plugins.gizGeofencing.getCurrentLocation(func (coordinate) {
        // coordinate 当前位置GPS坐标 {"latitude": 23.123456, "longitude": 123.123456}
    }, func (errorCode) {
    	// errorCode 错误码,请参照最后的错误码表。
    });
  13. 解析地址 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使用
  1. transformFromWGSToGCJ: WGS-84 转换为 GCJ-02
  2. transformFromGCJToWGS: GCJ-02 转换为 WGS-84
  3. transformFromGCJToBaidu: GCJ-02 转换为 BD-09
  4. 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安全码未通过验证
9google paly服务不可用
1.1.7

7 years ago

1.1.6

7 years ago

1.1.5

7 years ago

1.1.4

7 years ago

1.1.3

7 years ago

1.1.2

7 years ago

1.1.1

7 years ago

1.1.0

7 years ago

1.0.9

7 years ago

1.0.8

7 years ago

1.0.7

7 years ago

1.0.6

7 years ago

1.0.5

7 years ago

1.0.4

7 years ago

1.0.3

7 years ago

1.0.2

7 years ago

1.0.1

7 years ago