Geofence.Builder

public static final class Geofence.Builder extends Object

A builder that builds Geofence.

Public Constructor Summary

Public Method Summary

Geofence
build()
Creates a geofence object.
Geofence.Builder
setCircularRegion(double latitude, double longitude, float radius)
Sets the region of this geofence.
Geofence.Builder
setExpirationDuration(long durationMillis)
Sets the expiration duration of geofence.
Geofence.Builder
setLoiteringDelay(int loiteringDelayMs)
Geofence.Builder
setNotificationResponsiveness(int notificationResponsivenessMs)
Sets the best-effort notification responsiveness of the geofence.
Geofence.Builder
setRequestId(String requestId)
Sets the request ID of the geofence.
Geofence.Builder
setTransitionTypes(int transitionTypes)
Sets the transition types of interest.

Inherited Method Summary

Public Constructors

public Builder ()

Public Methods

public Geofence build ()

Creates a geofence object.

Throws
IllegalArgumentException if any parameters are not set or out of range

public Geofence.Builder setCircularRegion (double latitude, double longitude, float radius)

Sets the region of this geofence. The geofence represents a circular area on a flat, horizontal plane.

Parameters
latitude latitude in degrees, between -90 and +90 inclusive
longitude longitude in degrees, between -180 and +180 inclusive
radius radius in meters

public Geofence.Builder setExpirationDuration (long durationMillis)

Sets the expiration duration of geofence. The geofence will be removed automatically after this period of time. By default the geofence will never expire.

public Geofence.Builder setLoiteringDelay (int loiteringDelayMs)

Sets the delay between Geofence.GEOFENCE_TRANSITION_ENTER and Geofence.GEOFENCE_TRANSITION_DWELL in milliseconds. For example, if loitering delay is set to 300000 ms (i.e. 5 minutes) the geofence service will send a Geofence.GEOFENCE_TRANSITION_DWELL alert roughly 5 minutes after user enters a geofence if the user stays inside the geofence during this period of time. If the user exits from the geofence in this amount of time, Geofence.GEOFENCE_TRANSITION_DWELL alert won't be sent.

This value is ignored if the transition types don't include a Geofence.GEOFENCE_TRANSITION_DWELL filter.

Parameters
loiteringDelayMs the delay for confirming dwelling, in milliseconds

public Geofence.Builder setNotificationResponsiveness (int notificationResponsivenessMs)

Sets the best-effort notification responsiveness of the geofence. Defaults to 0. Setting a big responsiveness value, for example 5 minutes, can save power significantly. However, setting a very small responsiveness value, for example 5 seconds, doesn't necessarily mean you will get notified right after the user enters or exits a geofence: internally, the geofence might adjust the responsiveness value to save power when needed.

Parameters
notificationResponsivenessMs (milliseconds) defines the best-effort description of how soon should the callback be called when the transition associated with the geofence is triggered. For instance, if set to 300000 milliseconds the callback will be called 5 minutes within entering or exiting the geofence.

public Geofence.Builder setRequestId (String requestId)

Sets the request ID of the geofence. Request ID is a string to identify this geofence inside your application. When two geofences with the same requestId are monitored, the new one will replace the old one regardless the geographical region these two geofences represent.

Parameters
requestId the request ID. The length of the string can be up to 100 characters.

public Geofence.Builder setTransitionTypes (int transitionTypes)

Sets the transition types of interest. Alerts are only generated for the given transition types. By default the geofence will alert for enter and exit transitions.

Parameters
transitionTypes geofence transition types of interest, as a bitwise-OR of GEOFENCE_TRANSITION_ flags.