Android Studio 3.5 (август 2019 г.)

Android Studio 3.5 — это основной выпуск, созданный в рамках Project Marble. Начиная с выпуска Android Studio 3.3 , инициатива Project Marble охватывала несколько выпусков, направленных на улучшение трех основных областей IDE: работоспособность системы , совершенствование функций и исправление ошибок.

Информацию об этих и других обновлениях Project Marble можно найти в блоге разработчиков Android или в разделах ниже.

Мы также хотим поблагодарить всех участников нашего сообщества , которые помогли с этим выпуском.

3.5.3 (декабрь 2019 г.)

Это незначительное обновление включает в себя различные исправления ошибок и улучшения производительности.

3.5.2 (ноябрь 2019 г.)

Это незначительное обновление включает в себя различные исправления ошибок и улучшения производительности. Чтобы просмотреть список заметных исправлений ошибок, прочитайте соответствующую публикацию в блоге Release Updates .

3.5.1 (октябрь 2019 г.)

Это незначительное обновление включает в себя различные исправления ошибок и улучшения производительности. Чтобы просмотреть список заметных исправлений ошибок, прочитайте соответствующую публикацию в блоге Release Updates .

Проект «Мрамор»: здоровье системы

В этом разделе описаны изменения в Android Studio 3.5, направленные на улучшение работоспособности системы.

Рекомендуемые настройки памяти

Android Studio теперь уведомляет вас, если обнаруживает, что вы можете повысить производительность, увеличив максимальный объем оперативной памяти, которую ваша ОС должна выделять для процессов Android Studio, таких как основная IDE, демон Gradle и демон Kotlin. Вы можете либо принять рекомендуемые настройки, щелкнув ссылку действия в уведомлении, либо настроить эти параметры вручную, выбрав «Файл» > «Настройки» (или Android Studio > «Настройки» в macOS), а затем найдя раздел «Настройки памяти» в разделе «Внешний вид и поведение» > Системные настройки . Дополнительные сведения см. в разделе Максимальный размер кучи .

Уведомление о рекомендуемых настройках памяти.

Уведомление о рекомендуемых настройках памяти.

Отчет об использовании памяти

Проблемы с памятью в Android Studio иногда сложно воспроизвести и сообщить о них. Чтобы решить эту проблему, Android Studio позволяет создать отчет об использовании памяти, нажав «Справка» > «Анализ использования памяти» в строке меню. При этом IDE локально очищает данные от личной информации, прежде чем спросить, хотите ли вы отправить их команде Android Studio, чтобы помочь определить источник проблем с памятью. Дополнительные сведения см. в разделе Создание отчета об использовании памяти .

Отчет об использовании памяти.

Отчет об использовании памяти.

Windows: антивирусная оптимизация файлового ввода-вывода.

Android Studio теперь автоматически проверяет, исключены ли определенные каталоги проектов из антивирусного сканирования в реальном времени. Когда можно внести изменения для повышения производительности сборки, Android Studio уведомит вас и предоставит инструкции по оптимизации конфигурации вашего антивируса. Дополнительные сведения см. в разделе Минимизация влияния антивирусного программного обеспечения на скорость сборки .

Project Marble: полировка функций

В этом разделе описаны изменения в Android Studio 3.5, направленные на улучшение существующих функций.

Применить изменения

Применить изменения позволяет вносить изменения кода и ресурсов в работающее приложение без перезапуска приложения, а в некоторых случаях и без перезапуска текущего действия. Применить изменения реализует совершенно новый подход к сохранению состояния вашего приложения. В отличие от Instant Run, который переписывал байт-код вашего APK, Apply Changes переопределяет классы на лету, используя инструменты среды выполнения, поддерживаемые в Android 8.0 (уровень API 26) или выше.

Дополнительные сведения см. в разделе «Применить изменения» .

Кнопки панели инструментов для применения изменений.

Кнопки панели инструментов для применения изменений.

Процесс развертывания приложения

В IDE имеется новое раскрывающееся меню, позволяющее быстро выбрать устройство, на котором вы хотите развернуть свое приложение. В этом меню также есть новая опция, которая позволяет запускать приложение на нескольких устройствах одновременно.

Раскрывающееся меню целевого устройства.

Раскрывающееся меню целевого устройства.

Улучшена синхронизация Gradle и обнаружение кеша.

IDE теперь лучше определяет, когда Gradle периодически очищает кэш сборки при уменьшении потребления жесткого диска. В предыдущих версиях это состояние приводило к тому, что IDE сообщала об отсутствующих зависимостях и приводила к сбою синхронизации Gradle. Теперь IDE просто загружает зависимости по мере необходимости, чтобы гарантировать успешное завершение синхронизации Gradle.

Улучшен вывод ошибок сборки.

Сборка Значок окна сборки Окно теперь предоставляет улучшенные отчеты об ошибках, например ссылку на файл и строку сообщения об ошибке, для следующих процессов сборки:

  • Компиляция и связывание AAPT
  • R8 и ПроГард
  • Дексинг
  • Объединение ресурсов
  • синтаксический анализ XML-файла
  • Компиляция Javac, Kotlinc и CMake

Обновления проекта

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

Важно помнить, что вы можете обновлять IDE независимо от других компонентов, таких как плагин Android Gradle. Таким образом, вы можете безопасно обновить IDE, как только станет доступна более новая версия, а другие компоненты обновить позже.

Редактор макетов

Android Studio 3.5 включает несколько улучшений в визуализации макета, управлении и взаимодействии.

При работе с ConstraintLayout в новом разделе «Ограничения» на панели «Атрибуты» перечислены отношения ограничений выбранного компонента пользовательского интерфейса. Вы можете выбрать ограничение либо в области проектирования, либо в списке ограничений, чтобы выделить ограничение в обеих областях.

Отношения ограничений для выбранного элемента пользовательского интерфейса.

Отношения ограничений для выбранного элемента пользовательского интерфейса.

Аналогично, теперь вы можете удалить ограничение, выбрав его и нажав клавишу Delete . Вы также можете удалить ограничение, удерживая клавишу Control ( Command в macOS) и щелкнув якорь ограничения. Обратите внимание: когда вы удерживаете клавишу Control или Command и наводите курсор на якорь, все связанные ограничения становятся красными, показывая, что вы можете щелкнуть их, чтобы удалить.

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

Анимация, показывающая, как использовать виджет ограничений для создания             ограничения.

Использование виджета ограничений для создания ограничений.

При создании ограничения Редактор макетов теперь показывает только подходящие опорные точки, для которых можно ограничиться. Раньше Редактор макетов выделял все опорные точки во всех представлениях, независимо от того, можно ли их ограничить. Кроме того, синяя накладка теперь выделяет цель ограничения. Это выделение особенно полезно при попытке ограничить компонент, который перекрывается с другим.

Анимация, показывающая, как создать ограничение для перекрывающихся             компонент в Android Studio 3.4.

Создание ограничения для перекрывающегося компонента в Android Studio 3.4.

Анимация, показывающая, как создать ограничение для перекрывающихся             компонент в Android Studio 3.5.

Создание ограничения для перекрывающегося компонента в Android Studio 3.5.

Помимо вышеуказанных обновлений, Android Studio 3.5 также содержит следующие улучшения редактора макетов:

  • Виджет ограничений и раскрывающийся список полей по умолчанию теперь позволяют использовать ресурсы измерений для полей.
  • На панели инструментов редактора макетов обновлен список устройств, определяющих размер области дизайна. Кроме того, было улучшено поведение привязки при изменении размера, а маркеры изменения размера в области конструктора теперь всегда видны. При изменении размера появляются новые наложения, показывающие распространенные размеры устройств.
  • Редактор макетов имеет новую цветовую схему, которая улучшает согласованность и уменьшает контраст между компонентами, текстом и ограничениями.
  • Режим Blueprint теперь включает поддержку текста для некоторых компонентов, где текст не отображался.

Дополнительные сведения об этих изменениях см. в разделе Android Studio Project Marble: редактор макетов .

Привязка данных

Помимо добавления поддержки дополнительной обработки аннотаций для привязки данных, IDE улучшает функции и производительность интеллектуального редактора при создании выражений привязки данных в XML.

Анимация, показывающая производительность редактора кода в Android Studio.             3.4.

Производительность редактора кода в Android Studio 3.4.

Анимация, показывающая производительность редактора кода в Android Studio.             3.5.

Улучшена производительность редактирования кода в Android Studio 3.5.

Улучшенная поддержка проектов C/C++.

Android Studio 3.5 включает несколько изменений, улучшающих поддержку проектов C/C++.

Улучшения панели «Варианты сборки» для синхронизации одного варианта

Теперь вы можете указать как активный вариант сборки, так и активный ABI на панели «Варианты сборки» . Эта функция упрощает настройку сборки для каждого модуля, а также может улучшить производительность синхронизации Gradle.

Дополнительные сведения см. в разделе Изменение варианта сборки .

Панель «Варианты сборки», показывающая выбор одного варианта с помощью ABI.

Панель «Варианты сборки» с выбором одного варианта с помощью ABI.

Параллельные версии NDK

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

Если в вашем проекте используется плагин Android Gradle 3.5.0 или выше, вы также можете указать версию NDK, которую должен использовать каждый модуль в вашем проекте. Вы можете использовать эту функцию для создания воспроизводимых сборок и устранения несовместимости между версиями NDK и плагином Android Gradle.

Дополнительные сведения см. в разделе Установка и настройка NDK, CMake и LLDB .

Поддержка ChromeOS

Android Studio теперь официально поддерживает устройства ChromeOS, такие как HP Chromebook x360 14, Acer Chromebook 13/Spin 13 и другие, о которых вы можете прочитать в системных требованиях . Для начала загрузите Android Studio на совместимое устройство с ChromeOS и следуйте инструкциям по установке .

Примечание. Android Studio на ChromeOS в настоящее время поддерживает развертывание вашего приложения только на подключенном аппаратном устройстве. Чтобы узнать больше, прочитайте Запуск приложений на аппаратном устройстве .

Условная доставка функциональных модулей

Условная доставка позволяет вам установить определенные требования к конфигурации устройства для автоматических загрузок функциональных модулей во время установки приложения. Например, вы можете настроить функциональный модуль, включающий функции дополненной реальности (AR), который будет доступен при установке приложения только для устройств, поддерживающих AR.

В настоящее время этот механизм доставки поддерживает управление загрузкой модуля во время установки приложения на основе следующих конфигураций устройства:

  • Аппаратные и программные функции устройства, включая версию OpenGL ES
  • Страна пользователя
  • уровень API

Если устройство не соответствует всем указанным вами требованиям, модуль не загружается во время установки приложения. Однако позже ваше приложение может запросить загрузку модуля по требованию с помощью основной библиотеки Play. Дополнительные сведения см. в разделе Настройка условной доставки .

IntelliJ ИДЕЯ 2019.1

Базовая интегрированная среда разработки Android Studio была обновлена ​​за счет улучшений от IntelliJ IDEA до версии 2019.1 , таких как настройка тем.

Последней версией IntelliJ, включенной в Android Studio, была 2018.3.4. Дополнительные сведения об улучшениях других версий IntelliJ, включенных в совокупный выпуск этой версии Android Studio, см. в следующих обновлениях с исправлениями ошибок:

Обновления плагина Android Gradle 3.5.0

Информацию о новых возможностях плагина Android Gradle 3.5.0, таких как улучшенная поддержка инкрементной обработки аннотаций и кэшируемых модульных тестов, см. в примечаниях к выпуску .

Участники сообщества

Благодарим всех участников нашего сообщества, которые помогли нам обнаружить ошибки и найти другие способы улучшения Android Studio 3.5. В частности, мы хотели бы поблагодарить следующих людей, сообщивших об ошибках P0 и P1: