ТЕКСТ: АРТЕМ КУДРЯВЦЕВ. Дари цветы! – приложение, которое помогает дарить цветы. Идея приложения пришла в голову моему другу. Все очень просто: приложение рассчитывает случайным образом даты, когда нужно подарить цветы. Я же как раз приобрел себе Macbook Air 11″, вдоволь наигрался с ним, и уже рвался попробовать написать что-то под iOS.
Далее мы посмотрели, что сейчас уже предлагает AppStore: есть приложения для покупки цветов онлайн, есть красочный справочник по цветам, есть даже приложение для выращивания виртуальных цветов. Но нет приложения для того, чтобы непосредственно подтолкнуть человека к дарению цветов. А в большинстве случаев именно этого и не хватает: мы забываем, откладываем на следующий раз, и в итоге наши девушки/жены получают цветы только на 8 марта.
В итоге мы решили, что делать такое приложение нужно. Оно будет полезным, позитивным и бесплатным.
Для порядка и серьезности мы сразу разделили обязанности. Разработку я взял себе, т.к. я программист по профессии (flash/flex, web), а у друга все равно нет Mac. Ему досталось написать ТЗ, придумать профили (о них чуть ниже), тексты подсказок для подарков. Также мы подумали, что нужно найти дизайнера, который нарисует профессионально иллюстрации и иконку. Мой коллега по работе согласился помочь нам безвозмездно, т.к. ему понравилась идея и вообще он хороший парень.
Более детальная идея приложения выглядела так: пользователь может создавать записи, где ключевыми элементами являются его профиль и тип девушки.
После сохранения записи приложение высчитывает дату следующего события случайным образом. Т.е. грубо говоря, если в профиле выбрано “дарить каждые 2 недели”, то следующая дата может быть в промежутке от “завтра” до “через 2 недели”. От типа девушки зависит, какой цветок будет ей предлагаться. Причем первый подарок всегда ее любимый, а далее для разнообразия ей предлагаются и другие. В день события пользователь получает уведомление, открыв которое, он попадает на экран с деталями: что подарить, совет и иллюстрация.
Если же вы Чак Норрис, то и для вас найдется профиль. С ним вы лишь будете получать напоминания, что дарить цветы не надо.
Теперь о разработке. Итак, я скачал себе XCode. И нашел ресурсы, чтобы обучаться. Что я читал для обучения:
- iOS Developer Library – тут можно прочитать про азы Objective C и т.п. (я никогда не писал раньше на C), можно скачать примеры, ну и, конечно, просто обратиться к документации по любому классу.
- How to create simple iphone app – отличная пошаговая статья про создание простого приложения. Сам туториал я целиком не проходил, просто брал оттуда то, что нужно именно мне.
- iPhone Programming Tutorial – Local Notifications – статья про то, как работают Local Notifications (не путать с Push Notifications) в iOS.
Ну и больше всего мне помогал stackoverflow.com. Вводим в гугле любой вопрос, типа “ios string concatenation”, смотрим результаты, ведущие на stackoverflow. Там почти всегда находятся грамотные и подкрепленные рейтингом ответы.
Первую неделю было довольно тяжело использовать своеобразный синтаксис Objective C, но привыкаешь ко всему, и где-то через 2 недели вечерних погружений в разработку первая рабочая версия приложения была готова.
Как тестировал
Следующим этапом было тестирование непосредственно на устройствах. Для этого я купил лицензию iOS Developer Program. Естественно повылазили мелкие баги. Также при взаимодействии с реальным устройством сразу видно, что улучшить в пользовательском интерфейсе. В общем, работа шла.
Через пару дней мне надоело высылать приложение на тестирование по почте, после чего каждый еще должен был поставить его через iTunes. Поэтому я нашел замечательный сайт testflightapp.com. Теперь после обновления приложения, я заливал файл на этот сайт. Потом тестировщики получали email, открывали его на своем устройстве, и там же устанавливали новую версию. Все это бесплатно, и в реальном времени можно наблюдать у кого какая версия.
Иллюстрации и иконка приложения
Параллельно с написанием кода я пытался выбить из нашего дизайнера хоть какие-нибудь результаты. Проблема в том, что когда человеку не платишь деньги, то у него то тренировка по футболу, то барбекю после работы, то выходные. В общем, особо не надавишь на него, и приходится просто вежливо напоминать и ждать.
В итоге мной был сделан корявый набросок иконки. После чего дизайнер подхватил идею и отлично ее оформил своей мастерской рукой. Ушло на это правда около двух недель.
На ожидание иллюстраций подарков ушло еще около 3-х недель. Но время не пропало зря. В ожидании я шлифовал приложение и потом сделал простенький промо-сайт.
Выход iOS5 и проблема с уведомлениями
В середине октября выходит новая версия iOS. Мы встречаем новую замечательную систему уведомлений. И тут обнаруживается большая для нас проблема: любое приложение, которое использует Local Notifications при обновлении на iOS5.0 по умолчанию не попадает в “Центр уведомлений”. Т.е. пользователь, ничего не подозревая, перестает получать напоминания. Баг заведен в bugreport.apple.com, принят к сведению, но до сих пор лучшие умы Apple работают над его устранением. Ждать, когда баг исправят бесполезно, поэтому мы решили показывать всем пользователям с iOS5 сообщение, чтобы они проверяли, есть ли приложение в “Центре уведомлений”. Заодно обучим всех пользоваться этой новой фичей.
Так что будьте бдительны. Если вы используете какие-либо напоминалки, то проверьте “Центр обновлений” после перехода на iOS5.
Публикация в AppStore
К концу октября все было готово. Я собрал приложение и отправил его на ревью в iTunesConnect На ревью ушло 4 дня, тут никаких вопросов.
Мы очень рады, что выпустили наше первое приложение, и надеемся, что пользователи мобильных яблочных устройств станут больше дарить цветы. Спасибо за внимание.
iPhone/iPod: Free [iTunes link]
13 комментариев
Форум →парни, очевидно что эта прога больше бы имела смысла, будь она подвязана на доставку цветов. в России пока с доставками беда, но начинать то когда то нужно.
@ganjubasoff, +1. Программа была бы намногого популярнее. Это ведь нужно. Это удобно, легко, быстро. А так.. Конечно, много проблем возникнет, но окупится, и еще как.
@ganjubasoff, заказываю цветы на AMF.ru. Все остальные сервисы по доставке близко не лежали. Однажды даже доставили срочный букет в 2 часа ночи к черту на куличках, получательница была в шоке :) Цветы у них качественные, стоят долго. Дизайн букетов тоже отменный, не какой-нибудь веник из киоска, а то, что дарить не стыдно.
Данная же прога помогает вспомнить о цветах. Со способом монетизации согласен, но тут нужен человек, который будет разруливать B2B.
Очень хорошая и качественная статья.
Лучшая статья про разработку! Есть не только пустые слова, но и полезные ссылки.
А сам я пытался писать приложения… Аж четыре раза. Но каждый раз, как только взгляну на язык C, мне дурно делается. В общем, дальше установки XCode дело не пошло.
Обидно, товарищи…. Ведь есть столько светлых идей!
А что, разве стандартный планировщик не решает? Зачем городить кучу программ, которые дублируют уже существующий функционал?
Набросок иконки с синим фоном понравился больше)
@MrHubris, однозначно, цветовая схема третьего наброска, по-моему, очень располагающая!
а фиолетовая ни в какие ворота.
П.с.: текст читал всё-таки в ожидании того, что вы реализовали клиент сервиса доставки цветов, а оказалась только напоминалка. Желаю успехов в первом направлении;)
@MrHubris, финальная иконка и иллюстрации ужасные.
Чтобы программа жила: измените дизайн, добавьте (как сказано выше) доставку и тогда она не будет жить в телефоне меньше минуты. Я уверен, что достаточно связаться с сайтами доставки указанными выше и всё заработает.
@Kotentsov, обратите внимание на иконку программы Foodily — она прекрасна и без всяких человечков и будет меняться от версии к версии. Для вас это тоже актуально ;-))
@Kotentsov, чёрт побери, обращайтесь — нарисуем ;-)))
Намой взгляд это пока лучшая история про разработку. Спасибо. Единственное, что хотелось бы еще услышать – про написание самого кода.
Нашли орфографическую ошибку в новости?
Выделите ее мышью и нажмите Ctrl+Enter.Как в Safari на iPhone открывать ссылки в новом окне или в фоновом режиме
Как запустить слайд-шоу на iPhone или iPad с iOS 14
Можно ли восстановить фото после удаления в iOS?
Как узнать, какие приложения потребляют трафик ночью
Почему не работает запись экрана в iOS 11
Отключается AirPlay на iPhone во время трансляции на телевизор, как исправить?
Как на iPhone включить офлайн переводчик на разные языки. Сторонние приложения не нужны
Что делать, если мышь «прилипает» к кнопкам в iOS