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:

,

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:

,

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 улучшает функции и производительность Smart Editor при создании выражений привязки данных в 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 ++.

Улучшения вариантов построения вариантов для синхронизации единого варианта

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

Чтобы узнать больше, см. Изменить вариант сборки .

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

Панель вариантов сборки с одним вариантом выбора ABI.

Бок о бок версии NDK

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

Если ваш проект использует Android Gradle Plugin 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), чтобы быть доступным в приложении Install только для устройств, которые поддерживают AR.

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

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

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

Intellij Idea 2019.1

Основная Android Studio IDE была обновлена ​​с улучшениями от Intellij Idea до выпуска 2019.1 , такой как настройка темы.

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

Обновления Android Gradle Plugin 3.5.0

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

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

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

,

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

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

Информацию об этих и других обновлениях 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 процессов, таких как Core IDE, Gradle Daemon и Daemon Kotlin. Вы можете либо принять рекомендуемые настройки, нажав на ссылку на действие в уведомлении, либо можете настроить эти настройки вручную, выбрав «Файл»> «Настройки» (или Android Studio> Настройки на MacOS), а затем обнаружив раздел «Настройки памяти» под внешним видом и поведением> Настройки системы . Чтобы узнать больше, увидеть максимальный размер кучи .

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

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

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

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

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

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

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

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

Project Marble: Peature Plock

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

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

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

Чтобы узнать больше, см. Применить изменения .

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

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

Поток развертывания приложений

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

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

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

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

IDE теперь лучше обнаруживает, когда Градл периодически очищает ваш кеш сборки при сокращении потребления его жесткого диска. В предыдущих версиях это состояние заставило IDE сообщать о недостающих зависимостях и синхронизации градли. Теперь IDE просто загружает зависимости по мере необходимости, чтобы гарантировать, что Sync 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 улучшает функции и производительность Smart Editor при создании выражений привязки данных в 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 ++.

Улучшения вариантов построения вариантов для синхронизации единого варианта

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

Чтобы узнать больше, см. Изменить вариант сборки .

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

Панель вариантов сборки с одним вариантом выбора ABI.

Бок о бок версии NDK

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

Если ваш проект использует Android Gradle Plugin 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), чтобы быть доступным в приложении Install только для устройств, которые поддерживают AR.

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

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

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

Intellij Idea 2019.1

Основная Android Studio IDE была обновлена ​​с улучшениями от Intellij Idea до выпуска 2019.1 , такой как настройка темы.

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

Обновления Android Gradle Plugin 3.5.0

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

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

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