Есть ли идея быстро получить данные о высоте при использовании LocationClient для Android?
Я использовал LocationManager для Android для записи данных о местоположении, и появился новый APILocationClient, поэтому я попробовал его.
Результат выглядел хорошо. Он очень быстро получает данные о местоположении, но я обнаружил, что провайдер Android Fused Location(LocationClient) не предоставляет данные о высоте почти во всех случаях, хотя я отслеживал довольно долгое время.
Итак, вопрос в том, есть ли какой-нибудь хороший способ или идея для получения данных о высоте при использовании LocationClient? Или я должен просто продолжать использовать провайдера GPS, который недостаточно быстр?
1 ответ
AFAIK, единственный поставщик на сегодняшний день в стандартном Android, который может дать вам высоту, это GPS. AFAIK, как точка доступа WiFi, так и триангуляция сотовой вышки предполагают, что вы находитесь на поверхности Земли или, по крайней мере, в относительно узкой полосе поверхности, рассматривая локальную область как плоскую плоскость.
LocationClient
и "объединенный" поставщик определения местоположения разработан, чтобы смешать все эти подходы, чтобы получить более точную широту / долготу быстрее. Однако, если мои AFAIK верны, он не может получить высоту быстрее, чем GPS. И, в зависимости от того, как он обрабатывает вещи внутри, он может уделять больше внимания провайдерам, не поддерживающим GPS, и, следовательно, давать вам высоту реже. Поскольку сервис Play Services является закрытым исходным кодом, у нас нет хорошего способа узнать.
или я должен просто продолжать использовать провайдера GPS, который недостаточно быстр.
Скорость получения GPS-привязок зависит от окружающей среды (например, в помещении / на улице) и от качества GPS-приемника устройства.