Google is committed to advancing racial equity for Black communities. See how.

BeaconFence

public final class BeaconFence extends Object

Use this class to create beacon fences.

The fences in this class support detecting nearby beacons that are associated with attachments, which are a triple of namespace, type, and content.

Note: Values that indicate a changing state are momentarily TRUE for about 5 seconds, then automatically revert to FALSE.

Public Method Summary

static AwarenessFence
found(Collection<BeaconState.TypeFilter> beaconTypes)
This fence is momentarily TRUE (about 5 seconds) when a beacon with the specified types is found.
static AwarenessFence
found(TypeFilter... beaconTypes)
This fence is momentarily TRUE (about 5 seconds) when a beacon with the specified types is found.
static AwarenessFence
lost(TypeFilter... beaconTypes)
This fence is momentarily TRUE (about 5 seconds) when a beacon with the specified types is lost.
static AwarenessFence
lost(Collection<BeaconState.TypeFilter> beaconTypes)
This fence is momentarily TRUE (about 5 seconds) when a beacon with the specified types is lost.
static AwarenessFence
near(TypeFilter... beaconTypes)
This fence evaluates to TRUE if any of the specified types is found but not lost.
static AwarenessFence
near(Collection<BeaconState.TypeFilter> beaconTypes)
This fence evaluates to TRUE if any of the specified types is found but not lost.

Inherited Method Summary

Public Methods

public static AwarenessFence found (Collection<BeaconState.TypeFilter> beaconTypes)

This fence is momentarily TRUE (about 5 seconds) when a beacon with the specified types is found.

To use this API, your app must declare the android.permission.ACCESS_FINE_LOCATION permission in AndroidManifest.xml, and the user must provide consent at runtime.

Parameters
beaconTypes BeaconState.TypeFilter non-empty beacon types listing to scan for.
Returns
Throws
IllegalArgumentException when beaconTypes is null or empty

public static AwarenessFence found (TypeFilter... beaconTypes)

This fence is momentarily TRUE (about 5 seconds) when a beacon with the specified types is found.

To use this API, your app must declare the android.permission.ACCESS_FINE_LOCATION permission in AndroidManifest.xml, and the user must provide consent at runtime.

Parameters
beaconTypes BeaconState.TypeFilter non-empty beacon types listing to scan for.
Returns
Throws
IllegalArgumentException when beaconTypes is null or empty

public static AwarenessFence lost (TypeFilter... beaconTypes)

This fence is momentarily TRUE (about 5 seconds) when a beacon with the specified types is lost.

To use this API, your app must declare the android.permission.ACCESS_FINE_LOCATION permission in AndroidManifest.xml, and the user must provide consent at runtime.

Parameters
beaconTypes BeaconState.TypeFilter non-empty beacon types listing to scan for.
Returns
Throws
IllegalArgumentException when beaconTypes is null or empty

public static AwarenessFence lost (Collection<BeaconState.TypeFilter> beaconTypes)

This fence is momentarily TRUE (about 5 seconds) when a beacon with the specified types is lost.

To use this API, your app must declare the android.permission.ACCESS_FINE_LOCATION permission in AndroidManifest.xml, and the user must provide consent at runtime.

Parameters
beaconTypes BeaconState.TypeFilter non-empty beacon types listing to scan for.
Returns
Throws
IllegalArgumentException when beaconTypes is null or empty

public static AwarenessFence near (TypeFilter... beaconTypes)

This fence evaluates to TRUE if any of the specified types is found but not lost.

To use this API, your app must declare the android.permission.ACCESS_FINE_LOCATION permission in AndroidManifest.xml, and the user must provide consent at runtime.

Parameters
beaconTypes BeaconState.TypeFilter non-empty beacon types listing to scan for.
Returns
Throws
IllegalArgumentException when beaconTypes is null or empty

public static AwarenessFence near (Collection<BeaconState.TypeFilter> beaconTypes)

This fence evaluates to TRUE if any of the specified types is found but not lost.

To use this API, your app must declare the android.permission.ACCESS_FINE_LOCATION permission in AndroidManifest.xml, and the user must provide consent at runtime.

Parameters
beaconTypes BeaconState.TypeFilter non-empty beacon types listing to scan for.
Returns
Throws
IllegalArgumentException when beaconTypes is null or empty