Android Studio 4.1 (август 2020 г.)
Android Studio 4.1 — это крупный релиз, включающий множество новых функций и улучшений.
4.1.3 (март 2021 г.)
Это небольшое обновление включает в себя исправления различных ошибок. Список наиболее заметных исправлений ошибок можно найти в соответствующей публикации в блоге Release Updates .
4.1.2 (январь 2021 г.)
<p>
This minor update includes various bug fixes.
To see a list of notable bug fixes, read the related post on the
<a href="https://androidstudio.googleblog.com/2021/01/android-studio-412-available.html">
Release Updates blog</a>.
</p>
<p><b>4.1.1 (November 2020)</b></p>
<p>
This minor update includes various bug fixes.
To see a list of notable bug fixes, read the related post on the
<a href="https://androidstudio.googleblog.com/2020/11/android-studio-411-available.html">
Release Updates blog</a>.
</p>
Новый инспектор базы данных
Проверяйте, запрашивайте и изменяйте базы данных в работающем приложении с помощью нового инструмента Database Inspector . Чтобы начать работу, разверните приложение на устройстве с API уровня 26 или выше и выберите в меню «Вид» > «Окна инструментов» > «Database Inspector» .
Более подробную информацию см. в разделе Отладка базы данных с помощью инспектора баз данных .
Запустите эмулятор Android прямо в Android Studio
Теперь вы можете запустить эмулятор Android непосредственно в Android Studio. Используйте эту функцию для экономии места на экране, быстрого переключения между эмулятором и окном редактора с помощью горячих клавиш, а также для организации рабочего процесса IDE и эмулятора в одном окне приложения.
Более подробную информацию см. в документации по эмулятору Android .
Используйте модели TensorFlow Lite
Связывание моделей ML упрощает прямой импорт файлов моделей .tflite
и их использование в проектах. Android Studio генерирует простые в использовании классы, позволяя запускать модели с меньшим объёмом кода и с более высокой типобезопасностью.
Поддерживаемые модели
Текущая реализация привязки моделей машинного обучения поддерживает модели классификации изображений и переноса стилей при условии их дополнения метаданными. Со временем поддержка будет расширена и на другие проблемные области, такие как обнаружение объектов, сегментация изображений и классификация текста.
На TensorFlow Hub представлен широкий спектр предварительно обученных моделей с метаданными. Вы также можете самостоятельно добавлять метаданные в модель TensorFlow Lite, как описано в разделе Добавление метаданных в модель TensorFlow Lite .
Импорт файла модели
Чтобы импортировать поддерживаемый файл модели, выполните следующие действия:
- Откройте диалоговое окно импорта модели TensorFlow Lite в меню Файл ( Файл) > Новый > Другое > Модель TensorFlow Lite .
- Выберите файл модели
.tflite
, который вы ранее загрузили или создали. - Нажмите кнопку Готово .
Это импортирует файл модели в ваш проект и поместит его в папку ml/
; если каталог не существует, Android Studio создаст его автоматически.
Просмотр метаданных и использования модели
Чтобы просмотреть сведения об импортированной модели и получить инструкции по ее использованию в вашем приложении, дважды щелкните файл модели в вашем проекте, чтобы открыть страницу просмотра модели, на которой отображается следующее:
- Модель: Общее описание модели
- Тензоры: Описание входных и выходных тензоров
- Пример кода: пример взаимодействия с моделью в вашем приложении.
Вот пример использования mobilenet_v1_0.25_160_quantized.tflite :
Как показано в примере, Android Studio создает класс MobilenetV1025160Quantized
для взаимодействия с моделью.
Если модель не имеет метаданных , этот экран предоставит только минимальную информацию.
Известные проблемы и способы их решения
- Поддержка моделей TensorFlow Lite для задач, отличных от классификации изображений и переноса стилей, в настоящее время ограничена. Хотя импорт должен работать корректно, некоторые входные и/или выходные данные модели представлены буферами TensorBuffers , а не дружественными типами данных. Для моделей без метаданных все входные и выходные данные модели будут представлены буферами TensorBuffers.
- Модели с типами входных и выходных данных, отличными от
DataType.UINT8
илиDataType.FLOAT32
, не поддерживаются.
Эта функция все еще находится в стадии разработки, поэтому, пожалуйста, оставляйте отзывы или сообщайте об ошибках .
Профилировщик собственной памяти
Профилировщик памяти Android Studio теперь включает в себя профилировщик нативной памяти для приложений, развёрнутых на физических устройствах под управлением Android 10 и более поздних версий. С помощью профилировщика нативной памяти вы можете регистрировать выделение и освобождение памяти из нативного кода, а также просматривать кумулятивную статистику по нативным объектам.
Дополнительную информацию о Native Memory Profiler см. в статье Проверка использования памяти приложением с помощью Memory Profiler .
Известные проблемы и способы их решения
Профилировщик памяти Native Memory Profiler в Android Studio 4.1 не работает на устройствах Android 11. Поддержка профилирования устройств Android 11 в настоящее время доступна в предварительной версии 4.2 .
Начиная с версии 4.1, профилирование запуска приложений было отключено. Эта опция будет включена в следующей версии.
В качестве обходного пути вы можете использовать автономный профилировщик командной строки Perfetto для захвата профилей запуска.
Пользовательский интерфейс трассировки системы: более простой выбор, новая вкладка анализа и больше данных рендеринга кадров
Пользовательский интерфейс System Trace в профилировщике Android Studio включает следующие улучшения:
Выбор рамки: в разделе «Потоки» теперь можно перетаскивать мышь, чтобы выбрать рамку прямоугольной области, которую можно увеличить, щелкнув значок «Увеличить до выбранного».
Нажмите кнопку в правом верхнем углу (или используйте сочетание клавиш M ). Перетаскивая похожие потоки рядом друг с другом, вы можете выбрать несколько потоков для одновременного анализа. Например, вам может потребоваться выполнить анализ нескольких рабочих потоков.
Вкладка «Сводка». На новой вкладке «Сводка» на панели «Анализ» отображаются:
Сводная статистика по всем случаям возникновения определенного события, например количество случаев и минимальная/максимальная продолжительность.
Отслеживание статистики событий для выбранного события.
Данные о распределении состояний потоков.
Наиболее продолжительные появления выбранного события трассировки.
Чтобы перейти к другому вхождению, выберите другую строку в таблице.
Данные отображения: в разделе «Отображение» новые временные шкалы для SurfaceFlinger и VSYNC помогут вам исследовать проблемы рендеринга в пользовательском интерфейсе вашего приложения.
Базовые инструкции по записи трассировки системы см. в разделе Запись трассировок в разделе Проверка активности ЦП с помощью CPU Profiler .
Теперь доступны автономные профилировщики
Благодаря новым автономным профилировщикам теперь можно профилировать свое приложение без запуска полной версии Android Studio IDE.
Инструкции по использованию автономных профилировщиков см. в разделе Запуск автономных профилировщиков .
Поддержка навигации Dagger
Android Studio упрощает навигацию по коду, связанному с Dagger, предоставляя новые действия в области поиска и расширяя поддержку в окне «Найти использование» .
Новые действия с разделителями: для проектов, использующих Dagger, IDE предоставляет действия с разделителями, которые помогают перемещаться по коду, аннотированному Dagger. Например, щелкнув
Действие «Gutter» рядом с методом, использующим заданный тип, перенаправляет вас к поставщику этого типа. И наоборот, нажатие на
Действие «gutter» перенаправляет вас туда, где тип используется в качестве зависимости.
Узел «Найти использование»: при вызове « Найти использование» для поставщика заданного типа окно «Найти» теперь включает узел «Потребитель(и) зависимостей», в котором перечислены потребители этого типа. И наоборот, при вызове этого действия для потребителя зависимости, внедренной Dagger, окно «Найти» покажет вам поставщика этой зависимости.
Компоненты Material Design: обновленные темы и стили в новых шаблонах проектов
Шаблоны Android Studio в диалоговом окне «Создать новый проект» теперь используют компоненты Material Design (MDC) и по умолчанию соответствуют обновлённым рекомендациям по темам и стилям. Обновления включают в себя:
MDC : Проекты зависят от
com.google.android.material:material
вbuild.gradle
. Базовые темы приложений используютTheme.MaterialComponents.*
и переопределяют обновлённые атрибуты MDC color и «on».Цветовые ресурсы : цветовые ресурсы в
colors.xml
используют буквенные имена (например,purple_500
вместоcolorPrimary
).Ресурсы темы : Ресурсы темы находятся в
themes.xml
(вместоstyles.xml
) и используютTheme.<var>
имена.<var> Темная тема : базовые темы приложений используют родительские элементы
DayNight
и делятся наres/values
иres/values-night
.Атрибуты темы : цветовые ресурсы указываются как атрибуты темы (например,
?attr/colorPrimary
) в макетах и стилях, чтобы избежать жестко закодированных цветов.
IntelliJ IDEA 2020.1
Основная среда разработки Android Studio была обновлена с учетом улучшений IntelliJ IDEA вплоть до версии 2020.1, включая новое окно «Фиксация» , которое позволяет осуществлять операции по управлению версиями, и новый режим Zen, который можно переключить, выбрав «Вид» > «Внешний вид» > «Войти в режим без отвлекающих факторов» .
Более подробную информацию об улучшениях в версии 2020.1 см. в разделе IDEA 2020.1 .
Изменения каталога конфигурации IDE
Расположение каталогов конфигурации пользователя изменено на следующее:
Окна
Синтаксис: %APPDATA%\Google<product><version>
Пример: C:\Users\YourUserName\AppData\Roaming\Google\AndroidStudio4.1
macOS
Синтаксис: ~/Library/Application Support/Google/<product><version>
Пример: ~/Library/Application Support/Google/AndroidStudio4.1
Линукс
Синтаксис: ~/.config/Google/<product><version>
Пример: ~/.config/Google/AndroidStudio4.1
Эти новые расположения каталогов соответствуют последним обновлениям IntelliJ IDEA , IDE, на которой основана Android Studio.
Если Studio не перезапускается после обновления, возможно, вам потребуется удалить каталог конфигурации из предыдущей версии Studio. Подробнее см. на странице известных проблем .
Котлин 1.3.72
В Android Studio 4.1 входит Kotlin 1.3.72, включающий ряд исправлений для улучшения подсветки, проверок и автодополнения кода Kotlin. Подробности смотрите в журнале изменений Kotlin версии 1.3.72 .
Пользовательский просмотр
При создании пользовательского представления (например, путём расширения классов View
или Button
) Android Studio теперь отображает предварительный просмотр вашего пользовательского представления. Используйте раскрывающееся меню на панели инструментов для переключения между несколькими пользовательскими представлениями или нажимайте кнопки для вертикального или горизонтального переноса содержимого.
Примечание: если вы не видите свои изменения в предварительном просмотре, выберите «Сборка» > «Создать проект» в строке меню.
Символизация для собственных отчетов о сбоях
При возникновении сбоя или ошибки ANR в машинном коде система создаёт трассировку стека, которая представляет собой снимок последовательности вложенных функций, вызванных в вашей программе до момента сбоя. Эти снимки могут помочь вам выявить и исправить любые проблемы в исходном коде, но сначала их необходимо символизировать, чтобы преобразовать машинные адреса обратно в понятные человеку имена функций.
Если ваше приложение или игра разработаны с использованием нативного кода, например C++, теперь вы можете загружать файлы отладочных символов в Play Console для каждой версии приложения. Play Console использует эти файлы отладочных символов для отображения трассировок стека вашего приложения, что упрощает анализ сбоев и ошибок ANR. Чтобы узнать, как загружать файлы отладочных символов, см. статью Поддержка нативных сбоев .
Применить изменения
Чтобы помочь вам повысить продуктивность при работе над приложением, мы внесли следующие улучшения в функцию «Применить изменения» для устройств под управлением Android 11 Developer Preview 3 или выше:
Более высокая скорость развертывания
Мы вложили значительные средства в оптимизацию скорости итераций, разработав метод развертывания и сохранения изменений на устройстве без установки приложения. После первоначального развертывания последующие развертывания на устройствах Android 11 выполняются с помощью функции « Применить изменения кода». или применить изменения и перезапустить действие
теперь работают значительно быстрее.
Более подробную информацию о разнице между этими двумя действиями см. в разделе Применить изменения .
Поддержка дополнительных изменений кода
Для устройств под управлением Android 11 Developer Preview 3 или более поздней версии теперь можно добавлять методы, а затем развертывать эти изменения в работающем приложении, нажав « Применить изменения кода» или применить изменения и перезапустить действие
.