ClassicMemes. Версия 2.0. Работа над ошибками

Вот и прошло почти две недели с момента выхода в свет моего приложения. Скажу сразу, ожидания не оправдали моих надежд и это справедливо. Конструкторов шаблонов маловато; дизайн хоть и удобный, но не привлекает внимания; рекламная кампания не продумана и вложений особых не было. Статистика в iTunes Connect дала пищу для размышлений, и началась работа над ошибками.

Версия 2.0

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

Дизайн — первое что требовало изменений, а это «Главная страница». На макете в графическом редакторе я делал различные наброски. В выборе варианта конечно же помогали друзья, которым эти наброски я и отправлял. Основной же задачей было сделать привлекательный дизайн без потери в простоте и удобстве использования. Так и появилось новое лицо приложения.

b_562bd1ed9866e

На главной странице использовал CollectionView, уж очень он хорошо подходил к моей задаче. Были небольшие сложности с привязкой к другим ViewController-ам (рассчитывал на то, что можно сделать статически Cell-ы как в TableView), добавил в итоге обработчик нажатий и в нем уже перенаправлял на нужный мне ViewController. StackView не использовал (хотя он мне очень понравился) в связи с тем, что он поддерживается только с iOS 9.0, а хотелось оставить поддержку 8.0+.

Общий дизайн особо не изменился. Весь интерфейс был переведен на стиль «Black» в полной версии (в Lite версии стиль остался прежним), убраны лишние кнопки. Теперь при добавлении картинки в конструктор — становится доступна кнопка «Готово», при нажатии на которую появляется меню с выбором: сохранить в галерею или поделиться.

Больше всего досталось «Моей галереи», её пришлось переписать с «нуля». Это был для меня невероятный опыт работы с PageController-ом и сейчас созданные мемы можно пролистывать свайпами — чего я очень давно хотел, но не мог сразу сделать.

И конечно же! Новые «Конструкторы»! Они были нужны, определенно.

b_562bce45e0fd7

Текст по центру — довольно популярный вид мемов, используют для выражения мыслей или юмористического текста. В качестве фона часто выступает простой фон — текстура или картинка с blur эффектом.

Две картинки — очень распространен. Хоть и были сложности с ним, я очень рад, что он есть и работает. Теперь сам им пользуюсь с удовольствием.

Алфавит — не многим знаком, в основном несет в себе двойной смысл. Очень распространенный мем данного вида, это — картинка бревна, и подпись «Б — бывшая». Также можно использовать этот конструктор и в другом, прямом смысле.

Идеи на перспективу еще есть, будет чем вас порадовать.

 

LITE версия

По Lite версии отдельная история. Много изменений пришло и сюда.

+Доступны все конструкторы — каждому пользователю хочется получить полное представление о полной версии, бесплатно. Так я подумал, и так сделал.

+Доступны все шаблоны — почему нет? Пусть все желающие ознакомятся, возможно и это станет решающим фактором для перехода на полную версию.

Вам могло показаться, что полная версия и не нужна вовсе, но вот начались и все «прелести» Lite версии.

+Реклама — iAd. Но добавил аккуратно, не мешает пользоваться приложением.

+Водяные знаки — вернул в Lite версию, потому что дал доступ ко всему функционалу. Водяные знаки стали большими, полупрозрачными, закрывающими всю «выходную» картинку. Не забалуешь.

+Светлое оформление — еще одно отличие от полной версии. Просто устал путать их при тестировании 🙂 Но не только, вроде как принято Pro версию делать темной, а бесплатную — светлой.

Статистика версии 1.0

Самые лучшие результаты были после опубликовании статьи «История создания» на Appleinsider.ru. Тогда приложение дошло до 12-го места в категории «Развлечения» (также плюсом было то, что приложение имело статус «Новое»)

b_562bdec51317f

Так же параллельно была запущена рекламная кампания на Google AdWords, по России прошла не плохо, по всем странам — не очень. Получил хороший опыт, и при следующей кампании учту.

По России:

b_562bddc2a2fa9

Все страны:

b_562bdddff4138

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

История разработки

Почему мемы?

Однажды вечером я общался с друзьями в WhatsApp, и у меня появилось желание сделать картинку мем в ключе разговора, со своим текстом. Делать на компьютере и отправлять на iPhone было слишком неудобно и долго. Выбор был очевиден — необходимо приложение. И я отправился на его поиски в AppStore. Все, что удалось найти, были отдельные приложения для создания мемов вида «картинка + текст сверху и снизу», демотиваторов и мотиваторов. Интерфейс и юзабилити в найденных и опробованных приложениях не устроили, а еще хотелось, чтобы было все в одном. Ничего не оставалось, как сесть и написать самому, благо есть «ПРОшка».

Скачиваю Xcode и приступаю

Большим минусом было то, что новенький Swift я и в глаза не видел, а опыт разработки в Xcode был на уровне «Hello, world». Но были и плюсы: достаточно много материала и видео по Swift и Xcode 6, а так же наличие небольшого опыта разработки на Delphi и PHP.

Синтаксис Swift оказался очень дружелюбным, в отличие от Objective-C (хотя с ним были не очень продолжительные отношения). Принцип написания и изучения сводился к следующему: «сначала пишем приложение, а более детально изучать Swift будем позже», в связи с чем возникали ступорные ситуации, в которых я просто не знал как реализовать данную функцию. В такие моменты на помощь приходил YouTube и stackoverflow.com. Оказалось, в рунете совсем мало информации по Xcode и Swift, а зарубежные ресурсы в этом плане более насыщенны.

Интерфейс приложения никак не разрабатывался — я просто доверился своей интуиции; представил, как должно выглядеть приложение, с которым было бы приятно и удобно работать мне. Любовь к минимализму так же сыграла свою роль, а неопытность — к использованию того, что предлагает Apple в Xcode.

Демотиваторам и мотиваторам — быть!

Пускай они уже не так популярны, мне они были необходимы. Это мемы на которых я вырос, от них исходит какое-то «ламповое» тепло.

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

«Другой мем» и планы на будущее

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

Новые варианты оформления и подписи для картинок появляются в сети каждый день. Какие-то становятся популярными и задерживаются, какие-то нет. В планах — добавление новых типов конструктора популярных мемов. Уже в ближайшем будущем кнопка «Другие мемы» заменит сегодняшнюю «Другой мем».

Галерея

Опубликовать созданный мем в социальной сети или мессенджере — самая важная функция приложения, ведь ради этого все и задумывалось; так же хотелось добавить функцию сохранения мемов внутри приложения, чтобы иметь возможность обратиться к ним в любой момент и при необходимости поделиться. Так и появился раздел «Галерея», с простой системой сортировки по типу, возможностью детального просмотра, удалением ненужных и отправкой мемов в другие приложения.

Инструкция, первый шаг к «коммерческому» проекту

Когда приложение обрело первоначальный вид, и я уже во всю отправлял из тестовой версии созданные мемы друзьям, появилась мысль: «в поисках подобного приложения, найди я среди них свое, заплатил бы я за него? конечно!». Так проект стал двигаться в сторону «коммерческого».

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

Шаблоны, второй шаг к «коммерческому» проекту

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

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

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

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

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

Название, третий шаг к «коммерческому» проекту

Изначально я не особо задумывался о названии и было выбрано MyDMM — Мои Демотиваторы, Мотиваторы и другие Мемы. Для себя да, достаточно, но для AppStore название скудноватое. Долгое время в голову ничего лучше не приходило, пока не дошел к краткому описанию. Тут то и сорвалось с языка это слово — «классический». AppStore по запросу «ClassicMemes» ничего не выдал, а я вздохнул спокойно и приступил к изменению приложения и сайта.

Иконка — лицо приложения

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

AppStore и iTunes Connect — публикация

Приложение готово, пора и миру показать. Было страшно, страшно от неизвестности. Как публиковать? что заполнять? как потом обновлять и т.д? Но, как говориться, — «глаза боятся, а руки делают». По инструкциям в сети создал сертификаты для обоих версий (платной и lite версии — бесплатная, с ), а в iTunes Connect оказалось подробно расписано, что и куда, да еще и на русском. Ход действий так же подсмотрел в роликах на YouTube. Добавил описание, скриншоты, заполнил все, что было необходимо и вот, столкнулся с вопросом: как свое приложение, собственно, загрузить? И снова отправляюсь «гуглить». Оказалось, ничего сложного — приложение отправляется в iTunes Connect в пару кликов, а уже там выбирается.

После отправки на проверку, как это обычно бывает, нашлись недочеты и необходимо было заменить версию. Долго смотрел на кнопку «удалить версию, ожидающую проверки» и все же решился. Проверка слетела, и я уже заливал новую сборку. Без нюансов тоже не обошлось. Оказывается, каждый раз, когда мы отправляем новую сборку, необходимо повышать ее номер, иначе система ругается и не отправляет сборку в iTunes Connect.

Шишек набил много, но самая большая вышла, конечно же, с названием приложения. При выборе названия в iTunes Connect я почему то решил, что это и будет мое название в AppStore и в устройствах при установке, а как называется проект — неважно. Спустя 6 дней ожидания проверки я наткнулся на такой пункт, при котором могут отказать в публикации: «Пункт 3.4: Названия приложений в iTunes Connect и на самом устройстве должны быть одинаковыми, чтобы не вызывать замешательства». А что остается делать? Готовлю новые сборки и отправляю в iTunes Connect с расчетом, что мне откажут и я отправлю на проверку новую сборку, после чего меня рассмотрят в течение дня. Но к моему удивлению, проверку я прошел, и Lite версия уже была в AppStore, а платная перешла в состояние «Ожидание договора».

«Ожидание договора» так же заставило понервничать и перелопатить половину интернета. Ответы нашел, и уже через час платная версия появилась в AppStore.

После того как приложения перешли в состояние «Готов к продаже», мои загруженные сборки с исправленным названием уже не подошли, пришлось делать сборки новой версии 1.1, и «снова ожидание проверки»…