БЛОГ
Какие виды мобильных приложений бывают и какое подходит в Вашем случае
18.11.2016
Что необходимо знать о разработке мобильных приложений
Попробуем вместе пройти всю последовательность создания мобильных приложений, ведь основная преследуемая нами цель – это поделиться полученным опытом в этой области. Рассмотрим все нюансы мобильных разработок: от момента выбора платформы до этапа создания с дальнейшим размещением для скачиваний и мониторингом.
Чем в большинстве пользуются владельцы современных телефонов?
- Большинство (по статистике это 53%) пользуются приложениями, которые скачивают;
- Вторая половина (52%) посещают сайты с помощью мобильных телефонов;
- Треть (а именно - 38%) использует возможность посещать социальную сеть через мобильный телефон;
- Некоторые из пользователей играют в игры (около 34%);
- Приблизительно 3/4 людей пользуются общением через мобильный телефон: это не только SMS сообщения, звонки, но также месседжер и приложения социальных сетей.
Что говорит статистика?
В 2012 году на территории РФ было реализовано около 12,6 миллионов смартфонов, так как наша страна является одной из самых быстроразвивающихся страны в этой сфере.
Просмотрев статистику реализации смартфонов в зависимости от операционных систем, можно увидеть что:
- около 62% смартфонов, которые были проданы, – это устройства типа Android;
- 15% рынка занимают Symbian – это второе место;
- Последнюю часть процентов делят Windows Phone, iOS (продукция Apple будет выражаться на графике больше, если взять статистику только по Москве).
Если рассматривать тот же график, но по всему миру, то можно увидеть, что и здесь Android занимает около ¾ рынка.
Во втором квартале 2012 года было реализовано больше 100 миллионов мобильных устройств Android по всему миру. Это практически население одной большой страны. Но мы, как мобильные разработчики, заинтересованы не только в наличиях самих смартфонов, но также и в том, как именно с ними работают. Ведь большая часть пользователей используют устройства на Android в качестве обычных телефонов. То есть звонят и пишут смс. Они не регистрируются в Google Play, не активируют и не пользуются возможностью скачивать бесплатные или платные приложения.
Чем пользуются
В 2012 году не все приобрели телефоны, поэтому только по нашей статистике можно реально распределить значимость среди таких операционных систем и продемонстрировать это. В статистику вошли такие страны, как Россия, Республика Беларусь, Украина, Казахстан и другие.
- Около 74% принадлежит Java-телефонам;
- Android-устройства занимают второе место ( чуть больше 11%);
- Всего лишь на десятые доли процента отстают от ворого места Symbian и Nokia – 11%.
- На Apple выпало всего лишь 3,5% пользователей российского интернета;
- Меньше 1% занимают устройства Windows Phone и Microsoft.
Особенности установки приложений
Очень важно обладать точной статистикой по приложениям в процессе выбора платформы, используемой для разработки. На исследовательских графиках за первый месяц осени 2012 года компании App Annie показан рост двух конкурирующих магазинов, а именно Google и Apple.
Если брать сравнение с январем того же года, то первое место занимает Google Play, который характеризовался большим количеством скачиваний, огромным трафиком и ростом процентов (+66%). Практически наполовину меньшим оказался рост iOS – 30%. Основным графиком является тот, который показывает выручку от пользователей. В этом плане ситуация совершенно другая. Намного проще получать доход на iOS, но в Google Play также можно зарабатывать, если научиться.
Виды мобильных приложений, которые существуют на сегодняшний день
Приложения для мобильных устройств разделяются на 3 основных типа.
Мобильные сайты, веб-приложения
Являются наиболее распространенным типом приложений, предназначенных для мобильных устройств. С помощью смартфона нынешних поколений можно посмотреть обычный сайт. Таким устройствам доступно практически все, что мы видим в десктопных приложениях, так как возможность поддержки HTML5 выполняет свою задачу.
Поверьте, именно веб-приложения будут отличным решением для начала, ведь только благодаря ним можно за небольшие деньги и маленький срок получить достаточно весомый результат. Также преимуществом мобильных сайтов в сравнении с прочими мобильными приложениями является так называемая кроссплатформенность. Но среди весомых минусов можно отметить, что с ними сложно заработать.
Особенности гибридных приложений
С таким подходом вы получите доступ ко всем преимуществам API операционной системы, а именно – в числе приятных плюшек можно выделить то, что приложение обрастает push-уведомлениями. Помимо этого ваш продукт может быть размещен в сторах. Вместе с этим главный контент все еще является платформо независимой страничкой с версткой, которая размещена на сервере. Благодаря этому можно внести косметические изменения в продукт без необходимости выпускать новую версию, ведь достаточно просто залить проведенные изменения на сервер. Таким образом, гибридные приложения будут отличным решением для всех, кто хочет начать бизнес или воплотить свои идеи.
Нативные приложения
Такие приложения считаются самим ресурсоемкими, но также они дают возможность пользоваться функциями, предлагаемыми отдельными операционными системами, в максимальном объеме. В результате нативные приложения занимают первенство среди прочих видов приложений не только по функциональным особенностям, но также по скорости загрузки.
Компании, которые выполняют приложения комбинированного типа, приходят именно к такому подходу. К примеру, всемирно известный Facebook начинал свою деятельность с приложения комбинированного типа: в качестве контента выступала веб-страница, а нативными контролами являлись вкладки, переключатели и прочее. Но даже не учитывая то, что это решение является неплохим, все равно возникают проблемы с производительностью, поэтому многие разработчики уходят от комбинаций с вебом.
Особенности статистики
Рассмотрим статистику скачиваний на собственном примере
Мы обладаем приложением ICQ, которое находится в развитии: в числе последних изменений необходимо выделить аудиозвонки. Во втором мессенджере – Агенте был реализован приблизительно такой же функционал, хоть у него и чуть другая история. У нас выпускаются версии почти под все платформы. Его легко найти в любом сторе.
Основным отличием этих двух приложений является аудитория. Известно, что ICQ является международным продуктом, который можно скачать не только в РФ, но также и в Европе и в других странах мира. А вот Агент создавался в РФ исключительно под российских пользователей.
Поэтому очень интересно сравнивать статистики скачиваний.
В Google Play идут около 62% иностранных пользователей. В AppStore идет каждый пятый, а в Ovi Store - всего лишь 14%. А вот Samsung Bada и Windows Phone занимают в общем всего лишь 5%, причем 4% из них идет на Windows Phone. В Агенте доля Ovi и Google Play приблизительно одинаковая. А вот 10% AppStore является доказательством предпочтений к продукции Apple в России.
Сам процесс создания
Теперь перейдем к основному: к непосредственному процессу разработки приложения.
User Story
В первую очередь определяется аудитория, для которой будет писать приложение. Ответ на этот вопрос оформлен в User Story. Реальный тикет вы можете увидеть на картинке. Описано, как у пользователя ICQ есть возможность войти в приложение, а также с какими проблемами он может столкнуться. Этот этап важен тем, что необходимо просмотреть и проработать всевозможные варианты сценариев. Это необходимо во избежание неприятных неожиданностей и сюрпризов на более поздних этапах процесса разработки.
Необходимо помнить, что в каждом пункте вашего to-do листа скрыт большой функционал, поэтому постарайтесь фрагментировать и делать задачи более конкретными. Рекомендуется разделить крупные хотелки на несколько релизов в стор, но это уже другая тема, а мы вернемся к созданию приложения.
Создание проекта и дизайна
По окончанию создания User Story наступает этап проектирования и разработки дизайна. Этот этап сопровождается использованием прототипов, которые вывешиваются нами на доску и при помощи стрелок показывается, как именно происходит навигация.
В процессе разработки дизайна мы обязательно используем гайдлайны.
Что такое гайдлайн? Это документ, выпускаемый компанией, с помощью которого дизайнеры, а также сами разработчики видят принцип создания взаимодействия приложения с его пользователями. Если говорить условно, то для Windows Phone необходимо делать кнопки квадратного вида, а для iOS – круглой формы. Но мы применяем также внутренние гайдлайны для самых разработчиков. Поэтому результатом работы дизайнера в большинстве случаев является макет, гайдлайн, а также нарезки графики.
Рекомендуем подавать макеты «с перелинковкой», к примеру, при помощи сервиса ProtoTypr, так логика по переходам будет понятной. В гайдлайнах содержится информация о размерах, механике анимации, отступах, визуальных эффектах и так далее. Но если ваш проект характеризуется тем, что дизайнер и разработчик сидят рядом друг с другом, тогда этот этап смело пропускаем.
Третьей частью является нарезка графики, в которой должен находиться минимум графических ресурсов, которые необходимы (так мы заботимся о том, чтобы вес приложения не был слишком большим), а также необходимо обеспечить различные версии под каждое разрешение экрана. В большинстве случаев мы прорисовываем для ретины и xhdpi-экранов. После этого осуществляется подготовка для неретины и mdpi при помощи автоматизированных методов, если их применение является допустимым в этом случае. Зачастую hdpi-ресурсы готовятся вручную.
Передаем в разработку, обсуждаем и выполняем необходимые правки
После того, как будут получены макеты, гадлайн и нарезка, в работу вступает разработчик. Все идеи, которые у нас есть на тот момент, мы отдаем в разработку и ждем раннего результата. При этом работа с архитектурой и интерфейсом для пользователей не заканчивается, ведь порой разработчика посещают интересные идеи, что заставляет вносить корректив в первоначальный план. Стадия тестирования начинается после завершения разработки.
Тестирование
Чтобы провести тест приложения существует масса методов. Тестировщиком мобильной разработки называется человек, окруженный телефонами в большом количестве. У него есть много старых телефонов и новых, даже самых свежих. Тестирование происходит по тест-кейсам. При внедрении новой фичи будет составлен тест-план по ее описанию.
Есть сервисы, упрощающие тестирование и помогающие в этом процессе. Нами используется приложение HockeyApp, которое дает возможность раздавать продукт бета-тестерам. Что это значит? Мы размещаем в социальных сетях надпись: « Здравствуйте ребята, у нас появилось новое приложение, если есть те, кто хочет его попробовать, то мы предоставим его вам». Далее всем желающим дается билд, они активно используют приложение, а сам сервис собирает статистику, составляя креш-репорт и отправляя его нам.
Благодаря специальным сервисам есть возможность протестировать приложение на любой версии Android, например, 2.1 и так далее. То есть на всех операционных системах. Весь путь, который зададите, фотографируется сервисом, а картинки приходят на вашу почту. Так у вас появится возможность проверить, все ли находится в порядке.
Мониторинг
После разработки и тестирования приложения вы заливаете его в стор. Статистику скачиваний можно отслеживать при помощи сервиса Distimo, который покажет статистику по пользователям, пришедшим в стор с целью скачать это приложение. Комментарии будут агрегированы.
Каждый должен понимать, что в большинстве случае пользователи оставляют негативные комментарии, потому что если у человека приложение используется хорошо, то он вряд ли будет куда-то заходить, чтобы оставить положительный отзыв. А вот в случае проблемы с приложением пользователь обязательно зайдет и оставит соответствующий негативный комментарий. Но при стабильной работе приложения ежедневно будет получено около 50 комментариев.
На одной платформе за день ошибки записи могут увеличить до количества даже 400 штук, поэтому не следует оценивать комментарии как результат вашей работы, это лишь еще один баг-трекер.
Окно Rate Us является весьма распространенным «хаком», который может изменить ситуацию. Появляется предложение о том, чтобы написать комментарий положительной направленности, а при возникновении проблемы - написать разработчику. Эффект от этого очень сильный, но алгоритм обязательно должен быть продуман правильно.
Кроме комментариев Distimo показаны также скачивания, сумма заработанных денег, а также указано, откуда именно происходит скачивание ваших приложений.
Flurry является еще одним довольно интересным мониторинговым сервисом, с помощью которого можно удобно собрать клиентскую статистику. В этом сервисе есть возможность получить отчет о том, что именно делает пользователь в приложении. Например, сколько раз он нажимал на кнопки, возвращался ли в приложение еще раз. Также указаны и общие параметры – география, аудитория, пол, возраст и так далее.
Некоторые мобильные продукты также проходят проверку при помощи Google Analytics. Но если сравнивать с Flurry, то разницы практически никакой нет. Оба случая характеризуются общим минусом – недостаточной скоростью работы и обработки логов. Но этот инструмент может быть использован вами, если вы уже привыкли к работе с интерфейсом гугл.
Мы обладаем собственной статистикой, несмотря на такое огромное количество вспомогательных ресурсов и сторонних сервисов. Любые внешние источники, какими бы хорошими они ни были, необходимо проверять. У нас есть возможность самостоятельно проводить оценку статистики, но для этого понадобится создавать инфраструктуру с целью генерации отчетов с еженедельной отправкой по электронной почте.
Это никак не упростит жизнь, поэтому намного проще применять Flurry и Distimo, а в случае возникновения каких-либо важных вопросов – обращаться к внутренним логам.
Как показывает наша практика, такой подход полностью оправдывает себя, так как наши данные, а также данные, полученные из этих сервисов, периодически отличаются в той или иной степени. Поэтому для проверки статистики рекомендуется использовать сразу несколько сервисов.
Специфика
Что нужно помнить?
- От каждой новой платформы пользователь хочет увидеть богатое приложение. Рассуждение человека строится так: «У меня был плохой Java-телефон и я все же мог использовать аську. Но когда купил новый более дорогой телефон, то зашел в Marketplace и не увидел там ICQ. Почему?». Пользователь же не знает, что вам пришлось создавать приложение с нуля, а новая платформа включает в себя новые девайсы, документацию и ресурсы.
- У более популярных платформ больше конкурентов. Увидеть эту закономерность можно на примере двух сторов: AppStore и Google Play. При наличии у вас идеи приложения, легко монетизируемого, или того, которое будут много скачивать, если вы введете ключевые слова в строке поиска, то увидите, что данное приложение уже есть. Получается, что чем платформа более популярная, тем больше конкурентов вы встретите. Поэтому очень внимательно следует изучить аналоги, анализировать статистику, а также пробовать понять, в каких сферах и параметрах вы можете превзойти конкурента.
- Очень важно знать, как именно пользователь осуществляет выбор приложения. Обычно вначале пользователь не имеет желания покупать приложение, он просто просматривает список существующих предложений. Возьмем для примера запрос «бесплатная музыка». В первую очередь на глаза человеку попадается иконка и несколько строк с описанием. Именно это увидит и оценит пользователь, на основании чего сделает выбор – покупать приложение или нет. Важно знать, что плохая иконка значительно уменьшает шансы на скачивание, поэтому необходимо позаботиться о достойной иконке.
- Если вы попадете в топ магазина приложений, то это очень хорошо, а если закрепитесь там – то успех вам обеспечен. Что это дает? Зайдя в чарт, при необходимости скачать какое-либо приложение, пользователь смотрит, какое именно из всех находится на первом месте по числу скачиваний. Так как считается, что самые популярные приложения – это самые лучшие и полезные. Это, можно сказать, замкнутый круг, в который очень важно попасть. Когда приложение попадает в топ, то люди его видят и скачивают, не продолжая поиски далее. Из-за большого количества скачиваний это приложение продолжает оставаться на первом месте и его видят новые пользователи и так далее. Такая интеграция может продолжаться длительное время, поэтому направьте все свои силы и возможности для того, чтобы добиться скачиваний и рейтинга на первых порах. Вы можете просить друзей, родных, близких, соседей и знакомых скачать ваше приложение и поставить ему высокую оценку. Чем больше пятерок будет поставлено вашему приложению, тем ближе оно будет подбираться к топу. Необходимо также сообщить о том, что существует масса решений для попадания в топ на рынке, то это принесет недостаточное количество целевой аудитории. Хотя экспериментировать можно со всем.
- Необходимо помнить, что время публикации может занимать даже несколько недель. К примеру, вы создали и протестировали приложение, позвонили всем блоггерам, сообщили в СМИ о том, что у вас новое приложение, и вы предлагаете прийти на пресс-конференцию. Прямо сегодня вы его отправили в AppStore, но вы должны подождать неделю (для России). А вот в Google Play публикация сможет занять всего лишь пару часов. Поэтому это настоящий рай для оперативных обновлений.
- В сторе нет возможности для общения с пользователями. Допустим, пользователь написал, что у него в аське не идут сообщения. Он при этом выражает весьма красочно свое недовольство, но при этом недостаточно информативно. Мы не имеем возможности связаться с ним, чтобы узнать о его проблеме в подробностях. Все, что в наших силах, это лишь возможность посмотреть в мониторинге, ходят ли сообщения у нас. Существует вероятность, что он заблочен антиспамом. Но на сегодняшний день некоторые сторы имеют админки, где есть возможность задать вопросы пользователям, а также узнать их контактные данные. Можно даже посмотреть из каких стран идет скачивание приложения. Но пока что ситуация не очень улучшилась. Интересно знать, что Google Play добавляет такую возможность для некоторых разработчиков. У нас такая возможность также доступна.
- Фрагментация операционной системы. При разработке приложения под Android необходимо принимать в учет фрагментацию, а также наличие огромного количества различных устройств. В свою очередь это не может не отразиться на времени разработки, на длительности проектирования, создания дизайна, а также особенно на этапе тестирования приложения. То есть увеличивается время всех этапов.
- Время на тестирование. Приложение может быть протестировано несколькими методами. К примеру, можно нанять специальных тестеров в свой штат с тест-планами и тест-кейсами. Они все это обязательно проходят. Но стоит также помнить и о сервисах для тестирования, где вы будете платить лишь за найденные баги. То есть после того, как вы выложите приложение, оно будет протестировано, например, 20 тысячами пользователей, но такой подход имеет как плюсы, так и минусы, о которых также нельзя забывать.
- При помощи кадров в мобильной индустрии можно решить все. Даже крупные компании, такие как Яндекс, Google и Mail.Ru Group порой не могут найти достаточно хороших мобильных разработчиков. Исходя из этого, мы работаем со стажерами, ведь порой значительно проще взять умного студента и самостоятельно его обучить всему необходимому.
Заключение
Здесь были выложены базовые особенности, а также подводные камни всех этапов мобильной разработки, которые ранее встречались на нашем долгом пути развития. Надеемся, что данный пост стал полезным для вас, а обсудить вопросы и детали всегда можно в комментариях.