Jump to content
GPS навигатор СитиГИД
JohnSilver

Перенос карт на MicroSD-карточку (внешюю карту памяти телефона)

Recommended Posts

Программу City Guide можно перенести на внешнюю MicroSD-карту телефона, чтобы освободить основную память. Но файлы карт занимают почти 1.5 Gb пространства в основной памяти телефона. А перенести сами карты на MicroSD-карточку не удается. Порядок действий был такой:

  1. На телефоне уже есть установленный и работающий City Guide 8.1.534 с картами в папке /storage/emulated/0/CityGuide/CGMaps/
  2. Создана новая папка на карте памяти /storage/extSdCard/Карты
  3. В эту папку перемещены карты
  4. Старая папка - удалена.

Запускаем City Guide - пишет карты не найдены и предлагает скачать. После скачивания карт, они появляются в папке с картами в памяти телефона, при удалении оттуда - снова не находит карты.

 

Отсюда вывод, что City Guide ищет карты всегда в одной и той же папке, вне зависимости от того, ЧТО написано в настройках программы.

 

Вопрос: City Guide действительно глючит и не дает изменить место хранения карт в памяти или я что-то неправильно сделал?

 

P.S. И просьба к разработчикам. Нельзя ли сделать, чтобы путь к папке указывался более удобный способом, нежели прописывание его руками?

Share this post


Link to post
Share on other sites

Вопрос: City Guide действительно глючит и не дает изменить место хранения карт в памяти или я что-то неправильно сделал?

Готовится версия (есть публичные бета-версии) где улучшена работа с альтернативной папкой хранения карт.

Правда вбивать ее все равно надо руками, встроенного файл браузера пока нету.

 

P.S. кстати вы неправильно прописали путь к внешней карте, должен быть такой /mnt/extSdCard/Карты

Edited by Fanat_SPB

Share this post


Link to post
Share on other sites

JohnSilver, Просто жизненный совет, избегайте русскоязычных  названий для каталогов используемых программами.

 

Fanat_SPB, а с чего вы  взяли что должно быть /mnt ? у меня на крайней бете без нее все окей, так как карта монтируется не посредственно в  /sdcard/exsdcard/

Share this post


Link to post
Share on other sites


Fanat_SPB, а с чего вы  взяли что должно быть /mnt ? у меня на крайней бете без нее все окей, так как карта монтируется не посредственно в  /sdcard/exsdcard/

на бывшем планшете возился с этой настройкой, именно с mnt ситигид увидел карты на внешнем хранилище

про крайние беты давайте пока помолчим :)

Share this post


Link to post
Share on other sites

Fanat_SPB, Толя, это вообще-то вопрос, куда сам линукс монтирует тома. Традиционно принято, что точка монтажа -- каталог /mnt, туда же смотрят алиасы всякие. Но никто не заставляет разработчика делать именно так. И никто не мешает ему написать систему так, чтобы точку монтирования можно было не упоминать. Так что вопрос философский. 

Share this post


Link to post
Share on other sites

Многое еще зависит от бренда и версии системы.

Например, на последних смартах и планшетах Sony путь к карте памяти идет "/storage/sdcard1", но работает и прямое обращение "/sdcard1"

 

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

Соответственно, у Сити Гида правильный путь для хранения данных на карте памяти должен быть "/storage/sdcard1/Android/data/cityguide.probki.net/CGMaps", а вбить его для выбора по-умолчанию, как делают все опытные разработчики, - дело десяти минут.

 

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

Edited by JcVai
  • Upvote 1

Share this post


Link to post
Share on other sites


Соответственно, у Сити Гида правильный путь для хранения данных на карте памяти должен быть
Какая птичка вам нашептала, что у меня есть карта памяти, что я собираюсь там хранить карты, что альтернативный каталог для расположения карт я хочу поместить на карту памяти даже в том случае, если эта карта памяти есть?

Share this post


Link to post
Share on other sites

Какая птичка вам нашептала, что у меня есть карта памяти, что я собираюсь там хранить карты, что альтернативный каталог для расположения карт я хочу поместить на карту памяти даже в том случае, если эта карта памяти есть?

То что хотите Вы лично, мне, безусловно, неизвестно.

Я писал ответ в тему "Перенос карт на MicroSD-карточку (внешюю карту памяти телефона)" форума "GPS навигатор с пробками для Android".

 

1. Приложение не умеет корректно работать с путями, отличными от прошитого в приложении.

2. Для работы на неизмененных стоковых прошивках последних версий Android-устройств с картой памяти - привел корректный путь на внешней карте памяти, с которым должна работать программа. Естественно, что это должно быть сделано по выбору пользователя, который на современных устройствах с 8-16Гб встроенной памяти и поддержкой внешних карт СГ покупать не будет, если, конечно, устройство у него не только для навигации.

 

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

Share this post


Link to post
Share on other sites

еще раз - правильно пропишите путь

Share this post


Link to post
Share on other sites

С помощью самого андройда не переносится на внешнюю сдкард?

Share this post


Link to post
Share on other sites


1. Приложение не умеет корректно работать с путями, отличными от прошитого в приложении.
Приложение работает с альтенативными путями к картам. В том числе и к картам (maps), расположенным на внешних картах (cards). Да, есть недочёт -- закачка карт идёт в основной каталог. Этого недочёта не будет в ближайшем релизе.


2. Для работы на неизмененных стоковых прошивках последних версий Android-устройств с картой памяти - привел корректный путь на внешней карте памяти, с которым должна работать программа.
А я вам говорю про то, что это не единственный возможный альтернативный путь, см. выше.  И ваша фраза "Соответственно, у Сити Гида правильный путь для хранения данных на карте памяти должен быть "/storage/sdcard1/Android/data/cityguide.probki.net/CGMaps", а вбить его для выбора по-умолчанию, как делают все опытные разработчики, - дело десяти минут." верна только для случая расположения maps именно на внешней card для одной-единственной версии ОС Андроид. Поэтому разработчикам нет никакой необходимости этим озабачиваться. А вот приделать выбор каталога через браузер, а не набором текстовой строки, действительно было бы полезно.

Share this post


Link to post
Share on other sites

1. При переносе содержимого CGMaps из каталога программы в каталог, указанный в настройках - приложение его не видит все равно. Даже после перезагрузки. В обычном мире это называется "не работает".

 

2. Во-первых, этот путь верен для всех современных устройств на 4.4, а именно на ней работают современные android-устройства. Во-вторых, если внимательно прочитать текст, то можно увидеть, что этот путь должен быть по-умолчанию для сохранения на карту памяти. Не единственным вариантом, а вариантом по-умолчанию. Таким образом пользователи со стоковыми неизмененными прошивками, желающие держать данные СГ на внешней карте - просто выберут хранение на карте памяти не вникая, куда политикой Google можно писать, а куда нет; тем же, кто снял блокировку через рута, используют правленную/кастомную прошивку или старую версию системы - могут выбрать любую другую папку и использовать ее. Хочет клиент выставить запись в "/root" - да пожалуйста, если система позволит. Но это изврат. Пользователь хочет одного: запустить и пользоваться. Если, по какой то причине (нехватка места, религия, корпоративная политика и тп) ему требуется хранить данные на карте памяти - у умных разработчиков это будет сделано простым выбором из меню. 

Как пример можно взять видеорегистратор для android-устройств DailyRoads Voyager - при задании каталога для сохранения данных предлагается каталог по-умолчанию в памяти аппарата, каталог по-умолчанию на внешней карте и дается возможность задать свой каталог вручную.

 

Это, конечно, если СГ требуются клиенты, желающие использовать приложение с сохранением данных на внешней карте памяти. Но, как я вижу, судя по Вашим постам официального бета-тестера, как представителя компании, официальная позиция: вы все идиоты, мы лучше знаем, как трактовать требования Google к написанию приложений под Android, у нас свой API с блекджеком и тп.

Собственно, на этом прекращаю метать бисер и ретируюсь с данного форума.
 

Share this post


Link to post
Share on other sites

о чем спорим? я нить потерял.

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

  • Upvote 1

Share this post


Link to post
Share on other sites

Тараканов надо давить.Есть куча приложений, дающие пользователю выбирать внешнюю карту для хранения данных. И всё работает прекрасно, без вбивания адреса вручную (что большинство пользователей не умеют) и даже без браузера. На любом устройстве. На любом андроиде. Просто чудеса какие то!

  • Upvote 2

Share this post


Link to post
Share on other sites

я даже знаю как некоторые из этих чудес называются: клиентоориентированность, юзабилити, ответственность за результаты своего труда.

Share this post


Link to post
Share on other sites


Собственно, на этом прекращаю метать бисер и ретируюсь с данного форума.
Это прааальна. Поскольку перед тем, как начинать писать, следует хоть немного почитать. Тогда не было бы столько нелепостей типа "официального бета-тестера, как представителя компании" и "При переносе содержимого CGMaps из каталога программы в каталог, указанный в настройках - приложение его не видит все равно". Но читать вам не с руки, несмотря на данные вам конкретные ответы.

 

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

Share this post


Link to post
Share on other sites

Добрый день.
подскажите, что не так делаю?

пытаюсь перенести карты на карту памяти.

 

после установки CG 8.1.534 путь к картам прописан /storage/emulated/0/cityguide/cgmaps

 

переношу карты на карту памяти и прописываю путь /removable/microsd/cgm

но карты cg не видит

 

скриншоты из ТС с путями до карт.

 

Карты на карте памяти:

dcf69be895c3.jpg

 

Это пусть к картам на устройстве:

b6af2fc0e98f.jpg

 

может я не верно указываю путь?

 

ASUS Fonepad 7 FE170CG 8Gb

Спасибо.

Edited by mihuhol

Share this post


Link to post
Share on other sites

Попробуйте в тотал коммандере перейти в корневую папку, а в ней в mnt - там карточки числятся под другими именами. Говорят, что на некторых устройствах принимается только путь через /mnt/.....

У меня вон тоже - карты надписаны "SD карта" (воткнутая) и "SD карта (2)" (встроенная), 

а пути к ним - /storage/sdcard0 и /storage/sdcard1

 

А если войти в корень системы и в mnt  - то видим:

 

Три разных названия у карточек. Бред? О да. (такой же бред, как идея, что вводить путь надо руками :( )

 

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

Edited by IШIN

Share this post


Link to post
Share on other sites

Добрый день.

подскажите, что не так делаю?

пытаюсь перенести карты на карту памяти.

 

после установки CG 8.1.534 путь к картам прописан /storage/emulated/0/cityguide/cgmaps

 

переношу карты на карту памяти и прописываю путь /removable/microsd/cgm

но карты cg не видит

 

скриншоты из ТС с путями до карт.

 

Карты на карте памяти:

dcf69be895c3.jpg

 

Это пусть к картам на устройстве:

b6af2fc0e98f.jpg

 

может я не верно указываю путь?

 

ASUS Fonepad 7 FE170CG 8Gb

Спасибо.

Кстати, у unix-подобных ОС (к каковым Андроид также относится) имена файлов (и остальных сущностей. как то директорий и т.д.) регистрозависимы...

Имя каталога у вас /Removable/MicroSD/CGM, а не /removable/microsd/cgm.

  • Upvote 1

Share this post


Link to post
Share on other sites

Да, есть недочёт -- закачка карт идёт в основной каталог. Этого недочёта не будет в ближайшем релизе.

 

ох, крайне необходимо.

ато встроенной памяти на планшете с гулькин нос и карту он не может скачать так как под неё тупо нехватает места.

соответсвенно трюк с скачкой и последующим ручным переносом невозможен.

 

ЗЫ

лично у меня на андроиде 4.4 при попытке указать путь через /mnt/sdcard1/ ситигид вылетает.

поэтому указал путь /storage/sdcard1/,  путь по умолчанию был /storage/sdcard0/

Edited by Myp

Share this post


Link to post
Share on other sites

Myp, ну, запишитесь на бетатестирование на гуглоплюсе и поставьте бету. Это если всего остального не жалко... :)

Share this post


Link to post
Share on other sites

Смарт - NokiaX2

никакими средствами до этого не удавалось заставить СитиГИД хранить карты на SD.
нашёл решение:

создал папку CGMaps на SD карте, путь /storage/sdcard1/CGMaps

далее в директории СитиГИД , путь /storage/sdcard/emulated/0/SityGuide/поменял в файле settings.ini

в settings.ini
- строку LINK2SD=1 заменил на LINK2SD=2
- строку subset_mapsdir=/storage/sdcard/emulated/0/SityGuide/CGMaps заменил на subset_mapsdir=/storage/sdcard1/CGMaps
- строку POI_ChartFileName=/storage/sdcard/emulated/0/CGMaps/98Spb.cgnet заменил POI_ChartFileName=/storage/sdcard1/CGMaps/98Spb.cgnet
название последней использованной карты у вас - своё

удалил карты из памяти устройства.( /storage/sdcard/emulated/0/SityGuide/)

Всё работает!  :rolleyes:  :)

P.S.  все атласы и *.bkm  надо оставлять в диретории программы в памяти устройства

Edited by tolyasha
  • Upvote 2

Share this post


Link to post
Share on other sites

То что хотите Вы лично, мне, безусловно, неизвестно.

Я писал ответ в тему "Перенос карт на MicroSD-карточку (внешюю карту памяти телефона)" форума "GPS навигатор с пробками для Android".

 

1. Приложение не умеет корректно работать с путями, отличными от прошитого в приложении.

2. Для работы на неизмененных стоковых прошивках последних версий Android-устройств с картой памяти - привел корректный путь на внешней карте памяти, с которым должна работать программа. Естественно, что это должно быть сделано по выбору пользователя, который на современных устройствах с 8-16Гб встроенной памяти и поддержкой внешних карт СГ покупать не будет, если, конечно, устройство у него не только для навигации.

 

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

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

Share this post


Link to post
Share on other sites

Смарт - NokiaX2

никакими средствами до этого не удавалось заставить СитиГИД хранить карты на SD.

нашёл решение:

создал папку CGMaps на SD карте, путь /storage/sdcard1/CGMaps

далее в директории СитиГИД , путь /storage/sdcard/emulated/0/SityGuide/поменял в файле settings.ini

в settings.ini

- строку LINK2SD=1 заменил на LINK2SD=2

- строку subset_mapsdir=/storage/sdcard/emulated/0/SityGuide/CGMaps заменил на subset_mapsdir=/storage/sdcard1/CGMaps

- строку POI_ChartFileName=/storage/sdcard/emulated/0/CGMaps/98Spb.cgnet заменил POI_ChartFileName=/storage/sdcard1/CGMaps/98Spb.cgnet

название последней использованной карты у вас - своё

удалил карты из памяти устройства.( /storage/sdcard/emulated/0/SityGuide/)

Всё работает!  :rolleyes:  :)

P.S.  все атласы и *.bkm  надо оставлять в диретории программы в памяти устройства

все нашел единственное чего не было так это последний пункт, у меня в строке poi после равно ни чего нет,нужно самому прописать и как выбрать конкретную карту 

Share this post


Link to post
Share on other sites

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

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

И - если делать это все на компе, то редактировать файл чем-то типа notepad+, AkelPad и т.д.

У некоторых (я б даже сказал - у многих) при редактировании штатным виндовским блокнотом слетала кодировка файла, СГ его не узнавал и считал битым, и создавал с нуля файл с дефолтными настройками.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×