com.amap.api.fence

## 类 GeoFence

- java.lang.Object
- - com.amap.api.fence.GeoFence

-     public class GeoFence
      extends java.lang.Object

  地理围栏对象
  从以下版本开始:
    3.2.0

- - ### 字段概要

    字段
    限定符和类型 | 字段和说明
    --- | ---
    `static int` | `ADDGEOFENCE_SUCCESS` 创建地理围栏成功
    `static java.lang.String` | `BUNDLE_KEY_CUSTOMID` 地理围栏广播中Bundle的key-业务Id
    `static java.lang.String` | `BUNDLE_KEY_FENCE` 地理围栏广播中Bundle的key-围栏对象
    `static java.lang.String` | `BUNDLE_KEY_FENCEID` 地理围栏广播中Bundle的key-围栏Id
    `static java.lang.String` | `BUNDLE_KEY_FENCESTATUS` 地理围栏广播中Bundle的key-围栏状态
    `static java.lang.String` | `BUNDLE_KEY_LOCERRORCODE` 地理围栏广播中Bundle的key-定位错误码
    `static <any>` | `CREATOR`
    `static int` | `ERROR_CODE_EXISTS` 错误码： 相同的围栏已经存在，无需重复添加 当地理围栏的customID，半径，周边点（多边形），中心点坐标（圆形）这几个属性完全一致时，则认为是相同围栏
    `static int` | `ERROR_CODE_FAILURE_AUTH` 错误码：鉴权失败
    `static int` | `ERROR_CODE_FAILURE_CONNECTION` 错误码：网络连接异常
    `static int` | `ERROR_CODE_FAILURE_PARSER` 错误码：解析数据失败（有可能是连接的需要登录的网络但是没有登录）
    `static int` | `ERROR_CODE_INVALID_PARAMETER` 错误码：参数错误
    `static int` | `ERROR_CODE_UNKNOWN` 错误码：其他未知错误
    `static int` | `ERROR_NO_VALIDFENCE` 错误码：无可用地理围栏
    `static int` | `STATUS_IN` 围栏状态-进入围栏
    `static int` | `STATUS_LOCFAIL` 围栏状态-定位失败(定位失败时，围栏状态无法进行检测)
    `static int` | `STATUS_OUT` 围栏状态-离开围栏
    `static int` | `STATUS_STAYED` 围栏状态-在围栏内停留
    `static int` | `STATUS_UNKNOWN` 围栏状态-初始状态，表示从未触发过围栏
    `static int` | `TYPE_AMAPPOI` 高德POI围栏
    `static int` | `TYPE_DISTRICT` 高德行政区划围栏
    `static int` | `TYPE_POLYGON` 自建的多边形围栏
    `static int` | `TYPE_ROUND` 自建的圆形围栏

  - ### 构造器概要

    构造器
    构造器和说明
    `GeoFence()` 构造方法

  - ### 方法概要

    所有方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `int` | `describeContents()`
    `int` | `getActivatesAction()` 获取设置的地理围栏触发条件
    `DPoint` | `getCenter()` 获取围栏中心点坐标
    `AMapLocation` | `getCurrentLocation()` 获取当前位置，只有在围栏触发时才有值,其它情况值为null
    `java.lang.String` | `getCustomId()` 获取自定义的围栏ID(添加围栏时设置)
    `java.util.List<DistrictItem>` | `getDistrictItemList()` 获取该围栏中的行政区划列表 只有围栏类型为:`GeoFence.TYPE_DISTRICT`时才有值
    `java.lang.String` | `getFenceId()` 获取地理围栏的ID
    `PendingIntent` | `getPendingIntent()` 获取对应的PendingIntent对象
    `java.lang.String` | `getPendingIntentAction()` 获取对应的PendingIntent的action字符串
    `PoiItem` | `getPoiItem()` 获取围栏内的兴趣点属性 只有围栏类型为:`GeoFence.TYPE_AMAPPOI`时才有值
    `java.util.List<java.util.List<DPoint>>` | `getPointList()` 获取围栏坐标点
    `int` | `getStatus()` 获取围栏的状态
    `int` | `getType()` 获取围栏类型
    `boolean` | `isAble()` 获取围栏是否可用
    `void` | `setAble(boolean able)` 设置围栏是否可用
    `void` | `writeToParcel(Parcel dest, int flags)`

    - ### 从类继承的方法 java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### 字段详细资料

    - #### BUNDLE_KEY_FENCEID

          public static final java.lang.String BUNDLE_KEY_FENCEID

      地理围栏广播中Bundle的key-围栏Id
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### BUNDLE_KEY_CUSTOMID

          public static final java.lang.String BUNDLE_KEY_CUSTOMID

      地理围栏广播中Bundle的key-业务Id
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### BUNDLE_KEY_FENCESTATUS

          public static final java.lang.String BUNDLE_KEY_FENCESTATUS

      地理围栏广播中Bundle的key-围栏状态
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### BUNDLE_KEY_LOCERRORCODE

          public static final java.lang.String BUNDLE_KEY_LOCERRORCODE

      地理围栏广播中Bundle的key-定位错误码
      从以下版本开始:
        3.3.0
      另请参阅:
        常量字段值

    - #### BUNDLE_KEY_FENCE

          public static final java.lang.String BUNDLE_KEY_FENCE

      地理围栏广播中Bundle的key-围栏对象
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### ADDGEOFENCE_SUCCESS

          public static final int ADDGEOFENCE_SUCCESS

      创建地理围栏成功
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### ERROR_CODE_INVALID_PARAMETER

          public static final int ERROR_CODE_INVALID_PARAMETER

      错误码：参数错误
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### ERROR_CODE_FAILURE_CONNECTION

          public static final int ERROR_CODE_FAILURE_CONNECTION

      错误码：网络连接异常
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### ERROR_CODE_FAILURE_PARSER

          public static final int ERROR_CODE_FAILURE_PARSER

      错误码：解析数据失败（有可能是连接的需要登录的网络但是没有登录）
      从以下版本开始:
        3.4.0
      另请参阅:
        常量字段值

    - #### ERROR_CODE_FAILURE_AUTH

          public static final int ERROR_CODE_FAILURE_AUTH

      错误码：鉴权失败
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### ERROR_CODE_UNKNOWN

          public static final int ERROR_CODE_UNKNOWN

      错误码：其他未知错误
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### ERROR_NO_VALIDFENCE

          public static final int ERROR_NO_VALIDFENCE

      错误码：无可用地理围栏
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### ERROR_CODE_EXISTS

          public static final int ERROR_CODE_EXISTS

      错误码： 相同的围栏已经存在，无需重复添加

      当地理围栏的customID，半径，周边点（多边形），中心点坐标（圆形）这几个属性完全一致时，则认为是相同围栏

      从以下版本开始:
        3.3.0
      另请参阅:
        常量字段值

    - #### STATUS_IN

          public static final int STATUS_IN

      围栏状态-进入围栏
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### STATUS_OUT

          public static final int STATUS_OUT

      围栏状态-离开围栏
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### STATUS_STAYED

          public static final int STATUS_STAYED

      围栏状态-在围栏内停留
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### STATUS_LOCFAIL

          public static final int STATUS_LOCFAIL

      围栏状态-定位失败(定位失败时，围栏状态无法进行检测)
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### STATUS_UNKNOWN

          public static final int STATUS_UNKNOWN

      围栏状态-初始状态，表示从未触发过围栏
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### TYPE_ROUND

          public static final int TYPE_ROUND

      自建的圆形围栏
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### TYPE_POLYGON

          public static final int TYPE_POLYGON

      自建的多边形围栏
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### TYPE_AMAPPOI

          public static final int TYPE_AMAPPOI

      高德POI围栏
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### TYPE_DISTRICT

          public static final int TYPE_DISTRICT

      高德行政区划围栏
      从以下版本开始:
        3.2.0
      另请参阅:
        常量字段值

    - #### CREATOR

          public static final <any> CREATOR

  - ### 构造器详细资料

    - #### GeoFence

          public GeoFence()

      构造方法

  - ### 方法详细资料

    - #### getFenceId

          public java.lang.String getFenceId()

      获取地理围栏的ID
      返回:
        围栏的ID(自动生成)
      从以下版本开始:
        3.2.0

    - #### getCustomId

          public java.lang.String getCustomId()

      获取自定义的围栏ID(添加围栏时设置)
      返回:
        自定义的围栏ID
      从以下版本开始:
        3.2.0

    - #### getPendingIntentAction

          public java.lang.String getPendingIntentAction()

      获取对应的PendingIntent的action字符串
      返回:
        对应的PendingIntent的action字符串
      从以下版本开始:
        3.2.0

    - #### getPendingIntent

          public PendingIntent getPendingIntent()

      获取对应的PendingIntent对象
      返回:
        PendingIntent对象
      从以下版本开始:
        3.2.0

    - #### getType

          public int getType()

      获取围栏类型
      返回:
        围栏类型

        目前支持的类型:

        `GeoFence.TYPE_ROUND`(自建的圆形围栏)
        `GeoFence.TYPE_POLYGON`(自建的圆形围栏)
        `GeoFence.TYPE_AMAPPOI`(高德POI围栏)
        `GeoFence.TYPE_DISTRICT`(高德政区划围栏)
      从以下版本开始:
        3.2.0

    - #### getPoiItem

          public PoiItem getPoiItem()

      获取围栏内的兴趣点属性

      只有围栏类型为:`GeoFence.TYPE_AMAPPOI`时才有值

      返回:
        围栏内的兴趣点属性（如果有）
      从以下版本开始:
        3.2.0

    - #### getDistrictItemList

          public java.util.List<DistrictItem> getDistrictItemList()

      获取该围栏中的行政区划列表

      只有围栏类型为:`GeoFence.TYPE_DISTRICT`时才有值

      返回:
        围栏中的行政区划列表（如果有）
      从以下版本开始:
        3.2.0

    - #### getPointList

          public java.util.List<java.util.List<DPoint>> getPointList()

      获取围栏坐标点
      返回:
        围栏坐标点

        当围栏类型为`GeoFence.TYPE_ROUND`或者 `GeoFence.TYPE_AMAPPOI`时, 坐标点只有一个，即围栏的中心点
        当围栏类型为`GeoFence.TYPE_POLYGON`或者 `GeoFence.TYPE_DISTRICT`时，坐标点是多个，即围栏的边线点
      从以下版本开始:
        3.2.0

    - #### getActivatesAction

          public int getActivatesAction()

      获取设置的地理围栏触发条件

      返回:
        触发地理围栏的条件
      从以下版本开始:
        3.2.0
      另请参阅:
        `GeoFenceClient#setActivateAction(int) GeoFenceClientsetActivatesAction}`

    - #### getStatus

          public int getStatus()

      获取围栏的状态
      返回:
        围栏的状态

        目前的状态有：

        `GeoFence.STATUS_IN` 进入围栏
        `GeoFence.STATUS_OUT` 离开围栏
        `GeoFence.STATUS_STAYED` 停留在围栏内
      从以下版本开始:
        3.2.0

    - #### getCenter

          public DPoint getCenter()

      获取围栏中心点坐标
      从以下版本开始:
        3.2.0

    - #### isAble

          public boolean isAble()

      获取围栏是否可用
      返回:
        围栏是否可用, 默认为true，可用
      从以下版本开始:
        3.6.0

    - #### setAble

          public void setAble(boolean able)

      设置围栏是否可用
      参数:
        `able` - true:可用；false:不可用
      从以下版本开始:
        3.6.0

    - #### getCurrentLocation

          public AMapLocation getCurrentLocation()

      获取当前位置，只有在围栏触发时才有值,其它情况值为null
      返回:
      从以下版本开始:
        3.7.0

    - #### describeContents

          public int describeContents()

    - #### writeToParcel

          public void writeToParcel(Parcel dest,
                                    int flags)