Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

cordova-gizwits-geofencing

Package Overview
Dependencies
Maintainers
1
Versions
17
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cordova-gizwits-geofencing

Gizwits Geofencing tool

  • 1.1.5
  • npm
  • Socket score

Version published
Weekly downloads
0
Maintainers
1
Weekly downloads
 
Created
Source

Gizwits 地理围栏工具

iOS注意事项:

  • 地理围栏功能起作用前提:用户授予始终使用定位功能的权限;
  • 地理围栏最多设置20个。

安装移除

cordova plugin add cordova-gizwits-geofencing
(Android添加插件需要传入高德地图的AppKey,添加方法如下:cordova plugin add cordova-gizwits-geofencing --variable AMAP_KEY=your_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位置解析失败

Keywords

FAQs

Package last updated on 19 Oct 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc