Насколько я понял, реализация мобильных Яндекс.Карт на Андроиде отстаёт от аналогичных решений на, скажем, Симбиане. В частности, вносимые пользователем метки хранятся локально в базе sqlite3, причём хранятся не на SD карточке, а в памяти телефона (на /data).
Проблема в том, что после перепрошивки (скажем, со штатной на
CyanogenMod) или хард-ресета (
мне приходилось его однажды делать) все ваши метки бесследно исчезают. Конечно, хотелось бы, чтобы они хранились или на SD карточке, или в гуглооблаке, или в яндексе, но увы, пока это не так.
Приходится заботу о метках брать в свои руки. Последующий текст предполагает, что у вас есть компьютер, на котором стоит
ADB, а телефон присоединён к компьютеру через USB. Возможно, всё это работает только на рутованном телефоне!
Чтобы скачать метки с телефона на компьютер:
adb -d pull /data/data/ru.yandex.yandexmaps/databases/labels.db
В случае, если вы используете
модифицированные Яндекс.Карты' от Александра Хохлова:
adb -d pull /data/data/ru.yandex.yandexmaps.khokhlov/databases/labels.db
Метки можно редактировать с помощью командной строки sqlite, если вы знаете SQL:
sqlite3 labels.db
SQLite version 3.6.23.1
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .mode line
sqlite> SELECT * from sqlite_master;
type = table
name = android_metadata
tbl_name = android_metadata
rootpage = 3
sql = CREATE TABLE android_metadata (locale TEXT)
type = table
name = mylabels
tbl_name = mylabels
rootpage = 4
sql = CREATE TABLE mylabels (_id INTEGER PRIMARY KEY,label_name TEXT,label_name_tolower TEXT,lat LONG,lon LONG,geocode TEXT,date LONG)
sqlite> SELECT * FROM mylabels LIMIT 1;
_id = 1
label_name = Офис
label_name_tolower = офис
lat = 55.8746625377941
lon = 37.5884219154757
geocode = Россия, Москва, Алтуфьевское шоссе, 44
date = 1292572012292
Обратно в телефон labels.db запихиваются тоже через adb, только вместо pull говорим push:
adb -d push labels.db /data/data/ru.yandex.yandexmaps/databases/labels.db
или для карт от Хохлова:
adb -d push labels.db /data/data/ru.yandex.yandexmaps.khokhlov/databases/labels.db