Android Studio 2.3 – Требуется направление


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

Android Studio – лучшая Android IDE, и даже если это не так, это единственная официальная IDE. Основанный на IntelliJ, он большой и беспорядочный, и часто кажется, что Android только что переехал в здание и все еще пытается распаковать и сделать это место своим.
Нет сомнений в том, что пользователям Android Studio нравятся обновления. Продукт не настолько хорош, что вам не нужны улучшения, а там, где есть обновления, всегда есть надежда, что в следующей версии все будет работать.
Так и с Instant Run. Это экономит время, обновляя только те части среды выполнения, которые действительно изменились. Это отличная идея, но ее трудно реализовать правильно. В последней версии есть несколько больших изменений, которые делают ее более надежной, добавляя в ваши руки некоторые интеллектуальные возможности, необходимые для работы, когда требуется перезагрузка. Если вы воспользуетесь командой «Выполнить» или «Отладка», то получите полный перезапуск. Если вы считаете, что ваши изменения незначительны, вы можете использовать команду «Применить изменения» и оставить систему решать, что необходимо обновить в реальном времени. Это хорошая идея, и она может привести к тому, что Instant Run не будет отключаться большую часть времени. В конце концов, вы можете попробовать, и если это не сработает, вы можете щелкнуть значок «Выполнить» или «Отладка».
Сначала он был внутри, затем он исчез, а теперь снова вернулся. ConstraintLayout использовался по умолчанию во всех шаблонах в бета-версии 2.2, но когда он был выпущен, появился новый редактор макета, который был разработан для работы с ConstraintLayout, но без ConstraintLayout по умолчанию. Теперь в версии 2.3 ConstraintLayout заменяет RelativeLayout во всех шаблонах.
Что нам делать с этим колебанием?
Большая проблема заключалась в том, что ConstrainLayout был амбициозным и остается амбициозным. В использовании он был и остается медленным и подверженным странному поведению. Некоторые из них были вызваны неправильным пониманием, но все еще было достаточно реальных проступков, чтобы он не был достаточно надежным для версии 2.2, но теперь он вернулся и с некоторыми новыми функциями.
Наиболее интересным является цепочка компоновки ограничений, которая равномерно распределяет виджеты по пространству. Есть разные способы использования этого нового ограничения – распространение в доступном пространстве; зафиксировать оба конца цепочки и равномерно разложить; или упакуйте их вместе. Также нововведением являются соотношения, которые позволяют вам устанавливать соотношение высоты и ширины для виджета и позволяют ему подстраиваться под доступное пространство. Добавьте к этому доступность класса ConstraintSet, который позволяет вам устанавливать ограничения во время выполнения, и вы увидите, что все изменилось.

Возможно, было слишком рано делать ConstraintLayout значением по умолчанию в 2.2, но готов ли он к 2.3?
ConstraintLayout очень сложен, потому что он пытается решить сложную проблему – создать интеллектуальный макет, который подстраивается под доступное пространство экрана. Это действительно требует ИИ или, возможно, реального интеллекта, чтобы выполнять работу должным образом, и в этом смысле ConstraintLayout может быть решением, которое создает другую проблему. При этом тот факт, что редактор макета был переработан для ConstraintLayout за счет других макетов, является большой причиной перехода на новый макет. У нас более или менее не так много выбора, если многие функции редактора не восстанавливаются по мере его развития.
Понятно, что ConstraintLayout пользуется поддержкой значительной части команды Android Studio, но речь идет не только об Android Studio – речь идет о самой природе приложений Android. Если ConstraintLayout будет принят, потому что это предпочтение набора инструментов, тогда он должен быть высококачественным, надежным и эффективным.
Еще слишком рано выносить вердикт, но мое первоначальное использование нового ConstraintLayout и редактора не перспективно. Например, когда вы перетаскиваете виджет на поверхность конструктора, а затем перетаскиваете ограничение, чтобы сказать верхнюю и левую часть экрана, виджет немедленно перемещается в верхний левый угол, и вам нужно снова разместить его. Ваше первое позиционирование – пустая трата времени. Я также столкнулся с несколькими странными графическими сбоями в WIndows 10.
Есть небольшие изменения. Теперь вы можете искать, сортировать и фильтровать в палитре, и вы получаете предварительный просмотр виджета в нижней части палитры. Это хорошо, но, как правило, виджетов не так много, и их довольно легко найти. Предварительный просмотр тоже немного странный – в конце концов, когда вы видите кнопку, это кнопка, и никаких сюрпризов. Кому нужен предварительный просмотр набора почти никогда не меняющихся виджетов? Он просто использует пространство экрана, на котором раньше отображалось больше значков виджетов. Кроме того, большинство превью настолько уменьшены, что становятся бесполезными.

Вы также можете выбрать свои любимые свойства, которые будут отображаться в передней части окон «Свойства». Учитывая, что окно расширенных свойств было немного беспорядочным, это помогает.
Интересным дополнением является возможность использовать формат сжатия WebP, который, как утверждается, на 25% меньше, чем PNG. Внедрение WebP на веб-странице рискованно, но в закрытой среде это кажется достаточно безопасным, и вы можете ожидать, что ваше приложение будет работать.
Одна особенность, которая действительно приветствуется, – это Lint Baseline. Теперь вы можете установить базовый уровень в своих неразрешенных предупреждениях Lint, и будут сообщаться только проблемы, которые возникают после этого.
Другие новые функции включают:

Помощник по ссылкам на приложения
Мастер поиска значков материалов
Обновление платформы Intellij 2016.2
Кэш сборки теперь включен по умолчанию
Эмулятор Копировать и Вставить
Инструменты командной строки эмулятора

Android Studio 2.3 – это улучшение во многих отношениях, но изменение ConstraintLayout – более серьезное дело, чем просто небольшая модификация IDE. Теперь это значение по умолчанию для всех новых проектов, и на данный момент это не сулит ничего хорошего для новых и преобразованных приложений Android.
Вместо того, чтобы тратить время на поиск и предварительный просмотр виджетов, которые кажутся совершенно ненужными, будем надеяться, что Android Studio начнет двигаться в более целенаправленном направлении.

Майк Джеймс является автором книги «Программирование Android: начало работы с приложением» (I / O Press), которая представляет собой руководство для начинающих по использованию Android Studio 2.2. Он уже работает над пересмотренным изданием, и изменения к существующему изданию будут размещены на веб-сайте I / O Press.


Добавить комментарий