I implemented Geofence in android application. I followed this link to implement \'Geofence\' in app. I am using \'Retrofit\' library to call \'HTTP\' request.
Maybe your app gets blocked to use network by Androids doze mode and/or app standby. Check Optimizing for Doze and App Standby.
A possible solution is to setup an alarm with the AlarmManager. Android will schedule the alarms processing in a maintenance window where you are allowed to use network.