Одним из основных минусов платформы Android является ее фрагментация. Например, разработчикам под iOS приходится оптимизировать свои приложения для 4 разрешений экрана, а также, учитывать и то, что некоторые пользователи ещё не обновили свои устройства до последней версии ОС. При разработке приложений под Android приходится учитывать огромное количество разрешений экрана, версий ОС, различные оболочки системы, а также совместимость «железа».
Разработчики приложения OpenSignal, основываясь на скачиваниях собственного приложения, построили инфографику, прекрасно иллюстрирующую данную проблему. Эксперты сообщают об обилии сборок ОС, от версии 2.0 до версии 4.0, и широком разнообразии устройств и различных производителей. Перед разработчиками же стоит проблема оптимизировать свои приложения для всего спектра аппаратов.
Основатель Apple Стив Джобс называл фрагментацию главной проблемой Android-платформы. Фрагментарность в контексте мобильных устройств означает наличие большого числа гаджетов, работающих на одной ОС, но обладающих различным набором физических параметров: разрешением экрана, мощностью и количеством ядер, наличием разных аппаратных особенностей, версией самой системы.
По данным Opensignal, за три года количество смартфонов и планшетов на Android, отличающихся друг от друга по характеристикам, выросло в три раза – с 3997 в прошлом году до 11 868 в июле этого года. Одновременно на рынке присутствует восемь версий Android, причем доля самой свежей Jelly Bean (4.1-4.2) составляет лишь 37%. Разработчикам, пишущим приложения под эту ОС, требуется удостовериться в нормальной работе своего ПО на всех основных версиях платформы, чтобы быть уверенным в совместимости с большинством мобильных устройств.
Другим упреком в адрес Android является то, что разработчикам приходится оптимизировать программы под разные модели устройств с экранами различного размера и с разным разрешением. Эксперты отмечают в этой связи сразу две проблемы. Во-первых, каждый производитель «гуглофонов» разрабатывает свою программную оболочку, заменяя стандартные элементы UI на свои собственные. Выпуская приложение, девелопер должен убедиться, что пользовательский интерфейс его программы на всех устройствах выглядит одинаково.
Во-вторых, количество комбинаций разрешений и диагоналей дисплеев превышает все разумные пределы, указывает OpenSignal. Иллюстрация, подготовленная аналитиками, наглядно показывает сравнение диагоналей экранов в Android и iOS.
К сожалению, вывод OpenSignal не утешителен – фрагментация только растет и ставит все новые и новые проблемы перед разработчиками. Причем последним, пишет OpenSignal, надо думать не только о фрагментации устройств и систем, но и о контекстной фрагментации – тех ситуациях, где используются мобильные устройства, культурных условиях, сетях. Несмотря на этом, эксперты надеются, что фрагментация Android ОС может уменьшиться благодаря грядущей платформе Android 5.0 Key Lime Pie — мобильной ОС, которая, по слухам, не требовательна к вычислительным ресурсам и будет работать даже на низкопроизводительных бюджетных аппаратах. Впрочем, это не снимает проблемы обновления старых устройств, которые часто долгое время или вовсе не получают свежих сборок ОС.