Программа tower предназначена для определения местоположения (по соте или GPS),
показа онлайн-карт, записи пользовательских путевых точек и треков.

Для ОС Андроид 6.0 и выше.


Из онлайн-карт на данный момент поддерживаются (выбор - на странице SETTINGS):

Координаты для показа карты можно задать тремя способами:

Для показа карт необходимо интернет-подключение (4G, 3G, GPRS-EDGE). Слой точек можно увидеть и без сети.

Для получения координат по номеру соты используются бесплатные веб-службы, на данный момент (выбор - на странице SETTINGS):

Иногда сервисы определяют координаты соты крайне приблизительно, задерживают ответ или совсем отказываются работать, особенно часто это случается при 3G телефонном подключении или неустойчивом приеме. Напротив, в городе в сети 4G координаты обычно определяются очень быстро с точностью порядка 100-300 м. Программа показывает информацию о соте (MCC - код страны, MNC - код оператора, LAC - номер района, CID - номер ячейки) и позволяет её сохранить даже при отсутствии координат/интернета.

Для использования GPS-приемника он должен присутствовать в приборе и, более того, быть включенным в его настройках :). При первом включении приемника после перерыва поиск спутников и определение GPS-координат вполне могут занять 5-10 минут, негативно сказываются также отсутствие интернета и закрытый горизонт.

Новые путевые точки создаются на странице ADD четырьмя способами

Каждая новая точка при создании получает порядковый номер, можно задать также краткое имя. Номер и имя отображаются на карте рядом с маркером. Размер самого маркера на карте не связан с погрешностью определения координат. Маркеры на карте не кликабельны, чтобы открыть точку для просмотра и редактирования используйте команду POINT (выбирает точку, ближайшую к центру карты) или кликните на нужную строку в списке команды LIST. На странице редактирования для точек типа gps можно увидеть высоту и погрешность, для типа cell - параметры соты и погрешность. Там же можно ввести подробный комментарий, сохраняемый вместе с точкой, но не отображаемый на карте.

Определение текущего местоположения производится по явной команде пользователя (CELL, GPS, ADD-Get). Никаких автоматических обновлений местоположения не предусмотрено, соответственно, и запись треков в данной реализации невозможна (по мнению автора, для этого нужно использовать навигатор, а не телефон - заряд может понадобиться для чего-то более важного).

Максимальное количество точек в списке задается на странице SETTINGS. Если предел достигнут, создание новой точки приводит к удалению самой старой. Можно установить для любой точки защиту (при её создании или на странице редактирования), тогда будет удалена самая старая из незащищенных точек. Если все точки защищены, для добавления новой придётся снять защиту, удалить одну из точек вручную (LIST - выбрать точку - Delete) или увеличить лимит. Предусмотрена команда LIST - Delete all, полностью очищающая список и сбрасывающая нумерацию в 0.

Имеется опция "сохранять удаляемые точки в файл trash.csv" (на странице SETTINGS), при её задействовании все удаляемые точки будут сохраняться в специальном файле trash.csv, расположенном в той же папке на виртуальной флэш-карте, что и основной список current.csv (наподобие sdcard/Android/data/truewatcher.tower/files/current.csv).

Обычно одна из точек служит центром для отсчёта расстояний (они отображаются в списке меню LIST вместе с номерами и именами точек). Можно выбрать центром любую из записанных путевых точек (LIST - выбрать точку - As center), новую точку (ADD - As center), а при успешном определении текущего местоположения по соте/GPS таким центром автоматически выбирается точка найденных координат, даже если её не добавили в список. Список точек можно отсортировать по расстоянию от этого центра (LIST - By proximity).

Можно работать с несколькими списками точек, для этого служит страница LIST - FILE.

Команды LIST - FILE - Open и New работают только с файлами csv, созданными данной программой. Их формат тривиален и списки можно редактировать вручную в неформатирующем текстовом редакторе. Команды Load, Export и Delete работают, кроме csv, также с форматом gpx, совместимо по импорту и экспорту с навигатором Garmin и многими картографическими программами. Команды Open и Load проверяют ожидаемое количество точек, если оно превышает максимальное - выдают ошибку. Команда View track загружает трек из выбранного gpx или csv-файла и отображает его на экране вместе с текущей картой и путевыми точками; команд для перемещения карты к загруженноиу треку или его очистки не предусмотрено; все загруженные для просмотра треки удаляются при закрытии программы. Не установлено явных пределов для количества точек трека или его сегментов; соответствующий javascript-код весьма эффективен и справляется с треками, содержащими десятки сегиентов и тысячи точек.

Начиная с версии 2.6 поддерживается запись трека (с помощью службы переднего плана). Для этого нужно открыть страницу TRACK и нажать кнопку Start либо Start new segment, должно появиться уведомление; чтобы остановить запись трека, нажмите Stop. Во время записи трека следите, чтобы окно программы (с любой её страницей) оставалось развёрнутым и самым верхним; если Вы свернёте его или запустите поверх него другое приложение (или, например, получите СМС), операционная система может произвольно остановить процесс через 1-2 минуты (по крайней мере, на некоторых телефонах). Отключение экрана кнопкой POWER не препятствует записи трека. Запись трека НЕ начинается автоматически при включении телефона и НЕ продолжается после перезагрузки. На странице настроек Вы можете установить (1) минимальное расстояние между точками трека (рекомендуемое значение - в 1.5..2 раза больше типичной точности GPS-приёмника, по умолчанию - 12 м), и (2) минимальный временной интервал (по умолчанию 10 с). По умолчанию, центр карты автоматически устанавливается на каждую новую точку трека; для отмены такого поведения имеется соответствующая настройка-переключатель. Вы также можете полностью скрыть текущий трек с карты (возможно, это несколько сэкономит батарею в процессе записи). Все точки трека по мере поступления сохраняются в файл currentTrack.csv. Трек можно сохранить в файл GPX командой LIST-Export track. Также может оказаться полезна команда TRACK-Delete last segment.

Для показа карт Яндекса используется скрипт Яндекс Карт, загружаемый каждый раз вместе с картой. Для прочих карт - бесплатная библиотека Leaflet JS, включенная в наш дистрибутив.

Некоторые из используемых веб-сервисов (на данный момент - Яндекс Карты и Яндекс Локатор), хотя и бесплатны для пользования, требуют ключей доступа. Поскольку эти ключи не должны попадать в открытые репозитории, данная программа может распространяться в двух вариантах сборки: полная (включающая ключи), либо сборка исключительно из открытого кода (без ключей).

Сборка без ключей является полностью функционирующей, за исключением доступа к соответствующим службам (весьма полезным, однако, на территории России и соседних государств). Пользователь такой сборки может ввести собственные ключи в соответствующие поля на странице SETTINGS (если там не видно ничего похожего - у Вас полная сборка). Получить ключи можно пытаться на https://developer.tech.yandex.ru/ и https://yandex.ru/dev/locator/keys/get/ соответственно.


Программа tower является свободно распространяемой, лицензия GNU GPL 3.0 или последующие, предоставляется бесплатно как есть без каких-либо гарантий

Она не содержит рекламы, платных предложений, модулей сбора статистики и шпионажа, иных зловредных включений,

Емэйл автора: rosc71 -AT- яндексРу

Скачать текущую полную версию tower.apk
2.6.8 март 2020, 1.18MB
md5 48ca764c14ee74534dcb93d216a4bcd2
sha256 2b12106dbcc2030bca767056713b1d97327b27cf37c88a9acd0c9411f0b5aea9
разрешения: ACCESS_COARSE_LOCATION, ACCESS_FINE_LOCATION, INTERNET, FOREGROUND_SERVICE

Эта же версия доступна в репозитории IzzyOnDroid F-Droid Repository

Github: исходный код, отслеживание ошибок