Борьба с фрагментацией: мнение разработчиков на тему поддержки множества разных экранов
ОС Android установлена на множестве разных устройств, каждое из которых обладает экраном разного размера и разным разрешением. Многие называют это фрагментацией. Существует несколько способов решения это проблемы. Apple разделяют приложения на те, которые подходят для iPad, и те, которые предназначены для iPhone. Microsoft создали целую экосистему для девайсов с большим экраном. Android же позволяет разработчикам делать приложения, которые будут работать на разных девайсах. Каждый из этих способов обладает как своими преимуществами, так и недостатками, но мы остановимся на последнем. Android приложения способны подстраиваться под разное разрешение и разный размер экрана, предварительно разработчики должны вносить соответствующие дополнения и изменения в код, а также предоставлять изображения с качеством, достаточным для высокого разрешения. Например, приложение Google+ использует один и тот же код для всех возможных типов экрана.
Мы решили задать несколько ключевых вопросов разным разработчика:
Насколько непросто придерживаться гайдлайнов?
В теории все выглядит достаточно просто, но так ли это? есть ли какие-то моменты, которые Google не учел?
Как процесс влияет на затраченное время и стоимость конечного продукта?
Есть ли еще какие-то соображения на этот счет, которыми вы бы хотели поделиться?
Joe Simpson (@kennydude) - Boid
“Придерживаться гайдлайнов достаточно сложно, особенно если вы хотите слегка изменить приложение, а люди хотят исключительного сходства с оригиналом. Самая неприятная вещ во всем процессе (хоть она и не всегда происходит) - это несоответствие того, как все выглядят d.android.com/design (сайт Android разработчиков для проверки дизайна) и на девайсе.
Google приложения делают свои гайдлайны, например, Google+ делает их не такими как YouTube, что затрудняет работу, хотя этот вопрос должны урегулировать в скором времени. Также есть вещи, для которых нет документации.
Так как я еще студент, то не гонюсь за увеличением стоимости, но времени это забирает очень много, правда все пользователи остаются довольны”.
Приложения от Joe можете найти тут.
Christophe Versieux - BeTrains - SNCBBelgium; HoloEverywhere
“Работать, придерживаясь гайдлайнов, просто. Сложности начинаются, когда заказчик просит отойти от них. Библиотеки типа ActionBarSherlock, HoloEverywhere (мое творение), UnifiedPreferences и SlidingMenu действительно очень просты в использовании и существенно упрощают жизнь разработчиков. Что касается времени и денег, то их затраты существенно уменьшаются, если следовать гайдлайнам Google: зачастую даже не надо переписывать код, можно просто использовать имеющийся. Некоторые проекты были созданы сообществами, а практика некоторых пользователей (Roman Nurik (Google), Reto Meier (Google) Juhani Lehtimäki, Jake Wharton, Taylor Ling) может быть весьма поучительной”.
BeTrains вы можете найти на Google Play, а если заинтересованы в развитии Android, то можете взглянуть и на HoloEverywhere.
Matthew Runo - Zappos
“В Zappos мы стараемся максимально придерживаться всех этих гайдлайнов , а для наших дизайнеров они являются основой для работы. Гайдлайны никогда не были помехой в работе, а лишь неотъемлемой ее частью, ускоряющей процесс и уменьшающей затраты”.
Вот тут можете увидеть сайт Zappos, ознакомится с Android приложением на Google Play можно здесь.
Josh Burton -- jRemote
“Следовать гайдлайнам при создании одного приложения, а в конце пытаться осуществить адаптацию под разные девайсы может привести к большим потерям времени и сил. Но если делать адаптацию в процессе разработки с самого начального этапа, то все должно идти как по маслу. Вы просто будете выполнять работу, экономить кучу времени и особо не париться над гайдлайнами. Если же что-то не так, то в пару кликов мышки вы можете найти руководство по выходу из сложившейся ситуации. Если ваше приложение собиралось с использованием фрагментов, то добавление раскладки для планшета займет у вас не больше 30 минут.
Да, и использование эмуляторов может вызывать кучу трудностей в последствии. Лучше пользоваться непосредственно самим девайсом, хотя новые ADT инструменты делают процесс куда проще, позволяя вам одновременно протестить раскладку для 5-6 разных экранов”.
jDownloader - неплохая програма для вашего ПК, а jRemote - хороший способ, чтобы ее контролировать. Чтобы более подробно ознакомиться с приложением скачайте его на Google Play.
Также мы получили множество писем от других разработчиков, но речь в них идет примерно об этом же. В заключение можно сказать, что Android гайдлайны в большинстве случаев справляются со своей задачей, уменьшая временные и денежные затраты, но всегда будут существовать некоторые исключения.
рейтинг 80 из 80 на основе 80 оценок.
Всего 80 отзывов.