Вы пробовали GeoFencing, это действительно здорово. Он позволяет определить центральную точку и радиус. Когда пользователь вводит этот радиус, вы получаете обратный вызов или ожидающий запрос. Вы можете делать то, что хотите в своем обратном вызове.
Вы можете получить адреса своих клиентов и построить геозонность вокруг своих местоположений.
Edit:
Если вы решили не использовать GeoFenceing
(по какой либо причине), обратите внимание, что LocationManager
сильно глючит и неустойчивы на большинстве мобильных телефонов (Samsung).
Вместо этого используйте LocationClient
, который заботится обо всем дерьме LocationManager
. Мы с вами справляемся и обеспечиваем более быструю, меньшую батарею и индивидуальную точность.
Edit:
Если кто-то пытается убедить вас в обратном, проверьте this аут. Видео от разработчиков Google и их разговоры о том, почему LocationManager
отстой, и почему они знали и помогли нам выяснить значение, которое Датчики добавляют ко всему решению.
Edit: Дизайна вашего решения Вам нужны 2 геозонов 1) Outer, вы можете трудно код это к воображаемым 500 м от офиса. С этого момента вы можете начать поиск wifizones 2) Как только найден wifizone, сохраните gps и расстояние от его адресной точки. Это ваш внутренний радиус.
1 Geofence определяется вашей установкой, 2-я геозонность определяется вашей рабочей средой.
2-й Geofence и использовать в дальнейшем для отключения GPS (только если вы решите использовать LocationManager
). Если нет, вам это не понадобится, LocationClient
будет делать то, что он делает лучше всего.
круто спасибо, что я думал об этом. но спасибо за то, что вы подняли аккумуляторную батарею –