# SmartGeofenceApi

## SmartGeofenceApi API

### `getDetectionMode()`

> ```java
> DetectionMode getDetectionMode();
> ```
>
> Returns the geofence entry/exit detection mode. See [DetectionMode](/important-topics/sdk/api-reference/android/smart-geofences/detectionmode.md).
>
> Note: calling this method on an uninitialized SDK will throw an SdkException.

### `refreshGeofences()`

> ```java
> PendingOperation<SmartGeofencesRefreshResult, SmartGeofencesRefreshError> refreshGeofences()
> ```
>
> Refreshes the list of geofences that the SDK monitors.
>
> The SDK obtains the list of geofences that it monitors from the Sentiance Cloud Platform, and refreshes it several times a day. Use this method to initiate a refresh, for instance, when you have created a new geofence directly on the Sentiance platform, and want it to be immediately monitored by the SDK. Note that refresh requests are throttled to once every 30 seconds.
>
> Returns [SmartGeofencesRefreshResult](/important-topics/sdk/api-reference/android/smart-geofences/smartgeofencesrefreshresult.md) upon success or [SmartGeofencesRefreshError](/important-topics/sdk/api-reference/android/smart-geofences/smartgeofencesrefresherror.md) upon failure via PendingOperation.

### `setSmartGeofenceEventListener()`

> ```java
> void setSmartGeofenceEventListener(@Nullable SmartGeofenceEventListener listener)
> ```
>
> Sets a listener that will be invoked when a geofence entry or exit event is detected.
>
> Note: calling this method on an uninitialized SDK will throw an SdkException.

<table><thead><tr><th width="248">Parameters</th><th></th></tr></thead><tbody><tr><td>listener</td><td>A <a href="/pages/WFzOUJXFY5wncKbx45c2">SmartGeofenceEventListener</a> to receive details about the geofence event. Set <code>null</code> to remove a previously set listener.</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sentiance.com/important-topics/sdk/api-reference/android/smart-geofences/smartgeofenceapi.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
