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>

Новый инспектор базы данных

Проверяйте, запрашивайте и изменяйте свои базы данных в работающем приложении с помощью нового инспектора баз данных . Чтобы начать, разверните свое приложение на устройстве с API уровня 26 или выше и выберите «Просмотр» > «Инструменты Windows» > «Инспектор базы данных» в строке меню.

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

Запустите эмулятор Android прямо в Android Studio.

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

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

Дополнительную информацию см. в документации по эмулятору Android .

Используйте модели TensorFlow Lite

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

Поддерживаемые модели

Текущая реализация привязки модели ML поддерживает модели классификации изображений и передачи стилей при условии, что они дополнены метаданными. Со временем поддержка будет расширена и на другие проблемные области, такие как обнаружение объектов, сегментация изображений и классификация текста.

В TensorFlow Hub представлен широкий спектр предварительно обученных моделей с метаданными. Вы также можете добавить метаданные в модель TensorFlow Lite самостоятельно, как описано в разделе Добавление метаданных в модель TensorFlow Lite .

Импортируйте файл модели

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

  1. Откройте диалоговое окно импорта модели TensorFlow Lite в меню «Файл» в меню «Файл» > «Создать» > «Другое» > «Модель TensorFlow Lite» .
  2. Выберите файл модели .tflite , который вы ранее загрузили или создали.
  3. Нажмите «Готово» .

При этом файл модели импортируется в ваш проект и помещается в папку ml/ ; если каталог не существует, Android Studio создаст его за вас.

Импортируйте модель TensorFlow Lite.

Просмотр метаданных модели и ее использования

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

  • Модель: Общее описание модели.
  • Тензоры: описание входных и выходных тензоров.
  • Пример кода: пример взаимодействия с моделью в вашем приложении.

Вот пример использования 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 вы можете записывать выделение и освобождение памяти из собственного кода и проверять совокупную статистику о собственных объектах.

Запись в Native Memory Profiler

Дополнительные сведения о Native Memory Profiler см. в разделе Проверка использования памяти вашего приложения с помощью 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. Например, нажав на Действие желоба рядом с методом, использующим данный тип, приведет вас к поставщику этого типа. И наоборот, нажав на Действие желоба перемещает вас туда, где тип используется в качестве зависимости.

  • Узел «Найти использование». Когда вы вызываете «Найти использование» для поставщика заданного типа, окно «Найти» теперь включает узел потребителя(ов) зависимостей , в котором перечислены потребители этого типа. И наоборот, вызов этого действия для потребителя зависимости, внедренной Dagger, в окне «Найти » отображается поставщик этой зависимости.

Компоненты Material Design: обновлены темы и стили в новых шаблонах проектов.

Анимация: создание проекта в Android Studio с новыми свойствами Material Design.

Шаблоны Android Studio в диалоговом окне «Создать новый проект» теперь используют компоненты Material Design (MDC) и по умолчанию соответствуют обновленным рекомендациям для тем и стилей. Обновления включают в себя:

  • MDC : проекты зависят от com.google.android.material:material в build.gradle . Базовые темы приложений используют Theme.MaterialComponents.* и переопределяют обновленные атрибуты цвета MDC и «включено».

  • Ресурсы цвета . Ресурсы цвета в colors.xml используют буквальные имена (например, purple_500 вместо colorPrimary ).

  • Ресурсы темы : ресурсы темы находятся в файле themes.xml (вместо styles.xml ) и используют Theme.<var> <var> Theme.<var> <var> имена.

  • Темная тема : базовые темы приложений используют родительские элементы DayNight и разделены между res/values ​​и res/values-night .

  • Атрибуты темы . Цветовые ресурсы упоминаются как атрибуты темы (например, ?attr/colorPrimary ) в макетах и ​​стилях, чтобы избежать жестко запрограммированных цветов.

IntelliJ ИДЕЯ 2020.1

Базовая интегрированная среда разработки Android Studio была обновлена ​​за счет улучшений от IntelliJ IDEA до версии 2020.1, включая новое окно фиксации , которое позволяет выполнять операции контроля версий, и новый режим Zen, который можно переключать, выбрав «Просмотр» > «Внешний вид» > «Войти в режим без отвлечения внимания» .

Чтобы узнать больше об улучшениях в версии 2020.1, см. IDEA 2020.1 .

Изменения в каталоге конфигурации IDE

Расположение каталогов конфигурации пользователя было изменено на следующее:

Окна

Синтаксис: %APPDATA%\Google&lt;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 теперь показывает предварительный просмотр вашего пользовательского представления. Используйте раскрывающееся меню на панели инструментов для переключения между несколькими пользовательскими представлениями или нажимайте кнопки для вертикального или горизонтального переноса содержимого.

Предварительный просмотр пользовательских представлений в IDE.

Примечание. Если вы не видите изменения в предварительном просмотре, выберите «Создать» > «Создать проект» в строке меню.

Символы для собственных отчетов о сбоях

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

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

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

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

Более высокая скорость развертывания

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

Чтобы узнать больше о разнице между этими двумя действиями, см. Применить изменения .

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

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