Я создаю приложение, которое включает в себя геологий googles, которые я создал с помощью обоих ENTER и EXIT переходов. Проблема возникает при повороте «Location», когда внутри моей геозоны он запускает оба перехода, когда должен запускаться только переход ENTER. Ive установить оба ENTER и EXIT как intitialTrigger()
.Триггеры перехода геофотографии Android
Как это возможно?
Это ошибка в google api или я сделал что-то неправильно в построителе. Заранее спасибо.
@Override
public void onResult(Result result) {
Status s = result.getStatus();
Log.d(TAG, "onResult(...)" + s.isSuccess());
if (!s.isSuccess()) {
Log.d(TAG, "statuskode = " + s.getStatusCode() +
" noget gik galt, sandsynlighvis blev gps slået fra = statuscode 1000");
}
}
private GeofencingRequest createGeoFences() {
return new GeofencingRequest.Builder()
.addGeofence(geoFenceBuilder(Constants.LOCATION_BALLERUP, "ballerup_req_id"))
.addGeofence(geoFenceBuilder(Constants.LOCATION_AALBORG, "aalborg_req_id"))
.addGeofence(geoFenceBuilder(Constants.LOCATION_ESBJERG, "esbjerg_req_id"))
.addGeofence(geoFenceBuilder(Constants.LOCATION_ÅRHUS, "århus_req_id"))
// .addGeofence(geoFenceBuilder(Constants.LOCATION_TAASTRUP, 44))
.setInitialTrigger(GeofencingRequest.INITIAL_TRIGGER_ENTER | GeofencingRequest.INITIAL_TRIGGER_EXIT)
.build();
}
private Geofence geoFenceBuilder(LatLng location, String requestId) {
return new Geofence.Builder().setCircularRegion(location.latitude, location.longitude, TARGET_RADIUS)
.setExpirationDuration(Geofence.NEVER_EXPIRE)
.setTransitionTypes(Geofence.GEOFENCE_TRANSITION_ENTER | Geofence.GEOFENCE_TRANSITION_EXIT)
.setRequestId(requestId)
.setNotificationResponsiveness(NOTIFICATION_DELAY)
.build();
}
Эй, пабло. Хороший ответ, я думаю, это похоже на очень вероятное объяснение этого ошибочного запуска. Ваше предложение также замечательно, хотя моя первоначальная причина не делать этого; если google api требует специальной обработки, тогда вы можете создать свою собственную реализацию геозонности, я так думаю. Также его не так странно хотеть оба триггера. Представьте себе, если gps повернут внутрь геозоны, а затем повернулся обратно за ограждение. Я все еще хочу, чтобы местоположение было обновлено, поэтому мой сервер не учитывает меня в геозонности. Thx для ответа это было хорошо. –
Построение собственного решения для геосферы, которое несколько работает и остается низким, довольно сложно. Я часть команды, которая стремилась сделать именно это. Кроме того, странная часть имела как ENTER, так и EXIT, заданные как начальный триггер. Не ошибаюсь, но у меня было бы предположение, что мы находимся за пределами геозонности, если мы прямо не укажем, что мы ввели геофунданс. Затем мы ждем триггера события EXIT. Надеюсь, все будет хорошо для вашего приложения! Изменить: FYI, наши вещи работают ... не просто. :-) –