Android Studio 4.2 (апрель 2021 г.)

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

4.2.2 (июнь 2021 г.)

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

4.2.1 (май 2021 г.)

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

Плагин Android Gradle 4.2.0

Последняя версия плагина Android Gradle включает множество обновлений. Подробнее см. в полной версии примечаний к выпуску плагина Android Gradle .

Совместимость Gradle и изменения конфигурации

При работе в Android Studio инструмент сборки Gradle использует встроенный JDK Studio. В предыдущих выпусках в комплект Studio входил JDK 8. Однако в версии 4.2 вместо него в комплект входит JDK 11. Использование нового встроенного JDK для запуска Gradle может привести к некоторой несовместимости или снижению производительности JVM из-за изменений в сборщике мусора. Эти проблемы описаны в примечаниях к выпуску AGP .

Возможность оптимизации времени синхронизации Gradle

Для повышения производительности Gradle Sync Android Studio пропускает формирование списка задач во время синхронизации. Это ускоряет синхронизацию Gradle и повышает отзывчивость пользовательского интерфейса в очень больших проектах. Эта опция включена по умолчанию в Android Studio 4.2. Чтобы отключить её, перейдите в меню «Файл» > «Настройки» > «Экспериментальные» ( Preferences > Experimental на Mac) и снимите флажок «Не формировать список задач Gradle во время синхронизации Gradle» .

Инспектор баз данных

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

Инспектор баз данных включает ряд улучшений, облегчающих написание и выполнение пользовательских SQL-запросов. Открыв инспектор и открыв вкладку «Новый запрос» , вы увидите увеличенную область редактора с изменяемым размером для создания и форматирования запросов, как показано ниже.

Редактор DB Inspector

Кроме того, теперь мы предоставляем историю ваших предыдущих запросов. Когда вы нажимаете кнопку « Показать историю запросов», Кнопка «Показать историю запросов» Нажмите кнопку {: .inline-icon}, чтобы увидеть список ранее выполненных запросов к выбранной базе данных. Щёлкните запрос в списке, чтобы увидеть предварительный просмотр полного запроса в редакторе, и нажмите Enter , чтобы скопировать его в редактор. Затем нажмите кнопку «Выполнить» , чтобы выполнить оператор.

Выполнить команду в редакторе запросов

Автономный режим

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

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

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

Помощник по обновлению для AGP

Новый плагин Upgrade Assistant для Android Gradle поможет вам обновить версию AGP для вашего проекта.

Диалог помощника по обновлению плагина Android Gradle

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

Предварительный просмотр изменений, которые будут выполнены Upgrade Assistant

System Trace: улучшенные показатели памяти и графики

В профилировщике ЦП функция трассировки системы теперь включает новые метрики для анализа производительности приложений, в том числе следующие:

  • Таблица событий. Содержит список всех событий трассировки в выбранном потоке.

  • BufferQueue. В разделе «Отображение» эта новая дорожка отображает количество буферов BufferQueue поверхности приложения (0, 1 или 2), помогая вам оценить состояние буферов изображений при их перемещении между графическими компонентами Android.

    Очередь буфера трассировки системы

  • Частота ЦП. В разделе «Ядра ЦП» этот новый индикатор отображает частоту ЦП по ядрам, показывая интенсивность работы каждого ядра.

    Частота ЦП системной трассировки

  • Память процесса (RSS). В этом новом окне отображается объём физической памяти, используемой приложением в данный момент.

    Память процесса трассировки системы (RSS)

Более подробную информацию см. в разделе Проверка активности ЦП с помощью CPU Profiler .

Новое действие обновления инспектора макетов

Инспектор макетов, представленный в Android Studio 4.0, был разработан для проверки стека пользовательского интерфейса запущенного приложения в режиме реального времени. Однако вам не всегда нужно, чтобы инспектор макетов немедленно отражал происходящее в приложении, например, вам может потребоваться просмотреть снимок макета приложения в определенный момент времени или минимизировать влияние динамических обновлений на производительность приложения.

Чтобы вручную загрузить снимок данных пользовательского интерфейса из приложения, сначала отключите опцию « Обновления в реальном времени» . Затем нажмите кнопку « Обновить». Кнопка {:.inline-icon} позволяет сделать новый снимок стека пользовательского интерфейса для проверки. Инспектор макетов теперь запоминает ваши настройки включения или выключения динамических обновлений между сеансами.

Поддержка безопасных аргументов

Safe Args — это плагин Gradle, который генерирует простые классы объектов и конструкторов для типобезопасной навигации и доступа к любым связанным аргументам. Android Studio теперь обеспечивает расширенную поддержку работы с Safe Args, как описано ниже:

  • Автодополнения для Directions, Args и различных классов-конструкторов
  • Поддержка плагинов безопасных аргументов Java и Kotlin
  • Навигация от источника к XML

Трассировка R8 теперь доступна в инструментах командной строки

Доступный в версии 4.0 инструментов командной строки, R8 retrace представляет собой автономный инструмент для получения исходной трассировки стека из запутанной трассировки стека.

Вы можете загрузить этот пакет с помощью менеджера SDK, который устанавливает R8 retrace в android_sdk/cmdline-tools . Кроме того, вы можете загрузить отдельный пакет инструментов командной строки .

Информацию по использованию см. в разделе «R8 retrace» руководства пользователя.

Развертывание на нескольких устройствах

Чтобы упростить тестирование приложений на разных устройствах и уровнях API, теперь вы можете развернуть свое приложение на нескольких устройствах или эмуляторах одновременно, выполнив следующие действия:

  1. В раскрывающемся меню целевого устройства (в верхней центральной части IDE) выберите пункт «Выбрать несколько устройств» .

    Раскрывающийся список целевого устройства

  2. Выберите целевые устройства и нажмите OK .

    Диалоговое окно изменения набора устройств

  3. Запустите приложение.

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

Плагин Gradle для Android 4.2 использует bundletool 1.0.0, что вносит изменения в поведение приложений, использующих функциональные модули: любой функциональный модуль, указанный как dist:install-time и явно не помеченный как dist:removable , по умолчанию станет неудаляемым. Эта новая настройка оптимизирует объединение устанавливаемых модулей с базовым модулем, что потенциально повышает производительность некоторых приложений.

Чтобы сделать модули функций съемными, установите dist:removable="true" для любого модуля, который вы хотите удалить.

Дополнительную информацию об этом новом параметре см. в документации по тегу dist:removable в документации по манифесту модуля функций .

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

Чтобы помочь вам повысить продуктивность при работе над приложением, мы внесли следующие улучшения в функцию «Применить изменения» для устройств под управлением Android 11 и выше:

Поддержка дополнительных изменений кода

Для устройств под управлением Android 11 или более поздней версии теперь можно добавлять статические поля final-примитивов, а затем применять эти изменения в работающем приложении, нажав « Применить изменения кода» Значок «Применить изменения кода» или применить изменения и перезапустить действие Значок «Применить изменения и перезапустить действие» .

Теперь вы также можете добавлять ресурсы, а затем применять эти изменения в запущенном приложении на устройствах Android 11, нажав «Применить изменения» и «Перезапустить активность». Значок «Применить изменения и перезапустить действие» .

Обновленные мастера создания нового проекта и нового модуля

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

Возможность импорта пакета .JAR/.AAR из мастера создания нового модуля также удалена. Для импорта JAR- или AAR-файла в проект используйте диалоговое окно «Структура проекта» .

Котлин 1.4.31

Android Studio 4.2 включает Kotlin 1.4.31. Ознакомьтесь с журналом изменений Kotlin 1.4.0, чтобы ознакомиться с основными изменениями.

Переменная среды ANDROID_SDK_HOME устарела

Переменная среды ANDROID_SDK_HOME устарела и заменена на ANDROID_PREFS_ROOT . Подробнее см. в разделе Переменные среды эмулятора .

Известные проблемы с Android Studio 4.2

В этом разделе описаны известные проблемы в Android Studio 4.2. Полный список можно найти на странице «Известные проблемы» .

Android Studio 4.2.0 создаёт проекты с неверной версией Kotlin: «1.5.0-release-764»

Если вы используете Android Studio 4.2.0 и обновились до плагина Kotlin 1.5.0, то новые проекты Kotlin, созданные Studio, не будут собираться из-за следующей ошибки синхронизации Gradle:

Could not find org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.0-release-764.

В качестве обходного пути замените 1.5.0-release-764 на 1.5.0 в файлах build.gradle проекта.

Ошибка при использовании разных паролей для ключа и хранилища ключей

Начиная с версии 4.2, Android Studio теперь работает на JDK 11. Это обновление приводит к изменению базового поведения, связанного с подписыванием ключей.

При переходе в раздел «Сборка» > «Создать подписанный пакет/APK» и попытке настроить подписание приложения для пакета приложений или APK ввод разных паролей для ключа и хранилища ключей может привести к следующей ошибке:

Key was created with errors:
Warning: Different store and Key passwords not supported for PKCS12 Key stores

Чтобы обойти эту проблему, введите один и тот же пароль для ключа и хранилища ключей.

Android Studio не запускается после установки версии 4.2

Studio пытается импортировать предыдущие файлы .vmoptions и очищает их для работы со сборщиком мусора, используемым JDK 11. Если этот процесс завершится неудачей, IDE может не запуститься для некоторых пользователей, которые задали пользовательские параметры виртуальной машины в файле .vmoptions .

Чтобы обойти эту проблему, рекомендуем закомментировать пользовательские параметры в файле .vmoptions (используя символ # ). Файл .vmoptions находится в следующих местах:

Окна

C:\Users\YourUserName\AppData\<var>[Local|Roaming]</var>\Google\AndroidStudio4.2\studio64.exe.vmoptions

macOS

~/Library/Application Support/Google/AndroidStudio4.2/studio.vmoptions

Линукс

~/.config/Google/AndroidStudio4.2/studio64.vmoptions

Если Studio по-прежнему не запускается после попытки использования этого решения, см . раздел «Studio не запускается после обновления» ниже.