Разработка мобильных приложений для всех платформ

Аналитика|

Android набирает все большую популярность. Время собирать подводные камни.

Совсем недавно мы публиковали несколько материалов, посвященных проблемам перехода на последнюю версию мобильной платформы Apple, и рассказывали о том, почему это выгодно как разработчикам, так и заказчикам. Было бы несправедливо не замечать схожую проблему (к слову, намного более серьезно выраженную) и в отношении главного конкурента iOS - мобильной платформы Google. О трудностях, вызванных фрагментацией Android, и о том, как с ней справляются наши западные коллеги читайте в нашем переводном материале - статье Райана Тейта из "Wired".

 

Android набирает все большую популярность. Время собирать подводные камни.

Хорошие новости для пользователей Android: магазин приложений Google, немного отстающий от Apple App Store и по внешнему виду и по количеству размещенных программных продуктов, начинает понемногу сокращать разрыв. Все больше разработчиков заняты дополнением своих лощеных iOS-приложений не менее лощеными приложениями для Android, загрузки и продажи которых, кажется, начинают расти. Но есть и обратная сторона роста: суровая фрагментация этой операционной системы на рынке означает, что стартапы вынуждены подстраивать и отлаживать свои приложения, учитывая целый ряд официальных версий, дополнительные настройки от мобильных операторов, внутреннюю начинку устройств, разрешения экранов. Аналитики предупреждали об этом все время, но лишь недавно проблема стала по-настоящему серьезной.

Устрашающий строй конфигураций Android иногда называют «матрицей боли» - имеются в виду те множественные неудобства, которые должны быть вынесены девелоперами для того, чтобы программа заработала так, как была задумана и спроектирована.

«Ты переходишь на Android и думаешь: «О, Господи!»» - говорит Тодд МакКиннон, управляющий и основатель Okta, стартапа, который предлагает компаниям услуги по управлению безопасностью при идентификации. - «Во-первых, у тебя есть около шести основных версий мобильной платформы. Кроме этого - туча более мелких версий: все эти ответвления и конфигурации... А еще у вас есть устройства с разным разрешением, маленькими экранами, большими экранами...»

Но работа в условиях «матрицы боли», конечно, вполне выполнима. Один разработчик даже сравнил эту работу с написанием софта для ПК в 1990-х, когда программист вынужден был тестировать продукт на всех версиях операционной системы Windows, не считая огромного количества конфигураций «железа». По сути, это значит, что написание приложений для Android значительно сложнее, чем написание приложений для iOS, ведь Apple свела количество различных конфигураций хардверной части до минимума, а большая часть пользователей работает на последней версии операционной системы. И даже если вспомнить о web-технологиях, таких как JavaScript или HTML, головной боли при работе с Android все равно больше. Выше названные web-альтернативы были призваны вытеснить нативные приложения, давая разработчикам возможность написать одну версию программного продукта, которую можно запустить на всех устройствах. Но, в большинстве своем, покупатели отказываются работать с web-приложениями.

Разработчики, не боящиеся «матрицы боли», часто вынуждены идти на определенные компромиссы. Тот же МакКиннон, захотевший дополнить существующее уже длительное время нативное приложение  Okta для iOS первоклассным Android-приложением,  принял решение осуществлять поддержку только последних версий операционной системы от Google - что значило упустить значительную часть пользователей (согласно материалу OpenSignal, лишь у 37% пользователей Android установлена  крайняя версия ОС, "Jelly Bean").

Но то, что работает в одном случае, не сработает в другом, как например, в случае с «соседской» социальной сетью NextDoor. С тех пор как в мае этого года она выпустила приложение для iPhone, пользователи начали настоятельно требовать Android-версию. К ним присоединилось и городское управление Чикаго, решившее сотрудничать с NextDoor и желавшее удостовериться, что сеть может предлагать приложение для более бедных горожан, которые, очевидно, используют и более дешевые Android-устройства. Для команды NextDoor разработка Android-приложения, поддерживающего все версии операционных систем вплоть до версии 2.2.3 (все они в совокупности составляют 95% рынка), заняла менее четырех месяцев. Но при этом разработчики вынуждены были положиться на веб-технологии, а не на внутренний код самого Android, для того, чтобы запустить достаточно сложный процесс регистрации новых пользователей - процесс, который в iOS является нативным.

Индустрия домашней разработки возникла как раз для того, чтобы помочь стартапам лучше противостоять подобного рода вызовам. Так, быстро растущая компания AppThwack из Портленда, дает крупным игрокам рынка вроде Symantec или Mozilla проводить автоматизированные тестирования софта на более чем двух сотнях Android-устройств от разных мобильных операторов и на разных версиях операционной системы. «Ясно, что у Android есть проблемы» - утверждает сооснователь AppThwack Трент Петерсон. - «Вы платите за открытость платформы необходимостью иметь дело с тоннами различных девайсов».

Еще недавно разработчики, разочаровавшиеся в подобном факте, могли просто игнорировать Android. Но сейчас некоторые пользователи, ранее вполне удовлетворенные только iOS (например, крупные корпорации) начали требовать поддержки и мобильной платформы Google. Мэтт Такер, сооснователь корпоративной сетевой компании Jive Software, замечает, что хотя в iOS Apple достигла вершины во всем: и по части user experience, и по сообществу разработчиков, и по качеству магазина приложений -  поток требований по поддержке Android также увеличивается. Поэтому недавно Jive Software в дополнение к iOS приложению выпустила и его Android-версию.

«Кое-что в отношении к Android уже меняется», - соглашается Такер. - «Но нам все еще доставляет крайние неудобства множество подводных камней, возникающих при поддержке этой операционной системы».


Источник.
Иллюстрации взяты с сайта Opensignal.

 

Этот материал в нашем Tumblr читайте по ссылке.

 

Политика обработки персональных данных