android: использование яндекс карты в своем приложение?
Возможноли использовать в андроид приложении яндекс карты так же как это делаеся для обычной MapActivity?
Возможноли использовать в андроид приложении яндекс карты так же как это делаеся для обычной MapActivity?
брать на гитхабе github.com/...xmapkit-android
ВебВью тормозит порой. А показать в webview яндекс-карту — ананизм, ИМХО. Ты ведь можешь получить текущие координаты через Location, послать их АПИ Яндексу, и получить ответ от него, и его визуализировать. А что такое гугл мапс? Ну ты просто шлешь свои координаты и получаешь ответ. И накладываешь слои согласно своих координат (данные и координаты — из Яндекса. Если позволит лицензионное соглашение, по которому ключ выдается) А у Андроида нет поддержки SOAP, который у Бинга (и у всех у майкрософтовских). А на JSON микрософт запросы не воспринимает. Там реальный гемор с генерацией SOAP запросов (во всяком случае, Microsoft Translator для Андроида пришлось запросы снифать, и писать aka NetworkStream)
Ну вот зря вы так, зря.
Для Bing:
bingmapsandroidsdk.codeplex.com для бинга, сам пользовался в своем приложении.
В догонку, для медитации
stackoverflow.com/...ssing-waypoints
Для OSM:
code.google.com/...osmandroid/view
Эталонное приложение на мой взгляд — Locus, от чешских собратьев
locus.asamm.cz
С мультикартовой поддержкой.
locus.asamm.cz/...creenshot02.png
Блин, ну использовать бинг и яндекс на андроиде вместо гугел мапс — изврат полный.
Не вместо, а в дополнение =).Я в винфоне также подтягивал гугловые карты, потому что по лицензии нельзя сторонние карты.
Конечно, аргумент- если у тебя гуглофон пользуйся гуглевскими серсвисами, если винфон майкрософтскими, если айфон- аппловскими, хорош. Но я как-то не люблю когда мне говорят, что я могу использовать, а что нет. Мне лично пофиг на их конкуренцию, хочу иметь все возможности =).
Ну все-таки, что такое карты в данном контексте? ИМХО, это — ландшафт (который пофиг откуда брать — то-ли с гугла, то ли с яндекса) плюс оверлеи. Оверлеи в MapView накладываются кастомно, через mapController. Оверлеи можно построить по сервисам Яндекса (заюзать его геокодер, маршрутизатор и т.д. — api.yandex.ru/.../geocoder.xml) Чисто дергать их по HTTP и парсить ответ. В частности, ничего не мешает заюзать в девайсе ответ LocationManagera о широте и долготе, скормить его геокодеру Яндекса через URL строку, и распарсить ответ. Ну ключ, ясенпень, получать на Яндексе нужно, чисто для данного приложения. А все, что в API Яндекса недокументировано (подробности о запросах / ответах) — снифается локально через Fiddler. Вот, кстати, офигеннейший пример по LocationAPI и MapView: www.vogella.de/...PI/article.html
а как быть с АПИ ключем? там нужно указывать для какого домена он получен, а у меня не домен, а програма.
я брал на свой домен, меня никто не ругал =). Внизу смотри по поводу бинга и OSM.
Нет, это запрещено Пользовательским соглашением.
Ну, если соотв. view нет — можно дергать API Яндекса, парсить JSON ответ и накладывать, зная координаты, соотв. оверлеи на MapActivity
12 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів