cordova-gizwits-geofencing

1.1.7 • Public • Published

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);

    授权状态值及对应说明:

    授权状态值 描述
    未授权 Authorization status not determined
    位置功能不可用 Authorization status restricted
    拒绝授权 Authorization status denied
    位置功能总是可用 Authorization status authorized always
    位置功能在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安全码未通过验证
9 google paly服务不可用

Readme

Keywords

Package Sidebar

Install

npm i cordova-gizwits-geofencing

Weekly Downloads

1

Version

1.1.7

License

ISC

Unpacked Size

1.35 MB

Total Files

36

Last publish

Collaborators

  • gizwits-rbwang