Google has come up with the idea that geo-fencing from Android 8 (Oreo) only reports entering / leaving every few minutes.
See the following links:
-
https://developer.android.com/training/location/geofencing#java under the paragraph
Handle geofence transitions blue box and at the bottom
Alerts can be lateNote: On Android 8.0 (API level 26) and higher, if an app is running in the background while monitoring a geofence, then the device responds to geofencing events every couple of minutes. To learn how to adapt your app to these response limits, see Background Location Limits.
Alerts can be late. The geofence service doesn't continuously query for location, so expect some latency when receiving alerts. Usually the latency is less than 2 minutes, even less when the device has been moving. If Background Location Limits are in effect, the latency is about 2-3 minutes on average. If the device has been stationary for a significant period of time, the latency may increase (up to 6 minutes).
-
https://developer.android.com/about/versions/oreo/background-location-limits at
GeofencingThe average responsiveness for a geofencing event is every couple of minutes or so.
Thus, the app is not really real-time compatible from Android 8, as before Android 8. That is also one of the reasons why I will not continue to maintain the app.