Handre. История. Мое первое приложение.

handre from apple watch to iphone

Handre — что это?

Handre — это напоминалка, приложение для iOS и Android. Все, что нужно сделать — это нарисовать что-нибудь. И все! Напоминание создано. Скачать Handre можно по этой ссылке.

Идея Handre

Скорее всего у вас возник вопрос: что значит Handre?

Сейчас расскажу. Пару месяцев назад, будучи в офисе, мы с ребятами обсуждали очередную новость от компании Apple. Речь шла о новой версии их умных часов. В этом разговоре мне в голову пришла идея и я хотел нарисовать себе крестик на руке, чтобы не забыть о ней. Пока я искал ручку, коллеги начали шутить:

На Apple Watch было бы удобно гвоздем крестик выцарапать. Точно не забудешь.

Идея на миллион. Но я подумал, что было бы круто написать приложение для часов, где ты просто нарисовал крестик и все. Смотришь в часы, видишь крестик и помнишь о событии или идее.

Собственно отсюда и название приложения: Hand — рука, Reminder — напоминание.

Рождение и становление Handre

В моей голове приложение выглядело так:

handre on the hand drown apple watch

То есть открыл приложение, нарисовал крестик — все. Напоминание создано, иконка изменена.

Идея есть, картинка есть. Нужно выбрать язык программирования, на котором буду писать это приложение.

Итак. Есть два стула: Swift и Objective C. И я не сидел ни на одном из них. Значит нужен стул, на котором я сидел и желательно (но не обязательно), чтобы в нем были пролежни от моих сахарных булочек. Этим стулом стал React Native.

React Native — разработка компании Facebook для создания нативных мобильных приложение с использованием JavaScript и ReactJs.

Начитавшись документации, посидев пару дней на stackoverflow я понял, что написать приложение для Apple Watch с помощью React Native не получится.

И, так как я ленивый тюлень, то ради такого мелкого приложения учить Swift не буду. А значит идея Handre для часов отпадает.

Но ведь хочется сделать это приложение. Идея съедает мозг. Поэтому я решил написать Handre для смартфонов.

happy smartphone Handre ios android app

Интерфейс для часов был придуман быстро. Это было интуитивно понятно. Но для смартфона интерфейс будет отличаться.

Смартфон изначально подразумевает, что приложение может быть суперфункциональным, а не таким кастрированным, как на часах.

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

Получилось вот что:

handre макет первой версии приложения для ios и android

На картиночках оно корявенько все, но в моей голове это было супердупер идеально. Утром я принялся писать код.

По ходу создания Handre, его дизайн изменялся еще несколько раз. Это было связано с приколами каждой из платформ: iOS и Android.
Например: изначально была задумка создавать неограниченное число напоминай, но Apple не позволяет вставлять картинки в push-уведомления. В таком случае, когда придет напоминание, ты не будешь знать, какое именно, потому что нет картинки. В принципе, можно сделать текстовое поле, в котором можно дополнить картинку текстом. Но тогда чем это приложение будет отличаться от обычных напоминаний в iPhone?

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

Перерыв полтора месяца.

1 января 2019 года. 11 утра.

После новогодней ночи улицы Минска пусты. Я решил воспользоваться этим и вышел на прогулку.

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

Эта прогулка принесла свои плоды. В ней родилась основная концепция и дизайн Handre.

Окно для рисования Handre — это твоя рука. Точно так же, как ты рисуешь ручкой крестик на руке, ты делаешь это в свое телефоне. Но без ручки. И каждый раз, когда ты смотришь в экран телефона, ты видишь измененную иконку приложения (тот же крестик на руке), что напоминает тебе о чем-то.

handre финальная версия приложения напоминания для ios и android

В течение месяца Handre был переписан по-новому.

27 января. Приложение готово. Дальше заливка в магазины App Store и Google Play.

App Store и Google Play

Чтобы добавить свое приложение в эти магазины , нужно заплатить им пошлину за то, что они позволят завести аккаунт разработчика. Пошлина Apple — $100/год, Google — $25/пожизненно. Apple как всегда в своем стиле, не упустят шанс урвать кусок. Спасибо, Тим.

28 января Handre был добавлен в два магазина. Нужно дождаться, когда приложение пройдет проверку и будет допущено к публикации.

App Store проверяет приложение в течение трех рабочих дней, Google Play — до часа. Такая разница обусловлена тем, что в App Store приложение проверяют реальные люди, а в Google Play это автоматизировано. И мало того, что в Apple все проверяется людьми, так они еще и работают только по будним дням. Но в этом есть как минимум один большой плюс: в App Store попадает значительно меньше шлака, чем в Google Play. А значит Apple может похвастаться более качественными приложениями в своем магазине.

handre apple app store approved

Через два дня, 30 января, Apple прислали письмо, где говорят, что мое приложение принято. Отлично! И я отправил приложение нескольким людям на тест. Ответ был получи сразу же: «ЯША, ШТО ТУТ ДЕЛАТЬ? НИЧЕГО НЕ ПАНЯТНА, ЯША.»

Поинтересовался мнением «тестировщиков» и получил несколько замечаний по интерфейсу, а конкретно по названиям кнопок. Исправил и обновил приложение в магазинах.

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

Спустя сутки получил подтверждение от Apple и опять отдал приложение на тест. Оказалось, что оно стало «вылетать» после определенного действия. Fuuuck. Это нормально, когда зафиксил один баг и породил 10 новых.

Но в данном случае я не знал, что так будет. После первого обновления я добавил компонент, который переводит любую дату в человеческий вид на любом языке. В режиме тестирования приложение работало стабильно. Даты переводились на русский и английский. Но в финальной версии не были включены языковые пакеты этого компонента, потому что я не указал их явно в коде программы. Это и было причиной «вылетов».

31 января. Подключил языковые пакеты. Собрал сборку. Отправил в магазины на проверку. Потерял два дня в ожидании ответа от Apple. LOL.

1 февраля. 20:43. Приложение принято магазинами и работает без багов. Ура.

Заключение

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

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

Спасибо за внимание

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

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