RMaps-ng: андроид-приложение для навигации. Техническая поддержка. - Страница 7 - О грибах и не только - Грибы средней полосы Перейти к публикации
=SM=

RMaps-ng: андроид-приложение для навигации. Техническая поддержка.

Рекомендованные сообщения

Pinned posts
=SM=

Открываю тему.

 

Сразу ссылка на последнюю версию - https://drive.google.com/file/d/1tqRqBHEeJ4GbFlWvbCDp2JeTctELsxP8/view?usp=sharing

 

Тут будет осуществляться техподдержка проекта навигационного приложения RMaps-ng, которое ориентируется на рыболовов и грибников.

Репозиторий с исходными текстами - https://github.com/SM-Sergey/RMaps-ng На гугл-плей пока его нет. Причина банальна - просто мне жалко 25 баксов для создания аккаунта разработчика там. Причина уже не банальна (2021) - для размещение там надо отказываться от поддержки старых андроидов, что в принципе политически неприемлемо. Так что, плей маркет приложению не светит.

 

В этой теме можно решить почти любой вопрос с использованием, расширением функциональности и устранением глюков этого приложения.

 

------------------------------------

история изменений с короткими комментариями.

Версия 0.10.0.1p5 - (09.06.2019) - https://drive.google.com/open?id=10_A-dl_yXOwFWOLhrFuKxhev1nRAYr4d

Версия 0.10.0.1p6 (11.09.2019) - добавлены некоторые источники карт из SAS.Планета - https://drive.google.com/open?id=12Z2kxYz7WGIVdYC79a20Gu4-CSwJMQH8

Версия 0.10.0.1p7 (12.09.2019) - попытка исправить запись трека с выключенным экраном на 9-ке  - https://drive.google.com/open?id=1dv-M_RCzK6vvlg_MeJP0b8QS4w92oF6M

Версия 0.10.0.1p8 (30.01.2020) - исправление нескольких "глюков" - экспорт POI, добавление пользовательских источников карт, галочки включения-выключения карт. - https://drive.google.com/open?id=1Se9M1S1pmcvyDy0a68kd0jFBNR6GqWCe

Версия 0.10.0.1p9 (01.02.2020) - устранен жесткий баг с SQLite файлами wal/shm и обрушиванием загрузчика карт на новых андроидах на некоторых устройствах. - https://drive.google.com/open?id=1g8BMHBNiDSTz-ldzRGF9XkZ9lcqAwYKR

Версия 0.10.0.1p12 (27.11.2021) - добавлено принудительное включение кнопки меню через "forcemenu.txt" в папке Rmaps, поправлены некоторые карты, добавлены повторные попытки загрузки тайлов при плохой связи, и еще некоторые изменения. https://drive.google.com/file/d/1B15VEOb8u6VH1Fj9902uOdItvg1V_H0D/view?usp=sharing

Версия 0.10.0.1p13 (28.11.2021) -  Вроде исправлено появление белых пятен на карте вместо кешированных тайлов при активном перемещении карты и плохой связи, и исправлена отрисовка треков на нецелых зумах. https://drive.google.com/file/d/1tqRqBHEeJ4GbFlWvbCDp2JeTctELsxP8/view?usp=sharing

  • Спасибо! 2
  • Класс!!! 3

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
=SM=

@paxanmoroz 

Да, кстати, про пользовательские источники карт - там тоже очень сильно расширены возможности - есть теперь вот такие подстановки в URL:

 

{x}  координата "x" по-гуглевски
{y}  координата "y" по-гуглевски               
{xd}  x / 1024             
{yd}  y / 1024            
{bx}  китайский x:   mod(x - (1 << (z-1)), (1 << z))            
{by}  китайский y: (1 << z) - 1 - mod(y - (1 << (z-1)), (1 << z));            
{ry}  обратный "y": (1<<z)-1-y  - такой например в OpenAIP     
{z}  масштаб "z" по-гуглевски              

{z+1}  масштаб "z", увеличенный на 1

{z-1}  масштаб "z", уменьшенный на 1
{17-z}  масштаб "z" наоборот, то есть 17-z  (так, например, у Vi-tel)     
{galileo}  гуглевская "байда", равная обрезку строки "Galileo" длиной в  ((x*3+y) % 8) символов

{r03}  случайная цифра 0..3
{r12}  случайная цифра 1..2
{r14}  случайная цифра 1..4
{r02}  случайная цифра 0..2
{r13}  случайная цифра 1..3
{rad}  случайная буква "a".."d"
{rab}  случайная буква "a".."b"
{rac}  случайная буква "a".."c"
{rxy}  число, равное x%4 + (y%4)*4  (такое у викимапии есть)

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Вадим Пастухов

В rmaps загружаю онлайн карту. Выделяю область, он ее грузит независимо от того, есть уже в кэше тайлы или нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Вадим Пастухов

В саспланете можно нажать кнопочку и посмотреть наличие тайлов в кэше на нужной области карты.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
=SM=

@Вадим Пастухов 

так галка в загрузчике онлайн карт есть "перезаписать существующие тайлы в файле" - она работает и при загрузке в кэш, и при загрузке в файл.

То есть, по желанию - можно обновить, а можно не обновлять.

 

А посмотреть наличие тайлов нельзя. Да и не понятно, как это делать - они же могут быть для одного масштаба, а для другого не быть.

 

Ну и можно грузить  в сас, и подключать полученную там карту в рмапс.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Вадим Пастухов

Даже при отжатой галке "перезаписывать..." он начинает заново грузить ту же область. Это я замечал давно еще на старых версиях.  И можно в дороге остаться без карты.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
=SM=

@Вадим Пастухов 

он имеющиеся тайлы при этом не перезаписывает. Просто "пробегает" их на экране, и все.

 

вот условие запроса на источник карты:

if (mOverwriteFile || mOverwriteTiles || !mMapDatabase.existsTile(tileParam.X, tileParam.Y, tileParam.Z))

то есть, если нет режима перезаписи файла и перезаписи тайлов, то проверяется наличие тайла, и только если его нет - делается загрузка.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Вадим Пастухов

Но время затрачивается такое же. А его иногда не хватает. 

С генштабом в крыму траблы. Их нет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
=SM=

Ага. Там есть баг - но и есть обход - надо "заглянуть" в режим записи в файл, сняв галку записи в кэш, и там снять галку перезаписи файла, а потом вернутся в режим записи в кэш. Иначе он будет все равно грузить тайлы, даже которые есть.

 

Это я обязательно устраню! Но быстро не могу. Тут где я сижу нету компа со средой разработки.

 

А про генштаб/ггц это не ко мне... Это к тем ресурсам, откуда карты эти берутся. Вроде километровка есть на топокарте - маршруты.ру и есть на "Genshtab 1km - SAS", а про другие я не знаю.

  • Спасибо! 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Вадим Пастухов

Нашел все иконки для точек, глубоко закопаны :)  А можно свои добавлять?. Хотелось бы сделать что-то наподобие мобильного редактора osm

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
=SM=

@Вадим Пастухов 

Не, иконки нельзя свои добавлять. И не сделаю. Я все таки программист "низкого уровня" - специалист по алгоритмам, математике железу и системному программированию, и всякие юзер-интерфейсные дела для меня сложны.

Этот набор иконок и то делал не я, а мой товарищ (Александр Могилкин - Levsha). Я бы ни в жизни не осилил.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Reingot

Приветствую! Огромное спасибо за оживление и поддержку этого приложения, пользуюсь им почти 10 лет. Установил вашу версию, все прекрасно. Отдельное спасибо за Wikimapia в списке карт. Но можно ли сделать так, чтобы Викимапия была не картой, а слоем, как в SAS.Planet, к примеру? Чтобы ее можно было накладывать на спутниковые снимки. Занимаюсь поиском с металлоискателем в заброшенных деревнях, мне бы такой функционал здорово пригодился. И еще такой момент: когда изменяешь верхнюю панель при вертикальной ориентации экрана, изменения не сохраняются в горизонтальной ориентации. Не то чтобы это сильно мешает, т.к. достаточно лишь раз все настроить в обеих ориентациях, но все же.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
=SM=

@Reingot 

 

Первое - наверняка можно сделать через пользовательский источник карт, если есть понимание что это и с чем едят, указав там галку "это слой". Там очень сильно расширен "ассортимент" шаблонов (https://forum.toadstool.ru/topic/5513-rmaps-ng-андроид-приложение-для-навигации-техническая-поддержка/?do=findComment&amp;comment=471150)

 

URL будет выглядеть так: 

http://i{rxy}.wikimapia.org/?lng=1&x={x}&y={y}&zoom={z}

 

А по второму - ну это специально так сделано, так как в разных моделях телефонов в разных ориентациях часто удобно делать по-разному.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Reingot

@=SM= Спасибо, попробую)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Вадим Пастухов

Вычитал в инете, что в apk можно менять графику и музыку, достаточно просто. Будем разбираться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
krasrab

Здравствуйте, вспомнил еще баг, в новой версии не проверял, а в оригинале было так: если интернет плохой, то с большим трудом загружаются файлы из кеша, а если инет выключить, то все становится нормально. Такое ощущение, что программа проверяет нет ли нового тайла на данном квадрате, или еще что-то в этом роде. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
=SM=

@krasrab 

Такого вроде пока не замечено. Я постоянно пользуюсь кешированными картами в условиях интернета от плохого и до совсем отсутствующего. Собственно, всё существует ради этого. И программа сама по себе не проверяет ничего, если есть тайл в кеше, то он берется, и все тут.

Возможно, такое кажущееся поведение было раньше потому, что программа не умела масштабировать тайлы из других масштабов, а ситуация, когда в кеше есть тайл одного масштаба, а тайла другого, сейчас нужного, масштаба нет - рядовая. Раньше он в этом случае лез в инернет за тайлом, которого нет в кэше, и ничего не показывал, а сейчас сначала показывает перемасштабированный тайл, взятый из ближайшего имеющегося в кеше масштаба, и только потом лезет за получением текущего, которого в кеше нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
krasrab

тут дело в том, что тайлы в кеше есть, а при плохом интернете он их как будто или заново скачивает, или что то проверяет. стоит отключить интернет, все становится нормально, тайлы показывает. На днях поеду покопать монетки, попробую в новой версии такую ситуацию потестить. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
=SM=
1 час назад, krasrab сказал:

На днях поеду покопать монетки, попробую в новой версии такую ситуацию потестить. 

Ну я только за. Когда я добавлял функциональность взятия и масштабирования тайлов из предыдущих масштабов, я там в этой части переписал почти всё - алгоритм сменен полностью.

Если раньше там был один диспетчер фоновой загрузки тайлов - просто на каждый тайл запускался один поток, то теперь диспетчеров стало аж три - первый уровень берет из кэша, а затем, если там нет, запрос передается одновременно в два других уровня - параллельно попытка "быстро" перемасштабировать тайл из более мелких масштабов кеша, и "медленно" загрузить из инета (тоже с попытками взять из меньших масштабов, если нет в текущем), а первый уровень тем временем переходит к поиску следующего тайла в кэше в порядке их очереди на отрисовку.

Итого сейчас всегда работает три потока диспетчеризации и по мере надобности, не более 4 потоков загрузки с интернета. Раньше, возможно, оно там "вставало" из-за перебора запущенных потоков...

 

То есть, сейчас теоретически такого не должно происходить в принципе, исключение это только пункт меню "инструменты - перезагрузить тайлы экрана" - она их сначала удаляет из кэша, а потом грузит заново.

 

--------------

И, да... На отдельных современных устройствах система кэширования вообще изредка "вставала", и это вплоть до моей февральской версии 2020, и начиная от старых родных версий. Причем с подпорчей кэш-файлов. Это можно проверить, заглянув файловым менеджером в папку с кешами, на предмет того, чтобы там не было десятков и сотен лишних файлов, содержащих в названиях ".wal" и ".shm". Если такое обнаружено, надо стереть там все файлы, кроме тех, которые имеют расширение строго ".sqlitedb", ".sqlitedbx" где x цифра, без всяких лишних добавок за этими расширениями, кроме их же с "-journal" . Я не знал об этом до тех пор, пока Blackview BV9800 Pro не заполучил. Но это говорит о том, что такое поведение может быть и на других девайсах, но не часто. Это, в таком случае, прямо таки критическая проблема была.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Вадим Пастухов

@=SM= А не бывает такого, что на масштабах выше 18 треки не отображаются и когда в окне точек ставишь галки , они сами деактивируются

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
=SM=

@Вадим Пастухов 

С треками проблема известная - перестают отображаться, если на экране оказывается всего одна точка трека, а вторая за пределами. Или если на экране вообще нет точек трека, обе ближайшие за пределами, но линия должна пересекать экран. Но я весь мозг уже сломал, как такой трек записать для теста, обычно же точки чаще получаются. Проблему буду решать.

С галками точек - вроде не замечено. Было с галками карт, устранено в 1p8

  • Нравится 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Вадим Пастухов

У старых версий с треками было все норм. Стоят обе версии 0.9.4 и прследняя. Импориированные треки пропадают уже с 17 масштаба. В треках минимум по 200 точек.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

×
Яндекс.Метрика