2016-11-14 4 views
1

Как реализовать Geofence для отслеживания других пользователей?
Я разрабатываю приложение, которое будет отслеживать член семьи, и я хочу, чтобы реализовать Geofence функции, которая позволит пользователю сделать для Ex:
пользователя А будет отслеживать пользователь B
пользователя А будет определять область GeoFence и когда пользователь B будет ввести эту пользовательские геозоны а получит оповещениеAndroid: Как заставить пользователя создать геозон для других гусеничных пользователей?

Я retreived местоположения пользователя B каждые 10 минут, и я хочу, чтобы создать Geofence для пользователя B, который уведомляет пользователь а когда пользователь B войти в области GeoFence

I попробуйте использовать Google Geofence, как этот код:

mGeofenceList.add(new Geofence.Builder() 
// Set the request ID of the geofence. This is a string to identify this 
// geofence. 
.setRequestId(entry.getKey()) 

.setCircularRegion(
     entry.getValue().latitude, 
     entry.getValue().longitude, 
     Constants.GEOFENCE_RADIUS_IN_METERS 
) 
.setExpirationDuration(Constants.GEOFENCE_EXPIRATION_IN_MILLISECONDS) 
.setTransitionTypes(Geofence.GEOFENCE_TRANSITION_ENTER | 
     Geofence.GEOFENCE_TRANSITION_EXIT) 
.build()); 

но он просто работает для пользовательского устройства «пользователь», а не для другого местоположения пользователя.

ответ

2

Я думаю, вы должны добавить базу данных и следить за тем, кто создал геозонность для кого. Также храните радиус геоцентричности и центральную точку в базе данных. Чтобы проверить, находится ли пользователь в пределах геофорумы, вычислите расстояние от координат местоположения пользователя и всех координат геологий, а затем сравните расстояние с радиусом за 5 минут. Если расстояние < радиус, пользователь находится внутри снаружи. Если пользователь внутри установлен флаг, чтобы избежать повторных уведомлений. Если пользователь выходит за пределы сброса флага. Я думаю, что это должно сработать.

Смежные вопросы