Как перенести кеш игр и данные приложений на внешнюю карту в андроид

Вам надоело что Яндекс.Карты 3.хх постояно качают из интернета карту, расходуя драгоценный мобильный траффик?
Читаем внимательно, и после прочтения интернет потребуется только для прокладки маршрута.

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

Эту проблему и будем решать


Я не собираюсь выкладывать ссылки на скачку всех кэшей для всех городов и областей (жаль что яндексы этого делать тоже не хотят).
Я предлагаю вам инструкцию, как можно САМОМУ скачать кэш любой выбранной вами территории.
Но и ЭТО ещё не всё - данный способ позволит вам использовать в программе Яндекс.Карты не только карты яндекса, но и карты от Google Maps, Bing Maps, Kosmosnimki, Wikimapia и других.

Примеры карт и снимков из различных источников:

[!] Лично мне очень понравились карты от Google - там есть указания мест остановок общественного транспорта, и на развязках показаны направления движения, масштабы дорог более адаптированы для удобного просмотра.
[!] Использование не родного кэша не влияет на работу программы. Прокладка маршрутов и показ пробок работают так же хорошо.
[!] В случае необходимости докачки новых райнонов карт - самой программой будут качаться карты от яндекса, а не от Google .

Так, а теперь инструкция


Для большей вероятности успешного исхода операций - с начала читаем, а потом уже перечитываем и делаем

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

2. Теперь садимся за ПК или ноут, где есть интернет. Скачиваем свежую версию программы (~3мб)

3. Распаковываем содержимое архива в отдельную папку и запускаем SASPlanet. Выбираем пункты меню:
- Источник - Интерент (Alt+I)
- Карты - Карты Google (M) (Именно карты, а не спутник)

4. Приближаем вид карты к тому городу, который нам нужен и выделяем интересующую нас область карты:
- Операции - Выделить - Полигональное выделение (Alt+P), обводим нужную область.


(Если нажали не туда - нажимаем на красную стрелочку в маленьком окошке, последняя точка пропадёт)

После окончания выделения нажимаем ОК в маленьком окошке.

5. В появившемся окне делаем следующее -
- Загрузить - Тип карты - Карта (Google) - или ту, которую вы хотите видеть у себя
- Загрузить -

  • Заменять старые файлы,
  • Только при их различии
  • - не позволит качать программе лишнее.
    - Загрузить - Масштаб - ** - в этом вся хитрость!
    Надо прогрузить по очереди все масштабы от 9 (эквивалентно 9 Км в яндексах), до 17 (эквивалентно 40 метрам)
    Эти цифры не лимитированы, вы можете скачать любой диапазон масштабов, можно качать даже через один.
    [!] В некоторых картах, для разных регионов больших масштабов может не быть.
    С начала выбираем наименльший масштаб, например с 9.



    После наимаем Начать . И после этого ждём пока не будет 100% и строчки Обработка файлов завершена! . После нажимаем Выход .

    6. Попадаем в главное меню, переходим:
    - (Ctrl+B)
    В этом окне делаем те же настройки что и в окне 5 только масштаб ставим больше. Если было 9 теперь выбираем 10.

    [!] Для масштабов более 14-15 резко увеличивается количество файлов, и время для из загрузки будет требоваться больше. Поэтому в процессе скачки нажмите Сохранить , и сохраните настройки для скачки кэша. Далее, после вынужденной остановки скачки её можно продолжить с того же места.
    Загрузить - Сохранённая сессия -

  • Начинать с последнего загруженого тайла

  • Загрузить - Сохранённая сессия - [Загрузить] и выбираем ранее сохранённый файл сессии загрузки, Начать .

    7. Теперь после прогрузки всех необходимых масштабов в режиме карты, можно проделать то же самое и для Гибрида (если оно вам надо).
    Для этого повторяем пункты 5 и 6 , но выбираем в Типах карт - Спутник (Google) , и прогружаем все те же масштабы что и раньше.
    А теперь будет необходимо ещё раз повторить пункты 5 и 6 но с типом карт - Гибрид (Google) , для тех де масштабов - это добавит на спутниковые изображения названия улиц и номера домов.

    В итоге мы имеем - полностью скаченный кэш карты масштаба 9-17. А так же и спутниковые фотографии и улицы (если вы качали их)

    8. Теперь надо сделать экспорт
    - Операции - Выделить - Предыдущее выделение (Ctrl+B), выбираем вкладку Экспорт
    - Экспорт - Экспорт в формат - [Мобильные Яндекс.Карты (Версия 3)]
    - Экспорт - Куда сохранять - выдерете отдельную папку, например D:/YCache
    - Экспорт -

  • Заменять существующие тайлы
  • - лучше включить
    - Экспорт - Включить следующие карты:
    Тут делаем следующее - в первой строке выделяем Карта (Google) .
    Во второй - Спутник (Google) если вы качали спутник, если нет - то выбираем Нет
    в третьей - Гибрид (Google) если вы качали гибрид, если нет - то выбираем Нет
    - Экспорт - Масштабы: - выделяем весь диапазон масштабов которые прокачали (в нашем случае 9-17)

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

    Теперь нажимаем Начать


    9. После завершение всего процесса экспорта остаётся лишь скопировать полученный кэш в телефон/кпк:
    для Symbian - E:/documents/yandexmaps/cache
    для Windows Mobile и обычных звонилок : Карта памяти/yandexmaps/cache/

    В результате мы получили готовый инструмент для навигации по городу
    Не заблудитесь!

    Конечно многие могут начать говорить что мол Garmin рулит... Не совсем согласен.
    Для города и области - лучше Яндексов нет. Быстрая работа, поиск по организациям, пробки, прокладка маршрута с учётами пробок, метки аварий и дорожных работ, работа с треками, определение координат без GPS. А без загрузок карт трафик не так уж и сильно бьёт по балансу.
    Для больших поездок - не спорю, лучше Garmin нет

    Лично у меня всё это получилось с первого раза, заняло около 2х часов (интернет не очень) от момента открытия ссылки с инструкцией, до запуска ЯК на телефоне с новыми картами. Так что читаем всё внимательно.
    Мой готовый кэш Москвы и небольшоой части области, масштаба 10-17, весит 393мб.

    Обработка и адаптация - Карпов Андрей aka

    Кэш карт (карты) Мобильных Яндекс.Карт (МЯК) хранится в файловой системе, на карте памяти устройства.

    Если вы пользовались ранее программой Мобильные Яндекс.Карты v2.xx ,
    в версиях Мобильных Яндекс.Карт 3.х формат кэша и место его хранения изменились. Папка "maps " и файлы .ogf3 более не используются. Вместо них в появилась папка cache в которой создаются подпапки и файлы кэша.

    Как устанавливать кэш карт в телефон.
    В общем случае - не надо жадничать - сначала убедитесь что программа настроена на работу с кэшем, сама его создаёт и потом видит его, а уж потом подменить его на готовый. Чтобы проверить что он работает - достаточно войти в Online, переключить 2-3 масштаба, выйти из программы и запустить её заново в Offline - попереключать те-же масштабы - Вы должны увидеть куски карт которые скачались. После этого найдите папку с кэшем и замените его на готовый. Ниже описано как настроить телефон на работу с кэшем для разных платформ.

    Если после установки кэша вы не видите свой город
    Если Вы положили кэш на карту памяти и запускаете программу сразу в режиме Offline и не видите карт - очевидно программа пытается отображать не то место которое вы положили в кэш. Так как программа показывает весь мир без разделения на города - нужно либо воспользоваться Поиском в режиме Онлайн, либо воспользоваться GPS, либо положить на карту памяти ещё и кэш всего мира и "дошагать" до нужного места от верхних масштабов вручную.

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

    ВНИМАНИЕ! На разных платформах места куда надо копировать дерево - разные:

    Java:

    Важно! Чтобы программа могла получить разрешение на чтение и запись на карту памяти - её нужно устанавливать так чтобы "подцепились" все сертификаты полученные Яндексом, то что описано в.jad-файле. Самый правильный и простой способ это сделать - устанавливать приложение прямо с сервера Яндекса зайдя при помощи встроенного браузера телефона на страницу m.ya.ru/ymm
    Устанавливать java-версию нужно в память аппарата.

    Так-же программе нужно выдать разрешения на доступ к данным с соответствующем меню аппарата.

    Для SonyEricsson это делается в меню телефона на пункте YandexMaps левая кнопка "Функции" -> "Полномочия" -> "Параметры пользователя": "чтение данных и запись данных" установить "без запроса"

    Для Nokia это делается в меню телефона на пункте YandexMaps левая кнопка
    "Функции" -> "Доступ приложения" -> "Доступ к данным": "чтение
    данных и добавить и изменить" установить "разрешено"

    Когда убедитесь что всё настроено и кэш кладётся в режиме online программой на карту памяти отыщите его по указанным ниже путям и замените:

    карта памяти: yandexmaps/cache
    память телефона yandexmaps/cache

    Данная функция поддерживается далеко не всеми аппаратами - пробуйте, сообщайте модели где работает а где нет..

    Теперь программа будет брать нужные тайлы из КЭШа, если они там есть. Если каких-то тайлов не хватает, она будет закачивать их через Интернет.

    Известные проблемы: У части Java-телефонов Samsung, в частности s5230 кэш не работает из-за ошибок в прошивке аппарата, её следует обновить. Для s5230 например, нужна прошивка не ниже чем S5230MREIL2

    p.s. есть откровенно тяжелые случаи с java-телефонами. с такими можно попробовать поискать как сделать хак - открыть полный доступ приложений к файловой системе , например , но помните с этим способом вы рискуете лишиться гарантии.

    Платформа Symbian :

    карта памяти: /Documents/yandexmaps/cache
    память телефона: /Documents/yandexmaps/cache

    Новое!
    Обратите внимание, что МЯК v3.91 и выше создаёт в папке
    Documents/yandexmaps/data/ cache,
    скачанный же кэш v3 нужно всё равно класть по указанному в инструкции пути
    Documents/yandexmaps/cache - если этой папки нет - её следует создать.

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

    Windows Mobile:

    карта памяти: мои документы/yandexmaps/cache
    память телефона: yandexmaps/cache

    Если язык телефона - английский, соответствующая папка будет называться My Documents

    WM6: \\Карта памяти/yandexmaps/Cache
    (\Storage\yandexmaps\cache)


    Android:

    карта памяти: sdcard/yandexmaps/cache

    Обратите внимание, что МЯК v1.71 и выше создаёт в папке
    yandexmaps\data \cache,
    скачанный же в архиве кэш версии 3 нужно всё равно класть по указанному в инструкции пути yandexmaps\cache - если этой папки нет - её следует создать.

    По имеющейся сейчас информации, кэш v3 не поддерживается в МЯК 3.12, для его использования нужно откатиться на v3.11, см. раздел Программы / Архив версий

    1. надо помнить, что при подключении гуглфона к ПК, телефон теряет карту, поэтому манипуляции с переустановкой МЯК производить нельзя - программа тут же выбирает внутреннюю память телефона в качестве хранилища кэша карт;
    2. папка mnt/sdcard/yandexmaps (ее программа устанавливает как путь к кэшу) - зеркало папки sdcard/yandexmaps , при этом при чтении телефона с компьютера, доступ к первой закрыт, а во вторую можно положить файлы.
    Другими словами, использовать подключение к компу только непосредственно для копирования карт в кэш, а любые другие манипуляции проводить, отключив от ПК; файлы класть именно в ту папку, которая указана в инструкции, даже несмотря на то, что сами МЯК указывают в настройках немного другой путь (...mnt/...).....
    Выяснение этих нехитрых вещей может стоить вам едва ли не целого дня экспериментов))

    1. В параметрах установки на телефоне выбираем установку приложений на карту памяти
    2. Скачать и установить приложение из SamsungApps.
    3. На карточке памяти находим папку Other , далее варианты разнятся, ищем:

    По другим сведениям это путь
    Others\__@@bada_applications@@__\6uqo2j21vv\Data\yandexmaps\cache

    на телефонах с системой bada 2 кеш может находиться по адресу
    \Others\__@@bada_applications@@__\OspHomeExt\6uqo2j21vv\Data\yandexmaps\cache

    Проверьте какой у вас и кладите туда кэш карт.

    4. Подкладываем карты.
    5. Пользуемся!

    Maemo:

    /home/user/MyDocs/yandexmaps/cache

    BlackBerry:

    карта памяти: yandexmaps/cache

    iPhone:

    Кэш лежит в подпапке
    /var/mobile/Applications/<длинный идентификатор из букв и цифр, у всех свой> /Library/Caches/YandexMaps/Tiles.db
    Это файл базы данных sqllite.

    Кэш карт ^используемый на всех платформах, в этот формат нужно конвертировать:
    - в Windows - при помощи функции "Экспорт" программы . (новое! )
    - в Mac OS X 10.6 Snow Leopard используйте


    Многим пользователям Android знакома проблема нехватки внутренней памяти в телефоне или планшете. Одним из основных способов её освободить является перенос игр и приложений на карту памяти, конечно если таковая имеется.

    Однако, решив перенести игру на SD карту, многие сталкиваются с различными сложностями. В этой статье попробуем разобраться что к чему и посмотрим на пару полезных приложений для переноса данных в Android.
    Для начала стоит отметить, что перенос приложений на карту памяти можно сделать без сторонних приложений, встроенными средствами. Но сама возможность переноса зависит от каждого конкретного приложения. Некоторые разработчики блокируют такую возможность, видимо по той причине, что внутренняя память обеспечивает лучшее быстродействие чем SD карта.
    Для того что-бы проверить,можно ли перенести приложение на карту памяти, в настройках системы откройте пункт "Приложения" и посмотрите, активна ли кнопка "Переместить на SD-карту". Если кнопка активна, то приложение поддерживает перенос, если нет, или кнопка вообще отсутствует, то перенос не поддерживается.


    Более удобным способом переноса приложений является специальное приложение (Бывшее App 2 SD), которое помимо переноса приложений, имеет ещё несколько полезных функций:

    • Скрытие приложения в меню приложений
    • Уведомление о завершении установки приложения
    • Очистка кэша одним тапом

    Основное преимущество AppMgr Pro III заключается в автоматической сортировке приложений в зависимости от расположения. Такая сортировка сделана в виде вкладок:

    • On phone - приложения в находящиеся в памяти телефона, и поддерживающие перенос на карту памяти
    • On SD card - приложения, уже перемещённые на SD карту
    • Phone only - приложения, не поддерживающие перенос


    Вышеописанные способы хороши, но, как уже говорилось, не всегда работают, и кроме того, они оставляют во внутренней памяти кэш, который, зачастую, занимает гораздо больше чем само приложение. Приложение , в отличии от AppMgr Pro III, позволяет перемещать на карту памяти не само приложение, а его кэш. Для функционирования этой программы вам понадобятся права root, если не знаете что это - , а как их получить .
    Перенос кэша делается несколькими простыми шагами:

    1. Запустите приложение и нажмите на значок "+" в правом верхнем углу
    2. В открывшемся меню в графе "Имя" укажите название приложения, кэш которого хотите перенести
    3. В графе "Источник" укажите папку с кэшем игры, который расположен в Android/obb/ваша папка с названием приложения
    4. В графе "Назначение" выберите папку на внешней SD карте, куда хотите перенести кэш
    5. После того как всё заполнено, нажмите на галочку вверху справа и затем на "булавку" напротив названия, которое вы давали в первом пункте.