ТЕКСТ: АЛЕКСАНДР БАЛЫБЕРДИН Когда после анонса iOS 6 Apple отказались от карт Google, многие восприняли этот шаг весьма скептически, и были правы. Еще тогда я сделал предположение, что найдутся консерваторы, которым будут нужны привычные карты от Google, так почему бы их не вернуть и не предложить больше?! Так появилось приложение The Maps!
Изначально я планировал совместить в одном приложении стандартные карты и карты Google, но из-за трудностей в разработке было принято решение, которое изменило весь концепт приложения, а именно дать пользователям набор всех популярных картографических сервисов в одном приложении.
Почти всеми своими проектами я занимаюсь один, начиная с графики и заканчивая кодом. Но с тестированием и советами мне помогает моя семья и друзья, за что им большое спасибо! В общей сложности на приложение ушло более 4х месяцев, начиная от идеи и заканчивая долгим ожиданием проверки перед публикацией, но об этом чуть позже. На разработку же ушло около 2х месяцев.
Свою эволюцию приложение начало с названия, оно менялось неоднократно, в итоге осталось 2 варианта: All Maps и просто, The Maps.
Было написано огромное количество строк кода, одно только окно с картой содержит около 2000 строк. Также было использовано множество сторонних контролов, которые облегчают задачу написания приложения. Например, для реализации раскрываемого списка с картами был взят контрол . Но самой главной проблемой оказалось написать собственный движок для карт. На помощь пришел уже готовый проект, но из-за определенных сложностей пришлось все писать самому и добавлять те возможности, которых мне не хватало.
Что касается дизайна, то он был определен практически сразу. Приложение должно было дать пользователям ощущение работы в стандартном приложении, поэтому интерфейс The Maps во многом схож со стандартными “Картами” за исключением иконки, тут у меня были свои идеи.
В сентябре уже была готова Beta версия и сформированный список картографических сервисов, это были карты от Google, Bing, Yahoo, Mapbox. В последних версиях, практически перед публикацией был добавлен популярный в России сервис 2gis.
Многие меня спрашивали, почему нет поддержки Яндекс карт, все дело в том, что у картографических сервисов карты состоят из так называемых тайлов (картинка с кусочком карты) которые образуют целую карту. Есть несколько стандартов, которые используются для этих целей и большинство сервисов используют один определенный стандарт, но Яндекс использует другой, поэтому при приближении, координаты начинают расходиться и не совпадают с остальными картами.
Но есть и хорошая новость. Существует целая библиотека от Яндекса для работы с их картами, поэтому в скором времени я их постараюсь добавить.
В это время война Apple и Google набирала обороты и пропуск приложения в AppStore был под вопросом из-за Google карт. Наконец, в начале октября приложение было готово и я отправил его в Apple, надеясь, что его пропустят.
Обычно это занимает около 1 недели, но тут последовал почти месяц ожидания, были и письма в службу поддержки и объяснения с просьбами подождать еще. Что удивительно, мне ответили во время презентации iPad mini. Неужели люди, которые пропускают приложения, ее не смотрели?! Я ждал и ждал, было чувство, что они просто тянут время. Я уже был готов опустить руки и отказаться от публикации, но неожиданно 28 октября мне приходит уведомление, что приложение успешно прошло модерацию и через несколько часов будет доступно всем желающими! Сказать, что я был удивлен – не сказать ничего! Это была победа!
Теперь, когда я уверен, что у Apple нет претензий, я смотрю более оптимистично на будущее The Maps.
Недавно состоялся релиз версии 1.1 в которой добавлены новые функции, такие как возможность поворота карты, булавка, печать и исправлены ошибки, которые были пропущены при тестировании первой версии.
iPhone + iPad: $1.99 [iTunes link]
И в честь выхода версии 1.1 я дарю 15 промо-кодов на приложение The Maps:
КОДЫ ЗАКОНЧИЛИСЬ
KJ3EHAFPYPWE
WLLLR3RNWJHP
4W4AW7T66WAH
P7PWNN49P36H
A3WKK46PA344
TW7AAFN497FL
64HP7XTL4WMP
YWNPRTLE9RAJ
YL7T9KT76EL3
F96KKE9RAWLR
JWETNWEAELNX
RNKRJ47XF7EH
TXNAFPTWXKYE
N4JY4TPAETXM
6WN4FEJLN6HW
Данная история опубликована в рамках рубрики Developer Story, где разработчики делятся секретами своей внутренней кухни.
Источник: