View Issue Details

IDProjectCategoryView StatusLast Update
0003349SAS.ПланетаХотелка / Feature requestpublic27-03-2019 12:22
Reporterproba999 Assigned To 
PrioritynormalSeverityfeatureReproducibilityhave not tried
Status confirmedResolutionopen 
PlatformPCOSWindowsOS Version7 - 8 - 10
Product Version160707 
Target Version50xxxx.VIP 
Summary0003349: Экспорт в новую версию кэша Яндекс.Карт
DescriptionЗдравствуйте коллеги!

Есть экспорт закачанных областей в формат ЯндексКарт, поддерживаются старые версии кеша, V3 и V4.
Можете ли сделать экспорт в новый формат кеша ЯндексКарт?

Как я смог понять на сегодня, ЯндексКарты слой Карты пишется в отдельные файлы (тот что закачиваешь по областям\городам прямо из самой программы).
Они то ли в папке driving, то ли в search, я не знаю ещё.
А вот тот кеш, что "наелозил" пальцем по экрану, пишется в файл tiles.sqlite. Как только его размер составит 2097088 кб создаётся следующий файл tiles.sqlite001 и так далее (для файловой системы FAT32 предел - 2 Гб).
То-есть, если станет известна структура нового кеша, САСПланете нужно взять файлы у пользователя и как-то добавить в них новую информацию...

В общем, это уже не для моих познаний, думайте, Разработчики!
Additional InformationВкладываю 4 скрина.
1 - содержимое папки ru.yandex.yandexmaps (ЯКарты для Андроид)
2 - содержимое папки driving, вложенной в папку ru.yandex.yandexmaps
3 - содержимое папки search, вложенной в папку ru.yandex.yandexmaps
4 - содержимое папки ЯКарт для Windows 10
Tagsмяк, экспорт, яндекс
Attached Files
Без-имени-1.jpg (81,447 bytes)   
Без-имени-1.jpg (81,447 bytes)   
Без-имени-2.jpg (237,113 bytes)   
Без-имени-2.jpg (237,113 bytes)   
Без-имени-3.jpg (286,217 bytes)
Без-имени-4.jpg (266,055 bytes)

Activities

zed

08-07-2018 11:38

manager   ~0018352

Карты, которые загружаются для оффлайн просмотра, сохраняются так же tiles.sqlite. Информация о том, какой регион пользователь загружал, наверное, сохраняется где-то ещё (чтобы можно было эту область потом обновить). Но вот сами тайлы лежат все в куче. Причём, и спутник, и гибрид - всё в одной БД.

Структура таблиц довольно простая:

CREATE TABLE itemsen_BY (id INTEGER PRIMARY KEY, itemid VARCHAR, data BLOB, version VARCHAR, etag VARCHAR);

CREATE UNIQUE INDEX itemsen_BY_id_index ON itemsen_BY(itemid);

CREATE TABLE max_size (value INTEGER);

CREATE TABLE version (version INTEGER);
Тайлы лежат в itemsen_BY (в имени таблицы, очевидно, использовался мой регион - BY), таблица max_size пустая, а в version одна строка со значением 1.

Примеры значений itemid:
- для спутника: sat;39613:20547:16
- для карты/гибрида: vskl2;39614:20548:16
Что, в общем-то, легко расшифровывается как: "Тип:X:Y:Z".

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

Ну и до кучи - ничего кроме спутника записать не получится даже теоретически, т.к. для Карт они грузят не картинки, а векторные данные (наверняка, в каком-то своём закрытом формате), которые уже на телефоне превращаются в изображения.

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

proba999

08-07-2018 12:20

reporter   ~0018354

Э... Могу добавить, что мне известно по моим планшетам.

Кроме БОЛЬШИХ tiles.sqlite система создала ещё две папки, они есть на скринах выше.
Driving и Search.
Так вот, я лишь выкачивал автоматом города и области и 3-4 часа с перекурами поелозил пальцем по экрану.
Вот какой объём папок:
Driving - 747 Мб
Search - 1.10 Гб

Вряд ли я делал запросы поисковые (Search папка) на Гигабайт....

Организация кеша ещё хранит в себе сюрпризы похоже.

zed

08-07-2018 12:28

manager   ~0018356

Там может быть информация по пробкам и прочие интерактивные отметки на карте. Понятно, что программа создаёт и хранит много всяких данных. Но на сколько я понял, именно тайлы лежат только в tiles.sqlite. Я даже для теста удалял из папки ru.yandex.yandexmaps всё, кроме указанного файла, и при запуске без интернета приложение как ни в чём ни бывало, показало мне снимки из кэша. Так что, можно считать, что всё остальное не имеет критического влияния. Хотя, да, могут быть и сюрпризы.

proba999

08-07-2018 12:43

reporter   ~0018357

Добавлю ещё что знаю.
Я поставил в то же время и версию ЯКарт для Win10. Везде вошёл под одной учёткой.
На ПК скачал несколько городов\областей и после захода на планшете эти же города\области стали закачиваться и на планшет.

Но 100% я в этом не уверен, вдруг что попутал, чуть позже я проверю, закачав область на ПК и посмотрю что на планшетах.

Также я пробовал с планшета на планшет копировать те самые две папки (без tiles.sqlite и других коренных файлов), на планшете назначения после входа в ЯКарты система стала обновлять города, по сути закачивая их заново.

Issue History

Date Modified Username Field Change
07-07-2018 20:29 proba999 New Issue
07-07-2018 20:29 proba999 File Added: Без-имени-1.jpg
07-07-2018 20:30 proba999 File Added: Без-имени-2.jpg
07-07-2018 20:30 proba999 File Added: Без-имени-3.jpg
07-07-2018 20:31 proba999 File Added: Без-имени-4.jpg
08-07-2018 11:15 zed Summary Новая версия Кеша ЯндексКарт и САСПланета - будет ли? => Экспорт в новую версию кэша Яндекс.Карт
08-07-2018 11:16 zed Tag Attached: мяк
08-07-2018 11:16 zed Tag Attached: экспорт
08-07-2018 11:16 zed Tag Attached: яндекс
08-07-2018 11:38 zed Note Added: 0018352
08-07-2018 12:20 proba999 Note Added: 0018354
08-07-2018 12:28 zed Note Added: 0018356
08-07-2018 12:43 proba999 Note Added: 0018357
08-08-2018 12:52 vdemidov Status new => confirmed
08-08-2018 12:52 vdemidov Product Version .Nightly => 160707
08-08-2018 12:52 vdemidov Target Version => 50xxxx.VIP
27-03-2019 12:22 vdemidov Severity major => feature
08-08-2025 13:24 zed Category Хотелка => Хотелка / Feature request