Фрагментация Android практически перестала быть проблемой?

df787886850f46e4a19bd4513c88f354.jpgПривет, Хабр! Сегодня мы хотим предложить вашему вниманию перевод статьи, в которой Эдди Вессалло (Eddie Vessallo) (CEO Entropy) высказывает интересную точку зрения о фрагментации Android. Не секрет, что среди устройств, работающих под этой ОС, нет даже намёка на какую-то унификацию разрешений дисплеев. Всевозможные смартфоны и планшеты от десятков, если не сотен, производителей отличаются невероятным разнообразием разрешений дисплеев. Это уже давно привело к тому, что разработка приложений под Android связана с очень большими трудозатратами по оптимизации интерфейса под всевозможные разрешения. Однако автор статьи-первоисточника считает, что теперь это практически перестало быть проблемой.Будем откровенны: как разработчики приложений, мы всегда холили и лелеяли красоту и отточенность iOS. Но за последние несколько месяцев произошло кое-что странное. Многие из наших сотрудников начали использовать Android-устройства в качестве основных, шокируя коллег и близких. Но ещё более примечательно то, что наши проекты начали всё больше тяготеть к Android — от нативных приложений для наших лучших клиентов до прототипов и демонстрационного кода для Android Wear и Google Glass.Что тут происходит? Разве Android не был одной сплошной головной болью для разработчиков вроде нас (как и для наших клиентов)?

Несколько последних лет главными аргументами против разработки под Android были:

• Сильная раздробленность используемых версий ОС, что вынуждало использовать старые релизы SDK, API и прочих инструментов ради обеспечения максимальной совместимости.• Сотни всевозможных разрешений дисплеев, аппаратных особенностей и экранных жестов, превращающие в ад процесс дизайна и тестирования.• Очень небольшой процент пользователей Android, которые могли бы использовать конкретное приложение на конкретном устройстве, что очень сильно уменьшало целевую аудиторию.

Но теперь ситуация изменилась. Android всё ещё является вызовом для разработчика, но мы вынуждены признать (и обратите внимание, что это слова признанных поклонников iOS) — в 2014 году фрагментация Android стала мифом.

Начиная с 2010 года Google прикладывает огромные усилия для решения этой проблемы, стоящей перед разработчиками. И им это удалось сделать довольно впечатляющими и «закулисными» способами.

Большая доля пользователей Android всё ещё пользуется старыми версиями ОС. И Google совершенно этого не скрывает. Вот данные по состоянию на 7 июля 2014:

7527abc8932c4e4ca1b9d66e8d5646ec.png

На первый взгляд, ничего хорошего. Особенно если сравнить с Apple, у которой свыше 90% пользователей используют самую последнюю версию операционной системы (iOS 7).

Тайное оружие Google в борьбе с фрагментациейНо это не та статистика, которую следует искать разработчикам. Пришло время поговорить о Сервисах Google Play. Для разработчиков это куда важнее, чем используемые версии ОС. Сервисы Google Play, представленные в 2012 году, являются эффективным средством для скачивания основных служб, необходимых для запуска Android-приложений. Если на минуту отвлечься от разнообразия версий ОС, то ситуация предстаёт в другом свете — свыше 93% пользователей Android используют самую последнюю версию Сервисов Google Play.Немаловажным является и тот факт, что Google медленно выводит основные функции Android, API и элементы приложений из операционной системы в Сервисы Google Play. Это даёт разработчикам уверенность в том, что их приложения будут корректно работать (включая различные новые функции) на всех устройствах, использующих последнюю версию Сервисов.

И самое главное, пятая версия Сервисов сейчас распространяется на все устройства, использующие Android от 2.3 Gingerbread до 4.4 KitKat. Это полностью лишает основания аргумент, согласно которому разработчики вынуждены привязываться к функциональности старых версий ОС ради обеспечения совместимости основных возможностей своих приложений.

Но что насчёт зоопарка разрешений дисплеев, из-за которого приходится костьми ложиться дизайнерам и тестерам? На эту тему разработчик Рассел Иванович (Russell Ivanovic) опубликовал замечательный пост, в котором развенчал точку зрения о дисплейном «аде» дизайнеров. По словам Рассела, всё далеко не так плохо, как думают многие разработчики. Считается, что количество используемых разрешений, требующих оптимизации и тестирования, выглядит примерно так:

1cb8415c5cf6439a87412e4ab127a56c.jpg

Источник: Courtesy of OpenSignal«s Android Fragmentation 2013 report.

Однако Иванович не соглашается с этим и утверждает, что актуальный набор разрешений выглядит примерно так:

c3a218be9cd44ffe82adac7d015a66df.png

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

Возвращаясь к основным смартфонам в наших карманах: как разработчиков, нас крайне заинтересовали изменения, произошедшие в стане Android за последний год. Отныне можно забыть о страшилке-фрагментации, которая была главным препятствием для разработчиков.

Со своей стороны нам хотелось бы отметить, что соотношение сторон у обоих дисплеев YotaPhone соответствует выделенному варианту: cc5af28e4a324ede8d0a3f9ee323b857.jpg

То же самое верно и для второго поколения нашего смартфона. Так что, исходя из всего вышесказанного, создание интерфейса и его тестирование не потребуют дополнительных усилий со стороны разработчиков приложений для YotaPhone и YotaPhone 2.

© Habrahabr.ru