View Issue Details

IDProjectCategoryView StatusLast Update
0000965SAS.ПланетаБаг / Bugpublic10-10-2012 11:47
ReporterELITE Assigned Tovdemidov  
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Platformandroid 
Product Version110418 
Target Version120808Fixed in Version120808 
Summary0000965: Не работает кэш в МЯК последней версии
Descriptionпри экспорте в МЯК на андроиде, кэш не вопринимается

хотя этот же кэш для джава версии (под s40) работает отлично
Tagsandroid, mobile, БД, мяк, экспорт

Activities

Tolik

06-09-2011 06:22

manager   ~0003714

На Андроиде важен case, т.е. имена файлов прописными или строчными. Только я забыл, какие должны быть. Посмотрите имена файлов в рабочем кэше и в созданном САС.Планетой.

ELITE

06-09-2011 08:40

reporter   ~0003722

Last edited: 06-09-2011 20:08

проверил - в родном и в сасовском одинаково - прописными

vdemidov

06-09-2011 11:10

manager   ~0003732

Разбирайтесь. Когда выясните в чем проблема пишите сюда. Лично у меня ни Андроида, ни МЯК нету ни в каком виде.

ELITE

09-09-2011 10:46

reporter   ~0003818

Last edited: 07-07-2012 10:19

андроида щас тоже нет, но есть симбиан s60v5 - тоже не работает САСовский кеш :( хотя путь верный....

ELITE

09-09-2011 10:46

reporter   ~0003819

а на джаве под s40 работает всё также хорошо....

feya

10-09-2011 05:42

manager   ~0003832

Я так же не могу протестить на андроиде, поэтому придется пользователям самим понять причину. Ктонибудь еще может проверить?

zed

10-09-2011 06:41

manager   ~0003834

Я взялся немного поковырять МЯК4, подождите пока закончу, потом будем тестировать. У меня симбиан s60v3, к слову.

Tolik

10-09-2011 07:25

manager   ~0003836

zed, описание формата можно посмотреть?
Меня интересует 1 вопрос: можно ли сделать так, чтобы сгенерированный кэш не перезаписывался МЯКом во время обновления?
Т.к. в МЯК опции "не обновлять кэш" нет и, видимо, не будет.

zed

10-09-2011 07:31

manager   ~0003837

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

>не перезаписывался МЯКом во время обновления
Так не пускать его в интернет, вот он и не обновит.

feya

10-09-2011 07:43

manager   ~0003838

>У меня симбиан s60v3, к слову.
Там все должно работать.

>Это к feya. Я как-то сразу и не уточнил у него, можно ли распространяться по этому поводу.
Я честно говоря сам не очень в курсе, можно ли распространять эту доку)

Tolik

10-09-2011 07:44

manager   ~0003839

Без интернета нет ни поиска, ни маршрутов, ни пробок. Это не выход.
Т.е. я так понял, нет способа сделать необновляемый кэш? Флаг там специальный или дату установить в отдалённое будущее...

feya

10-09-2011 08:25

manager   ~0003840

Last edited: 10-09-2011 08:26

Tolik, есть.
Новый кэш позволяет делать пользователские слои.
Вот выдержка из доки:

Формат конфигурационного файла хранилища.
Конфигурационный файл сообщает дополнительную информацию о слоях, которые есть в данном хранилище - название (если есть), идентификатор, сетевой запрос (если есть). Если конфигурация отсутствует, то будет использована конфигурация по умолчанию (зашитая в приложение). Она выглядит следующим образом:
<map_layers>
  <l request="map" id="1" name="Схема" service="0" tile_pixel_size="128" ver="1" />
  <l request="sat,skl" id="2" name="Спутник" service="0" tile_pixel_size="128" ver="1" />
  <l request="pmap" id="3" name="Народная карта" service="0" tile_pixel_size="128" ver="1" />
  <l request="meta" id="4" name="" service="1" /> <!--Тип, который не может существовать сам по себе. (читай - как настройка в меню)-->
</map_layers>
Параметры:
• id - идентификатор слоя - определяет папку, в которой слой хранится на диске - обязательный параметр;
• request - определяет идентификатор в сетевом запросе для данного слоя; Если отсутствует - слой не запрашивается из сети;
• name - имя слоя - оно будет отображаться в меню; обязательный параметр для service=0 слоев;
• service - определяет сервисный слой или нет. Сервисные слои не отображаются в меню; Пользовательский слой не может быть сервисным; Не обязательный параметр, по умолчанию = 0;
• tile_pixel_size - сообщает размер тайлов в пикселах для данного слоя; Параметр никак не используется и носит чисто информационный характер;
• ver - версия слоя.

Примечание 1.
Конфигурационные файлы бывают двух типов: системные и пользовательские. Разница между этим слоями состоит в том, что пользовательские слои не синхронизируются с сервером, то есть они не замещаются списком слоев, полученных при стартапе. Системные конфигурационные файлы - это файлы с именем system.xml. Все остальные конфигурационные файлы являются пользовательскими.
Примечание 2.
Тайлы с пользовательскими слоями запрашиваются исключительно из кеша. Тайлы с системными слоями могут запрашиваются как из кеша, так и у сервера.
Примечание 3.
Поддержка пользовательских конфигураций реализована пока только на Symbian.

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

Tolik

10-09-2011 08:47

manager   ~0003841

Но сейчас САС не создаёт system.xml? Надо сделать.

zed

10-09-2011 08:52

manager   ~0003842

Сейчас САС не создаёт пользовательских слоёв, поэтому и в отдельном xml нет необходимости.

Tolik

10-09-2011 08:58

manager   ~0003844

Ну как это нет смысла.
Если САС подменяет слой "схема", надо изменить system.xml так:
<l request="" id="1" name="Схема" service="0" tile_pixel_size="128" ver="1" />
или типа того.
Иначе самодельная карта затрётся рано или поздно яндекс-картой.

feya

10-09-2011 08:59

manager   ~0003845

>Но сейчас САС не создаёт system.xml? Надо сделать.
system.xml уже есть по дефолту в новом кэше. Планета пока его никак не дергает, ибо его вообще трогать нет смысла, надо создавать свои отдельные xml, но они пока не работают) вот такой замкнутый круг.
А пока можно ручками добавить нужные строки, делов - секунда.

feya

10-09-2011 09:00

manager   ~0003846

>Если САС подменяет слой "схема", надо изменить system.xml так
Ага, а потом читать в багтрекере - "после экспорта перестали грузиться родные карты".

Tolik

10-09-2011 09:05

manager   ~0003848

Замкнутый круг, понятно :(
Продолжаю пользоваться МЯК 3.82...

feya

10-09-2011 09:12

manager   ~0003849

>Продолжаю пользоваться МЯК 3.82...
Настолько лень самому руками поправить xml?)

Tolik

10-09-2011 10:37

manager   ~0003850

Ну, честно говоря, пока не увидел никаких преимуществ в 3.9х, кроме недостатков :)

feya

10-09-2011 10:54

manager   ~0003851

А чем возможность добавления нескольких своих карт не преимущество?

zed

10-09-2011 19:50

manager   ~0003855

>>На Андроиде важен case, т.е. имена файлов прописными или строчными.
>проверил - в родном и в сасовском одинаково - прописными
Странно, а в доках где описывается формат кэша все имена строчными... Сделал как в доках, проверяйте.

zed

10-09-2011 20:37

manager   ~0003857

>у меня не получилось заставить работать симбайоновский мяк с дополнительными конфигурационными файлами, но добавляя в system.xml новые строки работает все отлично

Аналогично, хотя пользовательский конфиг и подхватывается и карта появляется в меню, но при попытке изменить зум или сдвинуть карту - МЯК вылетает. Хотя, если добавить ту же строчку в system.xml - всё работает без вопросов. Видимо, они там ещё не докрутили эту фичу.

Tolik

16-09-2011 08:42

manager   ~0003969

Last edited: 17-09-2011 04:50

Нужна инструкция.

1. Экспорт
2. Кладём в /yandexmaps/data/cache/5/
3. Редактируем /yandexmaps/data/cache/ru/default/config/system.xml:
перед </map_layers> добавляем строку
 <l request="" id="5" name="SASPlanet" service="0" tile_pixel_size="128" ver="1" />

Так?

zed

16-09-2011 17:33

manager   ~0003970

name - это как будет отображаться пункт в меню на телефоне, а вот id - имя папки, где лежит кэш, поэтому, в соответствии с приведенной строкой, кэш кладём в папку /yandexmaps/data/cache/5/

Tolik

17-09-2011 04:55

manager   ~0003971

Last edited: 17-09-2011 04:59

Исправил.
Согласитесь, это совершенно не очевидно.
Предлагаю генерить программой директории data/cache/5/ с тайлами и data/cache/ru/default/config/ с исправленным system.xml.
И README не помешает.

zed

17-09-2011 05:41

manager   ~0003972

Last edited: 17-09-2011 05:41

Выше feya писал:
• id - идентификатор слоя - определяет папку, в которой слой хранится на диске - обязательный параметр;
...
• name - имя слоя - оно будет отображаться в меню; обязательный параметр для service=0 слоев;

по-моему, всё очевидно...

Tolik

17-09-2011 06:26

manager   ~0003973

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

zed

22-09-2011 08:32

manager   ~0003995

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

vdemidov

18-01-2012 15:31

manager   ~0005102

Ну раз 4 месяца все молчат, считаем, что все работает.

gpsMax

18-01-2012 20:37

manager   ~0005104

Упоминаемую доку, может, в вики засунуть? Если можно, конечно.

Tolik

07-06-2012 09:37

manager   ~0007335

Last edited: 07-06-2012 09:48

Пытался сейчас засунуть кэш на Андроид (МЯК 2.21 от 9/2/2012).

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

Подробнее, что делал.
Там есть директории:
yandexmaps\data\cache\ru-RU\default\ и в ней 1\, 2\, 3\, 4\, config\system.xml
yandexmaps\data\cachedownload\ru-RU\usercache\ (пустая)

SAS создал директории 11\, 12\ и config\user.xml

Я положил всё это в default - не работает, т.е. в меню Вид новые кары не появились.
Отредактировал system.xml - то же.
Положил это в usercache - то же.
Скопировал всё из директории 11 в мяковскую директорию 1, а из 12 - в 2. Всё показывает как надо, но со временем портится.

Что я делаю не так?
Как сделать, чтобы хотя бы в таком тупом варианте подмены не портились (кроме отключения телефона в офлайн)?



Содержимое system.xml по умолчанию (так, на всякий случай):

<?xml version="1.0" encoding="UTF-8"?>
<map_layers>
 <l request="map" id="1" name="Схема" ver="5" service="0" size_in_pixels="128" allows_night_mode="1" />
 <l request="sat,skl" id="2" name="Спутник" ver="5" service="0" size_in_pixels="128" allows_night_mode="0" />
 <l request="pmap" id="3" name="Народная" ver="5" service="0" size_in_pixels="128" allows_night_mode="1" />
 <l request="meta" id="4" name="" ver="8" service="1" size_in_pixels="0" allows_night_mode="1" />
</map_layers>


P.S. все имена файлов - строчными буквами.

vdemidov

07-06-2012 10:01

manager   ~0007336

Какое это имеет отношение к САС.Планете? Это прямиком к авторам МЯК под Андроид.

Tolik

07-06-2012 10:06

manager   ~0007337

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

vdemidov

07-06-2012 10:20

manager   ~0007338

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

zed

07-06-2012 10:32

manager   ~0007339

>Отредактировал system.xml - то же.
а user.xml удалить не забыл?

>А обращаться к Яндексу с проблемой, что гугл не работает - смешно даже.
Если не работают пользовательские карты, то это баг МЯК. И на стороне САСа тут исправлять и "думать" не о чем.

Tolik

07-06-2012 12:55

manager   ~0007344

Нет, удалить не забыл.
Так куда всё-таки надо по идее класть кэш, в default или в usercache? И куда какой xml?

С Яндексом я давно общаюсь. Быстрее Андроид загнётся (появится какой-нибудь ведроид), чем они порешают свои баги.
А в САС бага нет, потому я и не переоткрыл этот, а только добавил коммент.
Не надо удалять, пригодится тем, кто ещё будет делать экспорт, т.к. в Вики нет вообще ничего. А нет, потому что я не знаю, как правильно.

zed

07-06-2012 13:23

manager   ~0007348

>Так куда всё-таки надо по идее класть кэш, в default или в usercache? И куда какой xml?
Вот, когда выяснишь - напиши :)

Кстати, на форуме тоже жаловались, что на андроиде проблемы: http://sasgis.org/forum/viewtopic.php?f=39&t=1622&start=30#p28109 Наверное, именно там и нужно было поднимать этот вопрос заново, а не некропостить в отработанный тикет.

Issue History

Date Modified Username Field Change
06-09-2011 05:09 ELITE New Issue
06-09-2011 06:22 Tolik Note Added: 0003714
06-09-2011 08:40 ELITE Note Added: 0003722
06-09-2011 11:10 vdemidov Note Added: 0003732
06-09-2011 11:10 vdemidov Status new => feedback
06-09-2011 20:07 gpsMax Tag Attached: мяк
06-09-2011 20:07 gpsMax Tag Attached: экспорт
06-09-2011 20:08 gpsMax Summary не работает кеш в МЯК последней версии => Не работает кэш в МЯК последней версии
06-09-2011 20:08 gpsMax Description Updated
06-09-2011 20:08 gpsMax Note Edited: 0003722
09-09-2011 10:46 ELITE Note Added: 0003818
09-09-2011 10:46 ELITE Status feedback => new
09-09-2011 10:46 ELITE Note Added: 0003819
09-09-2011 13:01 ELITE Note Edited: 0003818
10-09-2011 05:42 feya Note Added: 0003832
10-09-2011 05:52 vdemidov Status new => feedback
10-09-2011 06:41 zed Note Added: 0003834
10-09-2011 07:25 Tolik Note Added: 0003836
10-09-2011 07:31 zed Note Added: 0003837
10-09-2011 07:43 feya Note Added: 0003838
10-09-2011 07:44 Tolik Note Added: 0003839
10-09-2011 08:25 feya Note Added: 0003840
10-09-2011 08:26 feya Note Edited: 0003840
10-09-2011 08:47 Tolik Note Added: 0003841
10-09-2011 08:52 zed Note Added: 0003842
10-09-2011 08:58 Tolik Note Added: 0003844
10-09-2011 08:59 feya Note Added: 0003845
10-09-2011 09:00 feya Note Added: 0003846
10-09-2011 09:05 Tolik Note Added: 0003848
10-09-2011 09:12 feya Note Added: 0003849
10-09-2011 10:37 Tolik Note Added: 0003850
10-09-2011 10:54 feya Note Added: 0003851
10-09-2011 19:50 zed Note Added: 0003855
10-09-2011 20:37 zed Note Added: 0003857
16-09-2011 08:42 Tolik Note Added: 0003969
16-09-2011 08:43 Tolik Note Edited: 0003969
16-09-2011 17:33 zed Note Added: 0003970
17-09-2011 04:50 Tolik Note Edited: 0003969
17-09-2011 04:55 Tolik Note Added: 0003971
17-09-2011 04:59 Tolik Note Edited: 0003971
17-09-2011 05:41 zed Note Added: 0003972
17-09-2011 05:41 zed Note Edited: 0003972
17-09-2011 06:26 Tolik Note Added: 0003973
22-09-2011 08:32 zed Note Added: 0003995
18-01-2012 15:31 vdemidov Note Added: 0005102
18-01-2012 15:31 vdemidov Status feedback => resolved
18-01-2012 15:31 vdemidov Fixed in Version => .Nightly
18-01-2012 15:31 vdemidov Resolution open => fixed
18-01-2012 15:31 vdemidov Assigned To => vdemidov
18-01-2012 20:34 gpsMax Tag Attached: БД
18-01-2012 20:37 gpsMax Note Added: 0005104
23-01-2012 08:34 vdemidov Target Version => 120808
23-01-2012 08:49 vdemidov Fixed in Version .Nightly => 120808
23-01-2012 10:51 vdemidov Product Version => 110418
23-01-2012 18:56 gpsMax Tag Attached: mobile
23-01-2012 18:56 gpsMax Tag Attached: android
07-06-2012 09:37 Tolik Note Added: 0007335
07-06-2012 09:39 Tolik Note Edited: 0007335
07-06-2012 09:40 Tolik Note Edited: 0007335
07-06-2012 09:43 Tolik Note Edited: 0007335
07-06-2012 09:43 Tolik Note Edited: 0007335
07-06-2012 09:48 Tolik Note Edited: 0007335
07-06-2012 10:01 vdemidov Note Added: 0007336
07-06-2012 10:06 Tolik Note Added: 0007337
07-06-2012 10:20 vdemidov Note Added: 0007338
07-06-2012 10:32 zed Note Added: 0007339
07-06-2012 12:55 Tolik Note Added: 0007344
07-06-2012 13:23 zed Note Added: 0007348
07-07-2012 10:19 gpsMax Note Edited: 0003818
10-10-2012 11:47 Tolik Status resolved => closed
08-08-2025 13:22 zed Category Баг => Баг / Bug