Salut
Fișierul de Maps.app care ține bookmark-urile este ~Library/Containers/com.apple.Maps/Data/Library/SyncedPreferences/com.apple.Maps.plist.
Din păcate bookmark-urile sunt în format binar deci trebuie sa faci ceva inginerie pe dos (reverse engineering
) să te prinzi unde sunt scrise latitudinea si longtitudinea.
De exemplu la mine pe mașină (am 2 bookmark-uri, unul cu numele “Bucegi”):
Copiem plist-ul in /tmp ca sa-l stricăm fără probleme:
cd /tmp/
cp /Users/diciu/Library/Containers/com.apple.Maps/Data/Library/SyncedPreferences/com.apple.Maps.plist .
Convertim plist-ul la text (xml):
plutil -convert xml1 com.apple.Maps.plist
Extragem nodurile de XML de interes (am două bookmark-uri in Maps.app, deci 2 noduri):
diciu$ xpath com.apple.Maps.plist "/plist/dict/dict/dict/dict/data"
Found 2 nodes:
-- NODE --
<data>
CAASBkJ1Y2VnaVFLOLIxErVGQFnQXWIlHX85QKEBhFpc
KHq0RkCpAeAKewdzfTlAsQEAlHLrS6ujP7kBACDmrG0O
pz8=
</data>-- NODE --
<data>
CAMSE1ByYWhvdmEg4oCUIFJvbWFuaWFRiyfajkS1RkBZ
yNQr01Z/OUChAYsn2o5EtUZAqQHI1CvTVn85QLEBAIC/
Z0AheD+5AQCAUKqVMYM/
</data>
Decodăm conținutul primului nod din base64:
diciu$ (echo "import base64"; echo "print base64.b64decode('CAASBkJ1Y2VnaVFLOLIxErVGQFnQXWIlHX85QKEBhFpcKHq0RkCpAeAKewdzfTlAsQEAlHLrS6ujP7kBACDmrG0Opz8=')") | python | hexdump -C -c
00000000 08 00 12 06 42 75 63 65 67 69 51 4b 38 b2 31 12 |....BucegiQK8.1.|
0000000 \b \0 022 006 B u c e g i Q K 8 ? 1 022
00000010 b5 46 40 59 d0 5d 62 25 1d 7f 39 40 a1 01 84 5a |.F@Y.]b%..9@...Z|
0000010 ? F @ Y ? ] b % 035 177 9 @ ? 001 204 Z
00000020 5c 28 7a b4 46 40 a9 01 e0 0a 7b 07 73 7d 39 40 |\(z.F@....{.s}9@|
0000020 \ ( z ? F @ ? 001 ? \n { \a s } 9 @
00000030 b1 01 00 94 72 eb 4b ab a3 3f b9 01 00 20 e6 ac |....r.K..?... ..|
0000030 ? 001 \0 224 r ? K ? ? ? ? 001 \0 ? ?
00000040 6d 0e a7 3f 0a |m..?.|
0000040 m 016 ? ? \n
0000045
În hexdump-ul de mai sus se vede numele bookmark-ului în clar (“Bucegi”).
Latitudinea și longitudinea nu știu unde sunt (teoretic poți afla făcând un bookmark cvasi identic la 45 lat nord și 46 lat nord ca să vezi unde e octetul de latitudine, șamd).
Concluzia ar fi că dacă ai răbdare să sapi, probabil se poate.
Din păcate Maps.app nu e tocmai prietenos cu datele din exterior.