Иду по навигатору, а он уверенно ведет меня параллельной улицей. Синяя точка на карте живет своей жизнью — я стою на месте, она двигается. Поворот пропускаю, потому что приложение спохватывается с опозданием секунд в десять. Знакомо? Я долго думал, что это проблема конкретного навигатора, менял приложения и злился. Потом выяснилось, что дело совсем в другом. Почему телефон показывает неправильное местоположение — там про причины в общем, здесь конкретно о том, как я это починил и выполнил калибровку GPS.

Главное — правильно все настроить
Почему GPS врет на Android
Прежде чем что-то чинить, стоит понять, почему GPS ошибается вообще. Причин несколько, и они разные по природе:
- Отражение сигнала. Сигнал GPS идет от спутников и по пути отражается от зданий, деревьев, рельефа. Телефон получает несколько копий одного сигнала с разной задержкой и путается. В плотной городской застройке это особенно заметно;
- Устаревшие данные A-GPS. Это вспомогательная технология, которая помогает телефону быстрее найти спутники. Телефон заранее скачивает данные об их положении — своеобразное расписание. Если эти данные устарели, смартфон ищет спутники не там. Точность GPS при этом падает именно в первые минуты после включения навигации;
- Неоткалиброванный компас. Акселерометр и магнитометр в телефоне влияют на то, куда «смотрит» навигатор. Если они сбиты, навигатор врет не столько с позицией, сколько с направлением движения;
- Неправильный режим геолокации. Android может работать в нескольких режимах точности. Экономный режим использует только Wi-Fi и сотовые вышки и дает погрешность до нескольких сотен метров.
Последний пункт — самый обидный, потому что проблема решается буквально за десять секунд в настройках. Но, как бы то ни было, в наших широтах есть свои проблемы. Недавно объяснял, почему в России GPS работает хуже, чем раньше. Можете прочитать, если интересно.
Как проверить точность GPS на Android
Прежде чем калибровать, стоит понять масштаб проблемы. Я пользуюсь приложением GPS Test — оно бесплатное, показывает, сколько спутников видит телефон, насколько точно их определяет и какова текущая погрешность в метрах.
- Установите GPS Test из Google Play или RuStore.
- Выйдите на улицу с открытым небом (в помещении спутники ловятся плохо).
- Запустите приложение и подождите 1-2 минуты.
- Посмотрите на параметр точности (Accuracy) — норма для смартфона от 3 до 10 метров. Если больше 15 метров при ясном небе — есть проблема.
- Обратите внимание на количество спутников. Хорошо — 8 и больше активных. Меньше 4 — плохой прием.

Используйте это приложение для проверки спутников
Если точность геолокации низкая даже при большом количестве спутников — скорее всего, сбит компас или устарели данные A-GPS. Если мало спутников при ясном небе — возможно, проблема в железе или программном сбое.
Подписывайся на AndroidInsider в Telegram
Как откалибровать GPS на Android
Есть несколько методов, работающих по-разному. Начинать стоит с простых. Сначала нужно откалибровать компас восьмеркой. Это самый быстрый способ откалибровать магнитометр. Именно он отвечает за то, в какую сторону повернута синяя стрелка в навигаторе:
- Возьмите телефон в руку горизонтально, экраном вверх.
- Медленно нарисуйте в воздухе цифру 8 — плавно, как будто пишете на доске.
- Повторите 5-6 раз в разных плоскостях: горизонтально, вертикально, наклонно.
- Откройте любое приложение с компасом и проверьте, совпадает ли показание с реальным направлением.
Звучит немного странно, но работает. После этой процедуры мой навигатор перестал показывать, что я еду в обратную сторону. Далее стоит выполнить сброс данных A-GPS. Этот вариант помогает, если навигация на Android долго ищет сигнал или первые несколько минут сильно врет:
- Установите приложение GPS Status & Toolbox (оно есть в RuStore и Google Play).
- Откройте приложение, нажмите на три точки в меню.
- Выберите «Управление A-GPS» — «Сбросить».
- Затем нажмите «Загрузить» — приложение скачает свежие данные о положении спутников.
- Выйдите на улицу, запустите навигатор и дайте ему 2-3 минуты на первоначальный поиск.

Сбросить данные GPS можно через это приложение
После сброса телефон заново скачивает актуальные данные о спутниках. Калибровка GPS этим методом особенно помогает, если вы давно не пользовались навигатором или недавно оказались в новом городе после длительного перелета.
Читай наши лучшие материалы в Дзене
Наконец, необходимо правильно настроить геолокацию на Android:
- Откройте «Настройки» телефона.
- Перейдите в «Местоположение» или «Геолокация».
- Убедитесь, что выбран режим «Высокая точность» или вручную включите геолокацию по Wi-Fi и Bluetooth.

Важно, чтобы при определении геолокации использовались Bluetooth и Wi-Fi
Режим экономии батареи использует только сотовые вышки и Wi-Fi. Это дает грубое приближение, которое годится для определения города, но не для навигации на телефоне по улицам.
Как улучшить точность GPS на Android
Настройки геолокации — не единственное, что влияет на работу навигатора. Вот что еще помогает получить стабильный результат.
Залетай в чат AndroidInsider.ru в MAX
Отключите ограничение фоновой активности для навигатора. Многие телефоны автоматически ограничивают приложения в фоне для экономии батареи. Навигатор при этом может терять сигнал при выключенном экране:
- Зайдите в «Настройки» — «Приложения».
- Найдите ваш навигатор.
- Откройте раздел «Батарея» или «Энергопотребление».
- Выберите «Без ограничений» или «Не оптимизировать».

Ваш навигатор должен работать без ограничений
Проверьте магнитные помехи. Металлический чехол, магнитный держатель или соседство с автомобильной аудиосистемой могут сбивать магнитометр. Если навигация GPS нестабильна именно в машине — попробуйте другое место крепления телефона.
Загляни в телеграм-канал Сундук Али-Бабы, где мы собрали лучшие товары с АлиЭкспресс
Обновите карты в навигаторе. Устаревшие карты сами по себе не влияют на точность GPS, но приводят к тому, что синяя точка оказывается «не на той дороге» — дорога физически существует, а в базе ее нет. Особенно актуально для навигаторов с офлайн-картами, где обновления нужно скачивать вручную.

Загружайте и своевременно обновляйте офлайн-карты
Держите небо открытым. Геолокация на Android работает плохо в подземных парковках, тоннелях и глубоких дворах-колодцах — это физическое ограничение, не баг. Подождите, пока выедете на открытое место.
После всех этих манипуляций мой навигатор перестал врать на 50 метров. Погрешность стала стабильной: 4-6 метров, что для пешей навигации более чем достаточно. Телефон нашел нужный двор с первого раза. Мелочь, но жизнь стала заметно приятнее. Кстати, если тема слежки за местоположением вас беспокоит, почитайте о том, как Android собирает данные геолокации даже когда вы не пользуетесь навигатором. Это отдельный разговор про настройки конфиденциальности.