Мобильное ГИС приложение NextGIS Mobile: различия между версиями
Нет описания правки |
Нет описания правки |
||
Строка 1: | Строка 1: | ||
{{Статья|Черновик}} | {{Статья|Черновик}} | ||
{{Аннотация|Мобильная ГИС NextGIS Mobile | {{Аннотация|Мобильная ГИС NextGIS Mobile — это ПО для операционной системы Android, которое позволяет работать с геоданными «в поле».}} | ||
= Назначение программы = | = Назначение программы = | ||
Строка 7: | Строка 7: | ||
NextGIS Mobile позволяет: | NextGIS Mobile позволяет: | ||
*отображать карту и компас | *отображать карту и компас; | ||
*выполнять навигацию по карте (увеличение, уменьшение, перемещение) | *выполнять навигацию по карте (увеличение, уменьшение, перемещение); | ||
*вводить полевые данные (записываются координаты точки | *вводить полевые данные (записываются координаты точки с возможностью накопления статистики для более точного определения местоположения; описание из предопределенных категорий или произвольное; фотографии; ориентировка и дистанция до объекта, относительно точки; записывать примечание); | ||
*отображать вводимые точечные данные на карте | *отображать вводимые точечные данные на карте; | ||
*записывать треки | *записывать треки; | ||
*отображать координаты, скорость, высоту устройства на карте | *отображать координаты, скорость, высоту устройства на карте; | ||
*накапливать и передавать в фоновом режиме по сети Интернет (при наличии подключения) на сервер хранения данные о местоположении устройства | *накапливать и передавать в фоновом режиме по сети Интернет (при наличии подключения) на сервер хранения данные о местоположении устройства. | ||
{| | {| | ||
Строка 27: | Строка 27: | ||
= Условия выполнения программы = | = Условия выполнения программы = | ||
Для выполнения программы необходимо устройство под управлением операционной системы Android версии 2.3 и выше. Желательно, что бы устройство было оснащено следующим оборудованием: | Для выполнения программы необходимо устройство под управлением операционной системы Android версии 2.3 и выше. Желательно, что бы устройство было оснащено следующим оборудованием: | ||
*датчик GPS и/или ГЛОНАСС | *датчик GPS и/или ГЛОНАСС; | ||
*цифровой компас | *цифровой компас; | ||
*модуль сотовой связи | *модуль сотовой связи; | ||
*тыловая фотокамера | *тыловая фотокамера. | ||
Если какое либо оборудование отсутствует | Если какое либо оборудование из перечисленного отсутствует в устройстве, то связанные функции будут не доступны. | ||
Программа не предъявляет специфических системных требований, однако, количество оперативной памяти и памяти для хранения данных может ограничивать размер загружаемых карт. | Программа не предъявляет специфических системных требований, однако, количество оперативной памяти и памяти для хранения данных может ограничивать размер загружаемых карт. | ||
= Выполнение программы = | = Выполнение программы = | ||
Программа устанавливается на устройство при помощи пакетного файла '''nextgismobile.apk'''. Для установки из пакетного файла необходимо в настройках устройства разрешить установку программ из неизвестных источников ( | Программа устанавливается на устройство при помощи пакетного файла '''nextgismobile.apk'''. Для установки из пакетного файла необходимо в настройках устройства разрешить установку программ из неизвестных источников («настройки/безопасность/неизвестные источники»). После установки программы возможность установки из неизвестных источников можно деактивировать. | ||
Для запуска программы используется ярлык, автоматически создаваемый при ее | Для запуска программы используется ярлык, автоматически создаваемый при ее установке (рис. 1). | ||
[[Image:Shortcut.png|300px|thumb|center|Рис. 1. Ярлыки приложений (красным пунктиром выделен ярлык NextGIS Mobile).]] | [[Image:Shortcut.png|300px|thumb|center|Рис. 1. Ярлыки приложений (красным пунктиром выделен ярлык NextGIS Mobile).]] | ||
Строка 45: | Строка 45: | ||
= Порядок загрузки, запуска и завершения программы = | = Порядок загрузки, запуска и завершения программы = | ||
После установки программы ее можно использовать. Однако, рекомендуется провести ряд подготовительных операций: | После установки программы ее можно использовать. Однако, рекомендуется провести ряд подготовительных операций: | ||
*подготовить и загрузить на устройство файл категорий и подкатегорий для ввода точек | *подготовить и загрузить на устройство файл категорий и подкатегорий для ввода точек; | ||
*кэш тайлов карт для работы без доступа к сети Интернет | *кэш тайлов карт для работы без доступа к сети Интернет. | ||
== Файл категорий и подкатегорий == | == Файл категорий и подкатегорий == | ||
Строка 55: | Строка 55: | ||
При первом запуске в папке с данными программы будет сформирован шаблон файла категорий и подкатегорий. | При первом запуске в папке с данными программы будет сформирован шаблон файла категорий и подкатегорий. | ||
Файл располагается в папке с программой (обычно по следующему пути: Android/data/com.nextgis.mobile/files/categories.xml). Файл может быть скачан с устройства и отредактирован. '''Переименование файла и изменение его кодировки не допускается. '''После изменений | Файл располагается в папке с программой (обычно по следующему пути: Android/data/com.nextgis.mobile/files/categories.xml). Файл может быть скачан с устройства и отредактирован. '''Переименование файла и изменение его кодировки не допускается. '''После изменений файл необходимо скопировать обратно на устройство в папку с данными программы (Android/data/com.nextgis.mobile/files). | ||
Файл categories.xml имеет следующую структуру: | Файл '''categories.xml''' имеет следующую структуру: | ||
<syntaxhighlight lang="xml"> | <syntaxhighlight lang="xml"> | ||
Строка 76: | Строка 76: | ||
</categories> | </categories> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Файл включает в себя стандартный заголовок XML (<nowiki><?xml version="1.0" encoding="utf-8"?></nowiki>), далее следуют | Файл включает в себя стандартный заголовок XML (<nowiki><?xml version="1.0" encoding="utf-8"?></nowiki>), далее следуют тег набора категорий (<nowiki><categories> … </categories></nowiki>), внутри тега набора категорий идут теги отдельных категорий (<nowiki><category name="animals"> … </category></nowiki>), внутри тега категорий перечисляются подкатегории (<nowiki><subcategory name="Aconitum"/></nowiki>). При наличии тега <nowiki><category name="custom"/></nowiki> появляется возможность вводить пользовательские данные в отдельное поле ввода (см. рис. 2 п. 3), иначе поле деактивировано. | ||
Для задания необходимых значений, которые будут выводится в списках 1 и 2 диалога ввода точки (см. рис. 2) используется атрибут name="Aconitum". В кавычках указывается необходимое значение, которое появится в | Для задания необходимых значений, которые будут выводится в списках 1 и 2 диалога ввода точки (см. рис. 2), используется атрибут name="Aconitum". В кавычках указывается необходимое значение, которое появится в соответствующих списках. | ||
== Подготовка карт для работы без доступа к сети Интернет == | == Подготовка карт для работы без доступа к сети Интернет == | ||
При отображении карты в программе могут использоваться | При отображении карты в программе могут использоваться как источники из сети Интернет (OpenStreetMap), так и данные на самом устройстве. | ||
Для работы без доступа к сети Интернет необходимо сформировать один или несколько архивов с кэшем тайлов и загрузить их на устройство. | Для работы без доступа к сети Интернет необходимо сформировать один или несколько архивов с кэшем тайлов и загрузить их на устройство. | ||
Строка 87: | Строка 87: | ||
Для формирования архивов рекомендуется использовать настольную ГИС NextGIS QGIS совместно с модулем расширения [http://gis-lab.info/qa/qtiles.html QTiles] (см. рис. 3). | Для формирования архивов рекомендуется использовать настольную ГИС NextGIS QGIS совместно с модулем расширения [http://gis-lab.info/qa/qtiles.html QTiles] (см. рис. 3). | ||
[[Image:Qtiles-02.png|300px|thumb|center|Рис. 3. Диалог конфигурирования экспорта тайлов из состава модуля QTiles.]]Сформированные при помощи модуля QTiles архивы с кэшем тайлов следует загрузить на устройство в папку osmdroid, которая обычно располагается в корне карточки памяти (SDCard) или в корне файловой системы устройства. Архивам можно присвоить любые названия. При выборе масштаба тайлов не рекомендуется ставить максимальный масштаб более 19 | [[Image:Qtiles-02.png|300px|thumb|center|Рис. 3. Диалог конфигурирования экспорта тайлов из состава модуля QTiles.]] Сформированные при помощи модуля QTiles архивы с кэшем тайлов следует загрузить на устройство в папку '''osmdroid, которая обычно располагается в корне карточки памяти (SDCard) или в корне файловой системы устройства. Архивам можно присвоить любые названия. При выборе масштаба тайлов не рекомендуется ставить максимальный масштаб более 19 — карта не поддерживает зуммирование на большие уровни, а лишние тайлы занимают место в памяти устройства и приводят к задержкам при чтении содержимого архива. | ||
Для ускорения работы программы рекомендуется держать в папке osmdroid только те архивы кэша тайлов, которые необходимы в текущий момент. Остальные архивы можно положить в отдельную папку и переносить в папку osmdroid по мере необходимости, а также возвращать обратно архивы, надобность в которых отпала. | Для ускорения работы программы рекомендуется держать в папке '''osmdroid''' только те архивы кэша тайлов, которые необходимы в текущий момент. Остальные архивы можно положить в отдельную папку и переносить в папку '''osmdroid''' по мере необходимости, а также возвращать обратно архивы, надобность в которых отпала. | ||
Кроме того, можно загрузить тайловый кэш не выполняя архивирование в директорию osmdroid/tiles. Это может значительно ускорить отрисовку карты. Однако, при подключении к сети Интернет, тайлы могут быть перезаписаны тайлами, полученными из OpenStreetMap. | Кроме того, можно загрузить тайловый кэш, не выполняя архивирование в директорию '''osmdroid/tiles'''. Это может значительно ускорить отрисовку карты. Однако, при подключении к сети Интернет, тайлы могут быть перезаписаны тайлами, полученными из OpenStreetMap. | ||
= Описание функций = | = Описание функций = | ||
Строка 121: | Строка 121: | ||
На рисунке цифрами обозначено: | На рисунке цифрами обозначено: | ||
#Кнопка возврата к предыдущему экрану. Работает аналогично аппаратной (или программной) кнопке | #Кнопка возврата к предыдущему экрану. Работает аналогично аппаратной (или программной) кнопке возврата. | ||
#Кнопка меню. | #Кнопка меню. | ||
#Циферблат компаса. Можно вращать для удобства определения азимута на цель. | #Циферблат компаса. Можно вращать для удобства определения азимута на цель. | ||
Строка 136: | Строка 136: | ||
На рисунке цифрами обозначено: | На рисунке цифрами обозначено: | ||
# | #Открытый список категорий. | ||
#Перечень вкладок с экранами. Переход между вкладками можно выполнять нажатием на заголовок вкладки или перелистыванием. | #Перечень вкладок с экранами. Переход между вкладками можно выполнять нажатием на заголовок вкладки или перелистыванием. | ||
#Кнопка ввода точки. Кнопка присутствует на всех экранах. При ее нажатии данные записываются в файл. | #Кнопка ввода точки. Кнопка присутствует на всех экранах. При ее нажатии данные записываются в файл. | ||
Строка 155: | Строка 155: | ||
#Поле ввода расстояния. | #Поле ввода расстояния. | ||
Каждой вводимой точки могут быть сопоставлены одна или несколько фотографий. Для съемки и ввода фотографий служит экран ввода фотографий (см. рис. 8). | |||
[[Image:Input 3.png|300px|thumb|center|Рис. 8. Экран ввода фотографий.]] | [[Image:Input 3.png|300px|thumb|center|Рис. 8. Экран ввода фотографий.]] | ||
Строка 161: | Строка 161: | ||
На рисунке цифрами обозначено: | На рисунке цифрами обозначено: | ||
#Кнопка для съемки фотографии. В стандартном приложении съемки фотографий нужно нажать кнопку ввода полученной фотографии | #Кнопка для съемки фотографии. В стандартном приложении съемки фотографий нужно нажать кнопку ввода полученной фотографии для того, чтобы она появилась в списке 2. | ||
#Список выполненных фотографий. Все фотографии сохраняются в папке с данными программы, в подпапке Pictures (например, путь может быть таким: Android/data/com.nextgis.mobile/files/Pictures). | #Список выполненных фотографий. Все фотографии сохраняются в папке с данными программы, в подпапке '''Pictures''' (например, путь может быть таким: '''Android/data/com.nextgis.mobile/files/Pictures)'''. | ||
Последний экран (см. рис. 9) служит для ввода примечания, а также отображает краткую сводку. | Последний экран (см. рис. 9) служит для ввода примечания, а также отображает краткую сводку. | ||
[[Image:Input 4.png|300px|thumb|center|Рис. 9. Экран ввода примечания.]]После ввода точки в папке | [[Image:Input 4.png|300px|thumb|center|Рис. 9. Экран ввода примечания.]]После ввода точки в папке с данными программы будет создан файл '''points.csv''', куда будут записаны данные. Если файл уже создан, то данные будут записаны в конец файла. | ||
Файл points.csv имеет следующие поля (колонки): | Файл '''points.csv''' имеет следующие поля (колонки): | ||
#date_time – дата и время | #date_time – дата и время | ||
#lat – широта | #lat – широта | ||
#lon – долгота | #lon – долгота | ||
#acc – точность (данные о точности получаются либо из операционной системы | #acc – точность (данные о точности получаются либо из операционной системы, либо рассчитываются самостоятельно, в зависимости от настроек) | ||
#error_est – способ определения ошибки местоположения | #error_est – способ определения ошибки местоположения | ||
#h – высота | #h – высота | ||
#dir – направление движения в момент съемки координат | #dir – направление движения в момент съемки координат | ||
#src – источник позиционной информации (GPS, ,базовые станции, WiFi) | #src – источник позиционной информации (GPS, ,базовые станции, WiFi) | ||
#speed – скорость движения | #speed – скорость движения | ||
#gps_t – время GPS | #gps_t – время GPS | ||
#cat – категория | #cat – категория | ||
#subcut – подкатегория | #subcut – подкатегория | ||
#az – азимут указанный при помощи компаса | #az – азимут указанный при помощи компаса | ||
#len – расстояние указанное на экране ввода ориентировки | #len – расстояние указанное на экране ввода ориентировки | ||
#desc – описание | #desc – описание | ||
#photos – массив имен фотографий | #photos – массив имен фотографий | ||
#photos_az – массив азимутов соответствующих фотографиям | #photos_az – массив азимутов, соответствующих фотографиям | ||
Для записи треков служит кнопка 7 см. рис. 4. При нажатии кнопки стартует отдельный сервис записи. Программа может быть свернута в фон и запись не прервется. | Для записи треков служит кнопка 7 (см. рис. 4). При нажатии кнопки стартует отдельный сервис записи. Программа может быть свернута в фон и запись не прервется. | ||
Для контроля за состоянием записи треков в строке статуса операционной системы выводится иконка (см. рис. 10). При ее нажатии программа активируется. | Для контроля за состоянием записи треков в строке статуса операционной системы выводится иконка (см. рис. 10). При ее нажатии программа активируется. | ||
Строка 194: | Строка 194: | ||
[[Image:Notify.png|300px|thumb|center|Рис. 10. Иконка записи трека в строке статуса.]] | [[Image:Notify.png|300px|thumb|center|Рис. 10. Иконка записи трека в строке статуса.]] | ||
Запись трека ведется в стандартном формате GPX. Треки сохраняются при повторном нажатии на кнопку записи. При этом создается файл с расширение gpx в подпапке GPX папки | Запись трека ведется в стандартном формате GPX. Треки сохраняются при повторном нажатии на кнопку записи. При этом создается файл с расширение gpx в подпапке '''GPX''' папки с данными программы (например, '''Android/data/com.nextgis.mobile/files/gpx'''). | ||
На рисунках 11 и 12 представлены экраны настроек и сведений о программе соответственно. | На рисунках 11 и 12 представлены экраны настроек и сведений о программе соответственно. | ||
Строка 213: | Строка 213: | ||
#*запускать службу при старте системы – запускает фоновые службы отслеживания местоположения и отправки координат при старте системы. | #*запускать службу при старте системы – запускает фоновые службы отслеживания местоположения и отправки координат при старте системы. | ||
#Точность снятия координат: | #Точность снятия координат: | ||
#*отметка уточненного | #*отметка уточненного снятия координат – если стоит отметка, включается режим накопления координат и усреднения местоположения точки; | ||
#*количество измерений GPS координат – количество координат которые надо накопить для усреднения местоположения точки; | #*количество измерений GPS координат – количество координат, которые надо накопить для усреднения местоположения точки; | ||
#*радиус погрешности – способ расчета погрешности (CE50, CE90, CE95 и CE98). | #*радиус погрешности – способ расчета погрешности (CE50, CE90, CE95 и CE98). | ||
#Установки местоположения: | #Установки местоположения: | ||
#*формат ввода координат (ГГ-ММ-СС.СС, ГГ-ММ.ММ или ГГ.ГГГГ); | #*формат ввода координат (ГГ-ММ-СС.СС, ГГ-ММ.ММ или ГГ.ГГГГ); | ||
#*вибрация при касании компаса; | #*вибрация при касании компаса; | ||
#*не выключать экран когда активен компас; | #*не выключать экран, когда активен компас; | ||
#*показывать истинный полюс; | #*показывать истинный полюс; | ||
#*показывать магнитный полюс. | #*показывать магнитный полюс. | ||
#Установки передачи данных: | #Установки передачи данных: | ||
#*минимальное время между посылками местоположения – большая частота посылок местоположения может разряжать батарею устройства; | #*минимальное время между посылками местоположения – большая частота посылок местоположения может разряжать батарею устройства; | ||
#*выводить из режима сна для посылки местоположения – в операционной системе имеется планировщик, который пробуждает устройства для выполнения типовых операций (проверка почты, синхронизация и т. п.). Если будет активирована данная настройка, то | #*выводить из режима сна для посылки местоположения – в операционной системе имеется планировщик, который пробуждает устройства для выполнения типовых операций (проверка почты, синхронизация и т. п.). Если будет активирована данная настройка, то устройство будет пробуждаться чаще, что может быстрее разряжать батарею устройства; | ||
#*запуск/ | #*запуск/остановка службы передачи местоположения. | ||
#Установки трекера: | #Установки трекера: | ||
#*минимальное расстояние на котором будут фиксироваться точки трека; | #*минимальное расстояние, на котором будут фиксироваться точки трека; | ||
#*минимальное время через которое будут фиксироваться точки трека; | #*минимальное время, через которое будут фиксироваться точки трека; | ||
#*запуск/ | #*запуск/остановка службы трекера – при активировании будут записываться координаты для фоновой передачи на сервер хранения. | ||
Ниже приведен пример простого скрипта | Ниже приведен пример простого PHP-скрипта для записи информации о местоположении на сервере хранения. | ||
<syntaxhighlight lang="php"> | <syntaxhighlight lang="php"> | ||
<?php | <?php |
Версия от 14:56, 18 июня 2013
Мобильная ГИС NextGIS Mobile — это ПО для операционной системы Android, которое позволяет работать с геоданными «в поле».
Назначение программы
Мобильная ГИС NextGIS Mobile представляет собой программное обеспечение с открытым исходным кодом (лицензия GPL) для операционной системы Android. NextGIS Mobile может функционировать на смартфонах и планшетах, которые управляются этой операционной системой.
NextGIS Mobile позволяет:
- отображать карту и компас;
- выполнять навигацию по карте (увеличение, уменьшение, перемещение);
- вводить полевые данные (записываются координаты точки с возможностью накопления статистики для более точного определения местоположения; описание из предопределенных категорий или произвольное; фотографии; ориентировка и дистанция до объекта, относительно точки; записывать примечание);
- отображать вводимые точечные данные на карте;
- записывать треки;
- отображать координаты, скорость, высоту устройства на карте;
- накапливать и передавать в фоновом режиме по сети Интернет (при наличии подключения) на сервер хранения данные о местоположении устройства.
Создание открытого ПО ГИС и реализация проектов |
Получение и установка
Программа доступна на сайте компании NextGIS.
Исходный код программы размещен в репозитории.
Условия выполнения программы
Для выполнения программы необходимо устройство под управлением операционной системы Android версии 2.3 и выше. Желательно, что бы устройство было оснащено следующим оборудованием:
- датчик GPS и/или ГЛОНАСС;
- цифровой компас;
- модуль сотовой связи;
- тыловая фотокамера.
Если какое либо оборудование из перечисленного отсутствует в устройстве, то связанные функции будут не доступны.
Программа не предъявляет специфических системных требований, однако, количество оперативной памяти и памяти для хранения данных может ограничивать размер загружаемых карт.
Выполнение программы
Программа устанавливается на устройство при помощи пакетного файла nextgismobile.apk. Для установки из пакетного файла необходимо в настройках устройства разрешить установку программ из неизвестных источников («настройки/безопасность/неизвестные источники»). После установки программы возможность установки из неизвестных источников можно деактивировать.
Для запуска программы используется ярлык, автоматически создаваемый при ее установке (рис. 1).
Порядок загрузки, запуска и завершения программы
После установки программы ее можно использовать. Однако, рекомендуется провести ряд подготовительных операций:
- подготовить и загрузить на устройство файл категорий и подкатегорий для ввода точек;
- кэш тайлов карт для работы без доступа к сети Интернет.
Файл категорий и подкатегорий
Файл категорий и подкатегорий служит для формирования диалога ввода точек. На первой вкладке диалога (см. рис. 2) пользователю предлагается ввести описание вводимой точки.
Для повышения оперативности ввода точки и исключения печати на экранной клавиатуре используются выпадающие списки (категорий и подкатегорий). Значения в списке получаются из файла категорий и подкатегорий. При выборе в списке какой либо категории, в списке подкатегорий буду заполнены соответствующие этой категории значения и установлена первая подкатегория. После этого пользователь сможет выбрать необходимую подкатегорию.
При первом запуске в папке с данными программы будет сформирован шаблон файла категорий и подкатегорий.
Файл располагается в папке с программой (обычно по следующему пути: Android/data/com.nextgis.mobile/files/categories.xml). Файл может быть скачан с устройства и отредактирован. Переименование файла и изменение его кодировки не допускается. После изменений файл необходимо скопировать обратно на устройство в папку с данными программы (Android/data/com.nextgis.mobile/files).
Файл categories.xml имеет следующую структуру:
<?xml version="1.0" encoding="utf-8"?>
<categories>
<category name="animals">
<subcategory name="marsupials"/>
<subcategory name="carnivores"/>
...
</category>
<category name="plants">
<subcategory name="Aconitum"/>
<subcategory name="Datura"/>
...
</category>
<!-- add button to add custom subcategory -->
<category name="custom"/>
</categories>
Файл включает в себя стандартный заголовок XML (<?xml version="1.0" encoding="utf-8"?>), далее следуют тег набора категорий (<categories> … </categories>), внутри тега набора категорий идут теги отдельных категорий (<category name="animals"> … </category>), внутри тега категорий перечисляются подкатегории (<subcategory name="Aconitum"/>). При наличии тега <category name="custom"/> появляется возможность вводить пользовательские данные в отдельное поле ввода (см. рис. 2 п. 3), иначе поле деактивировано.
Для задания необходимых значений, которые будут выводится в списках 1 и 2 диалога ввода точки (см. рис. 2), используется атрибут name="Aconitum". В кавычках указывается необходимое значение, которое появится в соответствующих списках.
Подготовка карт для работы без доступа к сети Интернет
При отображении карты в программе могут использоваться как источники из сети Интернет (OpenStreetMap), так и данные на самом устройстве.
Для работы без доступа к сети Интернет необходимо сформировать один или несколько архивов с кэшем тайлов и загрузить их на устройство.
Для формирования архивов рекомендуется использовать настольную ГИС NextGIS QGIS совместно с модулем расширения QTiles (см. рис. 3).
Сформированные при помощи модуля QTiles архивы с кэшем тайлов следует загрузить на устройство в папку osmdroid, которая обычно располагается в корне карточки памяти (SDCard) или в корне файловой системы устройства. Архивам можно присвоить любые названия. При выборе масштаба тайлов не рекомендуется ставить максимальный масштаб более 19 — карта не поддерживает зуммирование на большие уровни, а лишние тайлы занимают место в памяти устройства и приводят к задержкам при чтении содержимого архива.
Для ускорения работы программы рекомендуется держать в папке osmdroid только те архивы кэша тайлов, которые необходимы в текущий момент. Остальные архивы можно положить в отдельную папку и переносить в папку osmdroid по мере необходимости, а также возвращать обратно архивы, надобность в которых отпала.
Кроме того, можно загрузить тайловый кэш, не выполняя архивирование в директорию osmdroid/tiles. Это может значительно ускорить отрисовку карты. Однако, при подключении к сети Интернет, тайлы могут быть перезаписаны тайлами, полученными из OpenStreetMap.
Описание функций
Главный экран программы представлен на рисунке 4.
На рисунке цифрами обозначено:
- Меню выбора экранов. Включает в себя пункты: "Карта" и "Компас".
- Карта.
- Кнопки увеличения и уменьшения карты.
- Кнопка меню.
- Кнопка центрирования карты в координатах, полученных от провайдера данных местоположения (GPS, Wi-Fi или по базовым станциям).
- Кнопка включения/отключения показа окна информации (скорость, координаты и высота).
- Кнопка включения/отключения записи GPS трека.
- Кнопка ввода точки.
- Кружок ошибки определения координат.
- Местоположение устройства на карте.
Кнопка меню показывается только на тех устройства, на которых нет аппаратной кнопки. В состав меню входят следующие пункты:
- Настройки
- О программе.
Экран компаса представлен на рисунке 5.
На рисунке цифрами обозначено:
- Кнопка возврата к предыдущему экрану. Работает аналогично аппаратной (или программной) кнопке возврата.
- Кнопка меню.
- Циферблат компаса. Можно вращать для удобства определения азимута на цель.
- Азимут направления (зависит от ориентации устройства).
- Стрелка С-Ю.
- Индикатор "горизонтального" расположения устройства для более точного получения направления на стороны света.
Ввод точек представляет собой пошаговый мастер (см. рис. 6 - 9). В диалоге можно перейти к любому шагу или сразу же нажать на кнопку ввода.
На рисунке 6 представлен экран ввода описания точки.
На рисунке цифрами обозначено:
- Открытый список категорий.
- Перечень вкладок с экранами. Переход между вкладками можно выполнять нажатием на заголовок вкладки или перелистыванием.
- Кнопка ввода точки. Кнопка присутствует на всех экранах. При ее нажатии данные записываются в файл.
- Кнопка отмены. При нажатии на кнопку закрывается диалог.
- Кнопка меню.
- Категория "custom" для ввода пользовательской информации.
После экрана ввода описания, следует экран ввода ориентировки. Если нет возможности подойти к точке, то можно указать ориентировку на нее. Для этого необходимо повернуть циферблат компаса, что бы красная стрелка указывала на необходимый объект и указать расстояние до него.
Экран ввода ориентировки представлен на рисунке 7.
На рисунке цифрами обозначено:
- Азимут направления на объект.
- Циферблат для указания направления.
- Поле ввода расстояния.
Каждой вводимой точки могут быть сопоставлены одна или несколько фотографий. Для съемки и ввода фотографий служит экран ввода фотографий (см. рис. 8).
На рисунке цифрами обозначено:
- Кнопка для съемки фотографии. В стандартном приложении съемки фотографий нужно нажать кнопку ввода полученной фотографии для того, чтобы она появилась в списке 2.
- Список выполненных фотографий. Все фотографии сохраняются в папке с данными программы, в подпапке Pictures (например, путь может быть таким: Android/data/com.nextgis.mobile/files/Pictures).
Последний экран (см. рис. 9) служит для ввода примечания, а также отображает краткую сводку.
После ввода точки в папке с данными программы будет создан файл points.csv, куда будут записаны данные. Если файл уже создан, то данные будут записаны в конец файла.
Файл points.csv имеет следующие поля (колонки):
- date_time – дата и время
- lat – широта
- lon – долгота
- acc – точность (данные о точности получаются либо из операционной системы, либо рассчитываются самостоятельно, в зависимости от настроек)
- error_est – способ определения ошибки местоположения
- h – высота
- dir – направление движения в момент съемки координат
- src – источник позиционной информации (GPS, ,базовые станции, WiFi)
- speed – скорость движения
- gps_t – время GPS
- cat – категория
- subcut – подкатегория
- az – азимут указанный при помощи компаса
- len – расстояние указанное на экране ввода ориентировки
- desc – описание
- photos – массив имен фотографий
- photos_az – массив азимутов, соответствующих фотографиям
Для записи треков служит кнопка 7 (см. рис. 4). При нажатии кнопки стартует отдельный сервис записи. Программа может быть свернута в фон и запись не прервется.
Для контроля за состоянием записи треков в строке статуса операционной системы выводится иконка (см. рис. 10). При ее нажатии программа активируется.
Запись трека ведется в стандартном формате GPX. Треки сохраняются при повторном нажатии на кнопку записи. При этом создается файл с расширение gpx в подпапке GPX папки с данными программы (например, Android/data/com.nextgis.mobile/files/gpx).
На рисунках 11 и 12 представлены экраны настроек и сведений о программе соответственно.
Настройки
Настройки программы имеют следующий состав:
- Основные установки:
- идентификатор пользователя – идентификатор, который сопровождает данные о местоположении устройства, передаваемые на сервер;
- сервер хранения – путь до скрипта записи данных местоположения устройства;
- запускать службу при старте системы – запускает фоновые службы отслеживания местоположения и отправки координат при старте системы.
- Точность снятия координат:
- отметка уточненного снятия координат – если стоит отметка, включается режим накопления координат и усреднения местоположения точки;
- количество измерений GPS координат – количество координат, которые надо накопить для усреднения местоположения точки;
- радиус погрешности – способ расчета погрешности (CE50, CE90, CE95 и CE98).
- Установки местоположения:
- формат ввода координат (ГГ-ММ-СС.СС, ГГ-ММ.ММ или ГГ.ГГГГ);
- вибрация при касании компаса;
- не выключать экран, когда активен компас;
- показывать истинный полюс;
- показывать магнитный полюс.
- Установки передачи данных:
- минимальное время между посылками местоположения – большая частота посылок местоположения может разряжать батарею устройства;
- выводить из режима сна для посылки местоположения – в операционной системе имеется планировщик, который пробуждает устройства для выполнения типовых операций (проверка почты, синхронизация и т. п.). Если будет активирована данная настройка, то устройство будет пробуждаться чаще, что может быстрее разряжать батарею устройства;
- запуск/остановка службы передачи местоположения.
- Установки трекера:
- минимальное расстояние, на котором будут фиксироваться точки трека;
- минимальное время, через которое будут фиксироваться точки трека;
- запуск/остановка службы трекера – при активировании будут записываться координаты для фоновой передачи на сервер хранения.
Ниже приведен пример простого PHP-скрипта для записи информации о местоположении на сервере хранения.
<?php
$uid = $_GET["uid"];
$acc = $_GET["acc"];
$alt = $_GET["alt"];
$dir = $_GET["dir"];
$lat = $_GET["lat"];
$lon = $_GET["lon"];
$prov = $_GET["prov"];
$speed = $_GET["speed"];
$time = $_GET["time"];
$time_utc = $_GET["time_utc"];
$str = $uid.";".$acc.";".$alt.";".$dir.";".$lat.";".$lon.";".$prov.";".$speed.";".$time.";".$time_utc.";\n";
$fhandle = fopen($uid.".csv",'a+');
fwrite($fhandle, $str);
fclose($fhandle);
?>
Сообщения пользователю
1. | Служба трекера запущена | Всплывающее сообщение при старте службы записи местоположения для фоновой передачи. |
2. | Служба трекера остановлена | Всплывающее сообщение при остановке службы записи местоположения для фоновой передачи. |
3. | Служба передачи местоположения запущена | Всплывающее сообщение при старте службы передачи местоположения в фоновом режиме. |
4. | Служба передачи местоположения остановлена | Всплывающее сообщение при остановке службы передачи местоположения в фоновом режиме. |
5. | Ошибка определения координат | Всплывающее сообщение, если не удалось определить координаты по всем провайдерам местоположения. В основном возникает при попытке поставить точку до того как получены координаты местоположения. |