использование яндекс карт в своем приложении

«Яндекс» разрешил сторонним разработчикам добавлять офлайн-карты в свои приложения Статьи редакции

Компания выпустила обновлённый Yandex MapKit.

«Яндекс» представил обновлённую версию инструмента Yandex MapKit, с помощью которого сторонние разработчики смогут встраивать в свои приложения «Яндекс.Карты». Об этом vc.ru сообщили в компании.

Теперь кроме самих карт разработчики могут добавить возможность строить пешие и автомаршруты с учётом пробок, поиск организаций и адресов, просмотр панорам. Кроме того, в обновлённом Yandex MapKit карты поддерживают работу в офлайн-режиме. Разработчики также могут настроить внешний вид карт — например, сделать так, чтобы их цвет менялся в зависимости от времени суток.

Банку Yandex MapKit поможет отобразить на карте ближайший к клиенту банкомат и построить до него маршрут. Компания со штатом торговых представителей может создать приложение, которое будет показывать каждому сотруднику, за какой район он отвечает и куда должен отправиться прямо сейчас.

Разработчики могут использовать Yandex MapKit бесплатно или на коммерческой основе. Лицензию можно оформить на год. «Яндекс» предлагает два типа лицензии: стандартный и расширенный. Их стоимость зависит от назначения приложения, его возможностей и количества запросов к нему.

Расширенную лицензию «Яндекс» рекомендует разработчикам корпоративных и платных приложений, а также сервисов с ограниченным доступом по приглашениям. Стоимость такой лицензии оговаривается в индивидуальном порядке.

Стоимость стандартной лицензии зависит от количества запросов к приложению в сутки. Годовая лицензия для сервиса, который получает до 1000 запросов в сутки, обойдётся в 120 тысяч рублей, а каждая тысяча запросов сверх лимита — в 120 рублей. Лицензия для приложения с 10 тысячами запросов в сутки будет стоить 360 тысяч рублей в год, с 50 тысячами — 850 тысяч рублей.

По данным «Яндекса», Yandex MapKit используют «сотни» сторонних сервисов. Точную статистику по количеству клиентов и приобретению лицензий компания не раскрывает.

Источник

Интеграция карт в ваше Android-приложение

Есть много разных идей, для реализации которых могут понадобиться карты на мобильных устройствах.
Возможности таких устройств позволяют довольно оперативно получать информацию о местоположении, графические данные и графические преобразования для отображения объёма ландшафта.

использование яндекс карт в своем приложении

Начнём с отечественного производителя.

Yandex

Библиотеку Yandex MapKit можно скачать с GitHub’а, там же есть версия и для iOS.
Но прежде чем начать использовать, нам надо получить API-key, для этого идём на почту и пишем письмо в support@mobmaps.yandex.ru, указав в заголовке «Map Kit запрос API-ключа». В ответ вам пришлют письмо с указанием дополнительных ссылок на документацию, на правила использования и собственно с самим ключом в теле письма (а могут и не прислать, кстати).

Пока ждём письмо, берём библиотеку и прикрепляем её к проекту.

После долгого ожидания с кружкой кофе, знакомимся с содержимым письма и информации по ссылкам, берём ключик и пишем в вашем layout’е приложения следующий код:

где заместо «you are key» вставляем полученный ключ. Всё, карта есть.

Далее код показывает, как перемещать карту на заданную координату и использовать зум:

Google

Для использования Google Maps надо совершить куда более изощрённые действия. Я расскажу, как получить debug-key для использования карт, но процесс получения release версии похоже несколько замороченней, но я release ещё не получал.

Для получения debug-key, надо найти ваше хранилище ключей, для отладки.
По-умолчанию, путь будет выглядеть примерно так:

Затем открываем командную строку, переходим в каталог, куда установлена Java:

где путь_до_хранилища_ключей — свой путь до debug.keystore (осторожно, возможны проблемы с пробелами в пути).

После чего в том же окне будет выведен md5-ключ после «Certificate fingerprint (MD5)».
Идём по ссылке и регистрируем код.
После чего Google сгенерирует с нужным кодом для layout и встроенным кодом, берём его и вставляем к себе в layout.
Далее нам, надо наш Activity представить в примерно следующем виде:

Замечу, что Activity наследован должен быть от MapActivity хранящийся в com.google.android.maps.MapActivity.
А в манифесте прописать между тегами вставить:

И не забыть, про разрешение доступа в интернет для приложения:

В остальном функционал GoogleMaps и YandexMapKit весьма схож:

Как можно видеть, процесс интеграции карт в приложения довольно простой, а спектр использования довольно широк.
Более подробно можно ознакомиться ниже.

Определение собственной позиции

Чтобы немного расширить пример, приложу кусок кода:

Но для использования этого кода, в манифесте следует указать следующее разрешение:

Источник

Условия использования сервиса Яндекс.Карты

1. Общие положения

1.1. ООО «ЯНДЕКС» (далее — «Яндекс») предлагает пользователю сети Интернет (далее — Пользователь) — использовать сервис Яндекс.Карты, доступный по адресу: https://maps.yandex.ru (далее — «Сервис»).

1.2. Настоящие Условия представляют собой дополнение к Пользовательскому соглашению сервисов Яндекса относительно порядка использования Сервиса. Во всем, что не предусмотрено настоящими Условиями, отношения между Яндексом и Пользователем в связи с использованием Сервиса регулируются Пользовательским соглашением сервисов Яндекса (https://yandex.by/legal/rules), а также Лицензией на использование поисковой системы Яндекса (https://yandex.by/legal/termsofuse), Политикой конфиденциальности (https://yandex.by/legal/confidential).

1.3. Начиная использовать Сервис/его отдельные функции, Пользователь считается принявшим настоящие Условия, а также условия всех указанных выше документов, в полном объеме, без всяких оговорок и исключений. В случае несогласия Пользователя с какими-либо из положений указанных документов, Пользователь не вправе использовать Сервис.

1.4. Настоящие Условия могут быть изменены Яндексом без какого-либо специального уведомления, новая редакция Условий вступает в силу с момента ее размещения в сети Интернет по указанному в настоящем абзаце адресу, если иное не предусмотрено новой редакцией Условий. Действующая редакция Условий всегда находится на странице по адресу: https://yandex.by/legal/maps_termsofuse.

1.5. В случае если Яндексом были внесены какие-либо изменения в настоящие Условия, в порядке, предусмотренном п. 1.4. настоящих Условий, с которыми Пользователь не согласен, он обязан прекратить использование Сервиса.

1.6. Сервис предлагает Пользователю возможность бесплатного доступа к актуальной картографической и иной справочной информации. Все существующие на данный момент функции Сервиса, а также любое их развитие и/или добавление новых является предметом настоящих Условий.

1.7. Используя Сервис, Пользователь дает свое согласие на получение сообщений информационного и рекламного характера. Пользователь вправе отказаться от получения сообщений рекламного характера путем использования соответствующего функционала Сервиса или следуя инструкциям, указанным в полученном сообщении рекламного характера.

2. Использование Сервиса. Отдельные функции Сервиса

2.1. Сервис предоставляет Пользователю функциональную возможность самостоятельно и по своему выбору добавлять на карты пользовательскую информацию, в том числе знаки, метки, текстовые подписи, сообщения и т.п. (далее — «Пользовательские объекты»). Нанесение Пользовательских объектов не модифицирует исходные данные и допускается исключительно для удобства использования Пользователем Сервиса. Пользователь вправе создавать, сохранять, размещать в свободном доступе в сети Интернет ссылки на Пользовательские объекты. Ссылки на Пользовательские объекты могут также распространяться другими пользователями Сервиса.

2.2. Пользователь самостоятельно и всецело несёт все риски и ответственность за выбор местоположения Пользовательских объектов, соответствие законодательству, содержание, полноту, корректность и достоверность описания добавленных Пользовательских объектов. Яндекс не несет никакой ответственности за обозначение и описание любого Пользовательского объекта, не подтверждает и не опровергает соответствие законодательству, корректность и достоверность описания любого Пользовательского объекта. Яндекс оставляет за собой право без предупреждения и по своему усмотрению удалить любой Пользовательский объект или набор Пользовательских объектов в случае, если содержащаяся в его описании информация противоречит законодательству РФ, содержит ненормативную лексику, а также в иных случаях, когда обозначение и/или описание Пользовательских объектов и/или распространение ссылки на Пользовательские объекты нарушает настоящие Условия, условия использования других сервисов Яндекса или положения документов, указанных в п. 1.2. настоящих Условий, а также в целях защиты интересов Яндекса, пользователей сервисов, иных третьих лиц.

2.3. Сервис предоставляет пользователю функциональную возможность получить код карты в состоянии на момент получения кода, для вставки в свой сайт, блог, мобильное приложение. Данная функция может использоваться Пользователем только в рамках сайтов или мобильных приложений, доступных для бесплатного открытого использования неограниченным кругом лиц. Функция не может использоваться для проектов, требующих оплаты, или иным образом ограничивающих доступ к ним третьих лиц. Необходимость зарегистрироваться не считается ограничением доступа в рамках настоящего пункта.

2.4. Сервис предоставляет Пользователю функциональную возможность автоматического построения маршрутов на картах, указывающих на вариант пути от точки отправления до точки назначения, указанных Пользователем (Далее — «Маршрут»). Построение Маршрутов не модифицирует исходные данные и допускается исключительно для удобства использования Пользователем Сервиса.

Пользователь самостоятельно и всецело несёт все риски и ответственность за выбор Маршрута и следование выбранным Маршрутом. Яндекс не гарантирует правильность, оптимальность, актуальность и/или соответствие Маршрутов правилам дорожного движения и не несет ответственности за выбор Пользователем Маршрута и последствий следования ему. Пользователь должен предпринимать все меры внимательности и осмотрительности перед выбором Маршрута и в ходе его использования.

2.5. Сервис может содержать в себе информацию о текущем уровне загруженности дорог, краткосрочный прогноз загруженности, а также информацию о средней загруженности дорог в течение суток (далее – Сервис Яндекс.Пробки).

Информация, доступная в Сервисе Яндекс.Пробки получена на основание анализа обезличенных данных и носит справочный характер.

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

2.6. Сервис может предоставлять Пользователю функциональную возможность поиска и просмотра информации о движении общественного транспорта (далее – Режим «Транспорт») на карте определенной местности. Информация, отображаемая при использовании Режима «Транспорт», предоставлена партнерами Сервиса и/или получена из открытых публичных источников и носит справочный характер, Яндекс не несет ответственность за точность, актуальность и достоверность предоставляемой информации, включая маршруты и направления движения общественного транспорта, расписание транспорта, а также нахождение общественного транспорта на определенной точке на карте.

2.7. В Сервисе используются объекты интеллектуальной собственности, права на которую принадлежат соответствующим правообладателям, а также информация, предоставленная её обладателями. Полный перечень правообладателей и обладателей информации перечислен в п. 5 настоящих Условий.

2.8. Сервис может предоставлять Пользователю возможность осуществлениябронирования услуг организации при условии наличия формы бронирования длясоответствующей организации в Сервисе.

Осуществление бронирования производится путем заполнения Пользователемформы бронирования и указания необходимых сведений.

Заполняя и отправляя форму бронирования, Пользователь выражает согласие наобработку указанных в форме данных Яндексом на условиях Политикиконфиденциальности (https://yandex.ru/legal/confidential), а также на передачу данныхорганизации, в отношении услуг которой запрашивается бронирование, в целяхпредварительного бронирования услуг и осуществления обратной связи по вопросамбронирования и оказания услуг Пользователю, а также в целях обратной связиорганизации с Пользователем по вопросам оказания ею услуг/реализации товаров.

2.9. Пользователь имеет возможность осуществления бронирования услуг, оказываемых организацией, с использованием сервиса Yclients, предоставляемого партнером Сервиса на условиях, опубликованных по адресу: https://www.yclients.com/info/user-agreement. При заполнении формы бронирования и осуществлении брони с ее использованием Пользователь выражает согласие с направлением указанных в форме данных ООО «УАЙКЛАЕНТС» (ОГРН: 5157746100716), а также представителям организации, в отношении услуг которой запрашивается бронирование, в целях предварительного бронирования услуг и осуществления обратной связи по вопросам планирования и оказания услуг Пользователю.

3. Использование функции Яндекс.Бизнес

3.1. Сервис предоставляет Пользователю функциональную возможность размещения, просмотра и поиска информации об организациях, расположенных по адресам, отображаемым в Сервисе (далее — Яндекс.Бизнес), включая сведения об адресе, наименовании, контактных данных, режиме работы, информацию об оказываемых услугах/реализуемых товарах и отзывы Пользователей. Использование Яндекс.Бизнеса и его разделов осуществляется на Условиях использования сервиса Яндекс.Бизнес, опубликованных по адресу: https://yandex.ru/legal/clients_termsofuse.

Функциональность Яндекс.Бизнеса может различаться в зависимости от региона/страны местонахождения Пользователя.

3.2.-3.9. Утратили силу (пункты в новой редакции опубликованы по адресу, указанному в п. 3.1.Условий).

4. Иные положения

4.1. Яндекс не гарантирует сохранность информации, представленной в Сервисе (включая Пользовательские объекты и информацию сервиса Яндекс.Бизнес, Яндекс.Пробки и др.) в каком-либо объеме и/или в течение какого-либо срока, в том числе в случае изменения данных в связи с развитием или изменением Сервиса.

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

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

4.4. Используя Сервис, Пользователь может сообщить о неточности информации, размещенной в Сервисе (неверное название, положение на карте, неактуальность данных, необходимость удаления объекта), указав соответствующие сведения в специальной форме связи Сервиса. Содержание сообщения, направленного Пользователем при использовании данной функциональной возможности, является общедоступным и открыто размещается в сервисе Яндекс.Народная карта (https://n.maps.yandex.ru) в целях получения оценки зарегистрированных пользователей такого сервиса на предмет достоверности и актуальности сообщенной информации. Направляя сообщение, Пользователь выражает согласие на опубликование заполненной им формы сообщения. Пользователь обязуется не указывать в сообщении информацию, относимую законодательством Российской Федерации к информации ограниченного доступа, в том числе личные персональные данные, персональные данные третьих лиц, а также информацию, распространение которой запрещено.

4.5. Любая информация, используемая в Сервисе, предназначена исключительно для личного некоммерческого использования. При этом любое копирование Данных, их воспроизведение, переработка, распространение, доведение до всеобщего сведения (опубликование) в сети Интернет, любое использование в средствах массовой информации и/или в коммерческих целях без предварительного письменного разрешения правообладателя запрещается, за исключением случаев, прямо предусмотренных функциональными возможностями сервиса, настоящими Условиями, условиями использования других сервисов Яндекса или документами, указанными в п. 1.2. настоящих Условий.

4.6. Представленная в Сервисе информация носит справочный характер. Яндекс не гарантирует, что Сервис, качество какого-либо продукта, услуги, информации, полученных с использованием Сервиса, соответствует/будет соответствовать требованиям Пользователя, а также что функции Сервиса будут предоставляться непрерывно, быстро, надежно и без ошибок.

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

Источник

Какими картами лучше пользоваться при разработке мобильного приложения

Сейчас я занимаюсь подготовкой к разработке приложения под iOS. В приложении будет активно использоваться карта местности.

Хочу задать несколько вопросов тем, кто на практике использует в своих приложениях различные карты:

Отвечает Иван Чумак, основатель мобильного приложения гиперлокальных новостей Meanwhile

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

Это будет Россия или, например, США? Если Россия, то планируете вы покрыть только Москву и Петербург, или же фокус будет лежать на небольших городах, или даже сёлах и ПГТ? Если вы планируете запускать ваше приложение в мелких городах России, то тут бесспорный лидер — «Яндекс.Карты». Там, где у Google Maps просто серые пятна и невнятные линии, у «Яндекс.Карт» подписанные улицы и подъезды. Если вы планируете стартовать в крупных городах, то стоит всё-таки использовать Google Maps по той простой причине, что у многих пользователей они уже стоят, а значит, процесс загрузки вашего приложения будет происходить быстрее.

Кроме того, на Android (а рано или поздно вы начнете делать приложение и для Android) Google Maps стоят уже по умолчанию. Это нативные («родные») карты, которые идеально заточены под Android — это позволит вашим пользователям загружать все быстрее, а ваши разработчики потратят меньше времени на интеграцию. C iOS Google Maps также замечательно работают. И, как мне кажется, они очень красивые, изящные, легко настраиваются, не перегружены никакой лишней информацией и просто удобны.

Конечно же, плох тот стартапер, который не мечтает покорить мир. С выходом на запад использование «Яндекс.Карт» станет весьма неудобным из-за очень плохого покрытия. Так что имеет смысл изначально брать именно Google Maps.

В 90% случаев этот выбор себя оправдает С ценами и лицензиями на Google Maps можно ознакомиться на их же портале. Пока вы не достигли размеров «Вконтакте» — всё бесплатно.

Почему не стоит использовать open-source проекты? Именно из-за их открытости. Они хоть и бесплатные, но у вас никогда не будет гарантии, что эти карты будут совместимы с последними (или устаревшими) версиями мобильных ОС, что информация на них будет объективна и верна, что они в принципе поддерживают и адаптированы под мобильное использование.

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

Это как коммунизм — идея неплохая, но на практике не очень срабатывает.

Чтобы задать свой вопрос читателям или экспертам, заполните форму заявки на странице.

Источник

Карты на стол: как выбрать поставщика географических карт для мобильного приложения

использование яндекс карт в своем приложении
У вас есть отличная идея для мобильного приложения. Дизайнеры уже продумывают элементы интерфейса, вы мысленно читаете положительные отзывы на популярных сайтах, в уме прикидываете статью на Хабре. Будущее прекрасно и пестрит как минимум 4,5 звездами в Google Play и AppStore. Ах да, осталась мелочь: выбрать поставщика карт. Но когда начнете вертеть эту мелочь и так, и эдак, то станет понятно, что монетка не упала орлом или решкой, а стала на ребро.

От чего зависит выбор картографического сервиса? Кажется, что все просто: приложение для России? Берем карты Яндекса. Направляем взгляд на Запад? Google maps в помощь. Или так: для Android подойдут гугловские карты, так как все равно на эти смартфоны предустанавливают (пока) продукты Google. Проще? Да. Выгоднее и логичнее? Нет.

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

1. Ваше приложение


В первую очередь смотрите на свой продукт, а не на предложения геосервисов.

О чем вы

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

Например
В питерском Институте дизайна и урбанистики захотели гулять интересно, а не кратчайшим путем, и разработали сервис Sight Safari. Мобильное приложение пока что на стадии разработки. А вот история появления веб-сервиса наглядно поясняет, почему карты от Google и Яндекса не их метод и как бороться с недочетами карт с открытым кодом.

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

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

Также стоит помнить, что если ваша функциональность строится на базе карт, то в лице провайдера лучше найти партнера, а не мелкую побочную детальку. Чтоб в один непрекрасный день весь контроль над критичной частью инфраструктуры не пошел в туман вместе с изменениями в условиях использования API карт.

Где вы

«А сегодня мы попробуем завоевать мир» – говорила лабораторная мышь Брейн в сериале о себе, любимой, и не такой амбициозной мышке Пинки. Если вас одолевают те же мысли, то переходите к просмотру карт вживую: какая детализация по странам? А на каких языках названия? Если приложение установят на iPhone в Колумбии, то сможет пользователь найти нужный дом в Арауке, а в Сан-Андреасе кликнуть на маркер, вызвать окошко с информацией и прочитать описание на креольском?

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

Например
Польский веб-сервис по поиску лекарств в аптеках GdziePoLek работал на Google Maps, стабильно и без вопросов. Но в июне 2018 года владельцы получили письмо от Google, где их уведомляли об изменениях на платформе и в условиях использования. Новые реалии GdziePoLek не устроили. Пришлось искать другого поставщика карт. На удивление, альтернатива не такая плохая: аптека в небольшом городке Констанцине (23 тысячи жителей на 2006 год) выглядит достойно не только у Google.

использование яндекс карт в своем приложении
(Источник: блог стартапа)

Проверьте, какие карты предпочитают пользователи в нужных вам ареалах. Привычка — страшная вещь: вы можете сделать наикрутейшую маршрутизацию, красочные слои с кучей информации, а пользователям будет неудобно перестраиваться. И вот уже идут отказы от приложения.

Сколько у вас денег

Впрочем, здесь есть один щекотливый момент: если у вашего приложения много загрузок, количество пользователей растет не по дням, а по часам, а денег на оплату карт нет — что вы сделали не так в своей маркетинговой стратегии?

Сколько вы берете денег

Если ваше приложение можно свободно скачивать и кто угодно может в нем зарегистрироваться – поздравляем, вы прекрасны и получаете карты бесплатно от любого провайдера, даже от ведущих игроков. В противном случае (например, если у вас платное приложение для бухгалтеров) придется использовать коммерческую лицензию. И здесь стоит четко понимать, какую долю в вашей функциональности занимают карты и сколько обращений к ним со стороны пользователя будет в месяц.

У вас нативное или гибридное приложение

Карты – это функциональность, которая реализуется на стороне смартфона. Поэтому если у вас нативное приложение для одной или обеих платформ, то вам нужны специалисты по Java/Kotlin и/или Objective-C/Swift. Если же в планах выпустить на рынок гибрид, то привлекать знатоков нативных языков не потребуется.

Большинство провайдеров поддерживают как iOS, так и Android, и стараются создавать подробные гайды для разработчиков. Так что достать API карт для желаемой платформы не проблема.

2. Ваш провайдер

использование яндекс карт в своем приложении

Google Maps

Ты не ты, когда не прочитал документацию от Google. Примеры кода, библиотеки, SDK – найти можно все. Разработчикам предлагается воспользоваться инструментом для подбора API, на случай, если вы не уверены, какой интерфейс для проекта нужен.

Несмотря на путаницу в тарифах и не всем приглянувшиеся обновления платформа постоянно развивается, встраивает в карты что-то новое. Например, на конференции в мае 2018-го анонсировали режим дополненной реальности: наводишь камеру на улицу и видишь карточки мест, расположенных рядом, названия собственно улицы, строишь маршрут прямо на асфальте. Разработчики добавили в презентацию, как говорится, for fun помощника – лисицу, которая показывает, куда идти.

использование яндекс карт в своем приложении
(Источник: Jeff Chiu / AP / Scanpix / LETA)

Обратите внимание
С 11 июня для доступа к услугам Google Maps Platform разработчикам требуется действующий ключ API и платежный аккаунт на Google Cloud Platform. Даже если вам многого не надо и все ваши действия вписываются в кредит на 200 долларов.

использование яндекс карт в своем приложении

Яндекс.Карты

Не в противовес Google Maps Platform, но близко к тому Яндекс показывает Yandex MapKit. Сервис позволяет интегрировать карты в мобильные приложения для Android и iOS. Карты будут работать как в онлайн-режиме, так и в офлайне.

Это многофункциональный и прозрачный в части оплаты инструмент: даёт возможность встроить в приложение практически любую функцию «Яндекс.Карт», от поиска адресов до прокладки маршрута с учетом строящихся домов. Полный прайс здесь.

Обратите внимание
Yandex MapKit можно использовать бесплатно или на коммерческой основе. Общее число запросов к геокодеру, маршрутизатору и панорамам в сутки не должно превышать 25 тысяч для бесплатного использования.
(Источник: Яндекс)

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

использование яндекс карт в своем приложении

OpenStreetMap

Набирающий все большую популярность сервис с открытым кодом, «Википедия карт». Данные создаются и вносятся силами участников сообщества. Прогремел по СМИ как отличный вариант «crisis mapping», когда в 2010 году после землетрясения на Гаити тысячи пользователей занялись актуальной картой региона с учетом изменившегося рельефа и нанесением точек, где пострадавшие могут получить помощь.

Основная цель сообщества мапперов OSM — это не столько отрисовка карты, сколько создание базы данных на ее основе и наполнение точек информацией. Поэтому на базе OSM можно создать множество интересных карт: велосипедные маршруты, карты курортов с достопримечательностями и так далее.

Эти карты бесплатные, но есть свои тонкости технического характера (например, ограничение на количество запросов геокодирования в секунду к серверу OSM). Плюс неудобство могут доставить все «прелести» сетевого проекта.

Например
Тег highway=unclassified в OSM означает не «дорога неизвестного типа», а конкретный тип дороги по европейской классификации. У него предполагается наличие пешеходной обочины или тротуара. Но многие пользователи присваивают этот тег любой неизвестной дороге, в результате приложения с навигацией на основе OSM строят здесь пешие маршруты. А дорога-то может быть только для авто.

использование яндекс карт в своем приложении

Mapbox

Этот сервис можно назвать своеобразной «оберткой» над OSM, что дает отличную детализацию картам. К тому же Mapbox в новостных сводках часто называют наиболее энергично развивающимся картографическим сервисом.

Например
Компания Urbica выпустила AR-приложение: можно посмотреть 3D-версии знаковых зданий Санкт-Петербурга в дополненной реальности. За базу взяли карты от Mapbox из-за активного развития SDK для Unity (платформа для разработки 3D-игр).

CEO Mapbox Эрик Гундерсен в одном из интервью сказал: «Если делаешь технологии для машин, то плотно общайся с автомобильными инженерами. По сути, мы делаем карты не для людей, а для роботов. Они спроектированы с учетом возможностей автомобильных сенсоров, радаров и других систем.»

использование яндекс карт в своем приложении

Геолокационная платформа, основанная Nokia (сейчас принадлежит консорциуму, в который входят компании Audi AG, BMW Group, Daimler AG, Intel, Navinfo, NVIDIA, Pioneer, Bosh, Continental). Покрытие удовлетворительное, в том числе в России. Но карты в нашей стране, однако, не страдают подробностями: вы можете проложить маршрут, увидеть номера домов, однако POI (point of interest, достопримечательности, магазины, офисы, заправки и так далее) часто оказываются неактуальными. Поэтому если ваше приложение будет ориентировано на пешеходов или поиск организаций (особенно в небольших городах), Here в России не ваш провайдер.

использование яндекс карт в своем приложении

А вот для водителей и логистических сервисов Here может стать хорошим решением. Карты Here есть в авто от Audi, BMW, Daimler. Да и покупали автопроизводители Here как базу для работы над системами автопилотирования, что вылилось в проект HD Live Map. В блоге компании на Medium, в частности, рассказывается, как при помощи API для маршрутизации грузовиков максимально упрощать путь автомобильного парка.

Если вы планируете сделать свое приложение платным, то — сюрприз! — Here позволяет делать это на freemium-тарифе. Yes, that’s fine with us — написано в FAQ. А вот за что придется платить, подробно можно узнать здесь.

Обратите внимание
Если ваша задача — точный поиск по адресам в ЕС, изучите Here: детализация карт в Европе на высоте.

использование яндекс карт в своем приложении

Отечественный картографический сервис с детализацией до заборов. Открытый код как и у OSM, и та же JS-библиотека Leaflet в основе. Подробная база данных по России и не только. Особенно радуют сведения из справочников 2ГИС по местным компаниям, поэтому платформа пригодится тем, кто ориентирует приложения на пешеходов или каталоги фирм: ваши пользователи смогут легко найти нужный офис или достопримечательность на карте. Однако тут стоит быть внимательным — проверьте заранее, актуальна ли в нужном городе справочная информация, все ли POI нанесены на карту.

Сервис условно-бесплатный — всё то же использование API только для свободно скачиваемых открытых приложений.

Обратите внимание
2ГИС сотрудничает с компанией Apple: в приложение Карты на iOS были встроены данные об организациях в 290 городах, фотографии заведений и отзывы на них. Возможно, это поможет российским поклонникам Apple не попасть в ситуацию как в анекдоте, кочующем по форумам картографов на Западе:
A priest, a rabbi and a monk using Apple Maps walk into a bar, maybe it’s a restaurant, or possibly a gas station. (Священник, раввин и монах, используя карты Apple, зашли в бар. Или ресторан. Или, возможно, это заправка.)

использование яндекс карт в своем приложении

TomTom

TomTom — компания из Нидерландов, которая прочно обосновалась на рынке навигаторов в странах Евросоюза и Северной Америки. Благодаря покупке в 2008 году поставщика навигационных карт Tele Atlas имеет отличное покрытие.

Обратите внимание
TomTom отметилась в сотрудничестве с Apple: «яблочная компания» выбрала карты TomTom для навигационного приложения собственной разработки на iOS 6. И продлевает соглашения по сей день. Угадайте, чьи карты таким образом были заменены в далеком 2012 году? Верно – Google.

использование яндекс карт в своем приложении

Mapfit

Этот провайдер от имени его CEO обещает более точные карты, чем у тех же Mapbox и OSM. И стоимость ниже, чем у Google до введения новой системы оплаты.

Обратите внимание
На сайте Mapfit в разделе FAQ есть пункт о миграции с карт любого другого провайдера, где обещают инструкцию на GitHub. На момент написания этого материала ссылка вместо пошагового гайда выдавала грустную ошибку 404. Однако в документации есть инструкция о переходе с конкретно Google maps.

LeafLet и OpenLayers

Если вы хотите независимости практически в абсолюте, то придется постараться. Вы можете развернуть собственную карту на базе OSM на своем сервере, с блэкджэком и нужными опциями — и все благодаря библиотекам Leaflet и OpenLayers.

Обе библиотеки имеют открытый исходный код на JavaScript. Карты будут кастомизированы так, как вы хотите. Не будет зависимости от маркетинговых решений вендора типа Google. Но остается открытым вопрос: настолько ли велика необходимость приобретать свои серверы и ваять личную карту?

А если покороче?

Для удобства сравнения мы свели самые важные данные по провайдерам в одну картинку. За максимальную оценку взяли «+++», за минимальную «+». Как видите, на момент написания этого материала провайдеры (в целом) идут примерно в одной линии. Конечно, всё может измениться в один момент: мапперы из OSM внезапно перестанут пополнять карты, Google сменит вид деятельности и займется выпуском детских книг. Но пока что имеем такую картину.

использование яндекс карт в своем приложении

3. И как это работает?

Допустим, вы задумали приложение из лучших ностальгических побуждений. Было бы отлично, если в любом городе России на карте выводился список песен, где поется о городе или достопримечательностях. «Замечательный мужик / Меня вывез в Геленджик» или «В Питере пить» от одного известного исполнителя вам захотелось увековечить на карте. Точки вы планируете ставить либо в туристическом центре города, либо в каком-нибудь популярном у горожан месте. Приложение конечно же будет бесплатным – вам ничего не жалко для народа.

Приложение для России, западный рынок вы не рассматриваете. Число обращений к карте вряд ли будет огромным – вы понимаете, что приложение рассчитано не на массовое и не на ежедневное использование, хотя в период отпусков количество скачиваний может увеличиться. Из личных предпочтений вы захотели сделать приложение для Android-смартфонов.

Ваши действия? Вам вполне подойдет точность и детализация карт от Яндекса и Google. 2ГИС тоже ваш провайдер. Однако вы хотите ставить балун (всплывающее окно с любым HTML-содержимым) на какое-то интересное место, о котором, возможно, не знают официальные справочники. А может, и самостоятельно дополнять карту на радость пользователям. Значит, ваш выбор – OSM. Удачи!

Например
В практике Umbrella IT чаще всего фигурируют карты от Google. Такой выбор обусловлен удобством использования и кастомизации, а также богатым функционалом. Однако бывают ситуации, когда заказчику требуется что-то особое. Таким стал случай с приложением, от которого требовалась работа в офлайне и хорошая детализация карты для чекинов, но в том регионе карты от Google показывали только большие города. И как чекиниться в небольшом поселке, если на карте вместо него унылый серый многоугольник? Так что мы приняли решение использовать OSM

4. Бонус: что делать, если вы перевозите грузы

Обратить внимание на Google. Для вашего приложения важна стабильность работы карт, детальность в небольших городах. И главное — возможность отслеживать груз. А вот работа с картами в офлайне не сильно влияет на выбор: вашим пользователям не потребуется загружать тяжелые карты на свои смартфоны, смотреть названия улиц — главное видеть точку, в которой сейчас находится груз.

Если же вы рассматриваете другого провайдера, то держите в голове следующее: для приложений по мониторингу транспорта/людей/еще чего-то любой поставщик карт предоставляет свои услуги платно. Даже если у вас свободно распространяемое бесплатное приложение, а количество обращений к карте не превышает лимиты для бесплатных тарифов.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *