Как приложение определяет местоположение
Приложение SURVEYSTUDIO может сохранять в интервью GPS-координаты места опроса, если это включено в свойствах проекта. Ниже описано, откуда берутся координаты, почему они могут не совпасть с местом опроса и как это проверить.
Как определяются координаты
Местоположение вычисляет операционная система Android, а не приложение. Приложение запрашивает у системы текущие координаты и сохраняет в интервью то, что она вернула.
Android использует несколько источников:
- Спутники GPS/ГЛОНАСС. Самый точный способ, интернет для него не нужен. Устройству нужна прямая видимость нескольких спутников, поэтому в помещении и среди плотной застройки координаты могут быть неточными или не определиться вовсе. Первое определение на новом месте может занять несколько минут.
- Вышки сотовой связи и Wi-Fi. Работает быстрее, но гораздо менее точно, и нужен доступ в интернет.
При запуске анкеты приложение запрашивает у операционной системы координаты. Если в наличии есть координаты, полученные хотя бы из какого-то одного источника, — Android отдаёт их. Если нет никаких, то — последние известные (где устройство в последний раз определило своё положение). Это может быть офис, дом интервьюера или предыдущая точка опроса, даже если с тех пор прошли часы.
Какие координаты попадают в интервью
- Если запись координат включена для всего интервью, сохраняются последние координаты, полученные во время заполнения анкеты, то есть на момент её завершения.
- Если запись координат включена для отдельного вопроса, координаты сохраняются в момент ответа на этот вопрос.
- Если до завершения интервью координаты так и не удалось определить, их в интервью не будет.
- Сохранённые координаты не меняются: ни при отправке интервью на сервер, ни после. Изменить их в уже сохранённом интервью нельзя.
- Адрес по координатам определяется на сервере после получения интервью, поэтому интернет во время опроса для этого не нужен.
Почему координаты не совпадают с местом опроса
- Опрос проходит в помещении или между высокими зданиями, и сигнал спутников не доходит.
- На устройстве выключена геолокация (модуль GPS). Тогда остаются только сотовая сеть и Wi-Fi, а без интернета — последние известные координаты.
- Интервьюер переехал на новую точку, а устройство ещё не успело определить новое местоположение.
- Спутниковый сигнал в районе опроса глушат или искажают.
- Интервьюер переместился во время интервью: в интервью попадает место, где анкету завершили.
- Координаты подменены с помощью специальной программы. Как это проверить, описано ниже.
Если ошибка случайная, неточные координаты встречаются в отдельных интервью. Если же у одного интервьюера много интервью подряд записаны в одну и ту же точку далеко от места опроса, скорее всего, устройство отдавало последние известные координаты.
Как избежать ошибок
В свойствах проекта можно включить:
- Требовать определения координат перед началом интервью. Интервью не начнётся, пока устройство не определит текущие координаты.
- Показывать карту и текущее положение перед началом интервью. Перед каждым интервью интервьюер увидит на карте, где, по мнению устройства, он находится, и сможет проверить, что точка верная. Продолжая опрос, интервьюер подтверждает своё местоположение.
Для загрузки карты нужен интернет. Загруженная область остаётся доступной и без него, но если интервьюер уйдёт за её пределы, понадобится интернет, чтобы подгрузить карту. Точка на сером фоне означает, что координаты определены, но карту загрузить не удалось.
Интервьюеру:
- держите геолокацию на устройстве включённой всё время работы;
- приехав на новую точку, дождитесь определения местоположения на открытом месте и проверьте точку на карте перед первым интервью.
Если координаты не определяются совсем, хотя геолокация включена, обсудите ситуацию с руководителем проекта. Можно отключить требование координат перед началом интервью, оставив их запись: тогда опрос начнётся сразу, а координаты сохранятся, если устройство успеет их определить до завершения интервью.
Как проверить координаты интервью
- В просмотре интервью значок в последней колонке показывает результат проверки координат на подделку. Места интервью можно посмотреть на карте.
- В выгрузке массива координаты находятся в колонках IVLAT и IVLONG, адрес — в IVADDR, результат проверки на подделку — в IVLocSpoof. Для последней при выгрузке нужно включить флаг Выгружать состояние проверок на подмену данных.