почему бы всем пользователям просто периодически не отсылать текущее местоположение, а по запросу сразу отдавать последнее обновленное и писать, сколько времени назад оно было получено?
хорошая идея. Так и сделаю наверное.
3. Скорее всего, вы уже учли этот момент, но все-таки напишу. В вашем алгоритме пользователь должен отправить по ответу о своем местоположении на все запросы от всех пользователей. Если почти одновременно поступят запросы на определения местоположения одного пользователя, то незачем отвечать несколько раз. Если кто-то уже запросил, а пользователь еще не ответил или ответил какое-то небольшое время назад, то можно не добавлять запрос пользователю Б.
Не учел. Спасибо за помощь!