public static final class

Geofence.Builder

extends Object
java.lang.Object
   ↳ com.google.android.gms.location.Geofence.Builder

Class Overview

A builder that builds Geofence.

Summary

Public Constructors
Geofence.Builder()
Public Methods
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)
Sets the delay between GEOFENCE_TRANSITION_ENTER and GEOFENCE_TRANSITION_DWELLING in milliseconds.
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.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public Geofence.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. This geofence will be removed automatically after this period of time.

Parameters
durationMillis time for this proximity alert, in milliseconds, or NEVER_EXPIRE to indicate no expiration. When positive, this geofence will be removed automatically after this amount of time.

public Geofence.Builder setLoiteringDelay (int loiteringDelayMs)

Sets the delay between GEOFENCE_TRANSITION_ENTER and GEOFENCE_TRANSITION_DWELLING in milliseconds. For example, if loitering delay is set to 300000 ms (i.e. 5 minutes) the geofence service will send a 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_TRANSITION_DWELL alert won't be sent.

This value is ignored if the transition types don't include a 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.

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