Примечания к выпуску Android Studio для платформы

Android Studio for Platform (ASfP) – это официальная интегрированная среда разработки для платформы Android. На этой странице перечислены новые функции, улучшения для отдельных платформ и общие улучшения качества, доступные в ASfP.

Новые функции платформы 2026 года (Rabbit | 2026.2 и Panda 2 | 2025.3.2)

Последние версии ASfP, созданные на базе платформы IntelliJ 2026.2, включают значительные улучшения в настройке и запуске проектов, интеграции сборки Soong, возможностях ИИ-агента, управлении виртуальными устройствами Cuttlefish, отладке C, C++, Rust и гибридной отладке, а также тестировании платформы.

Настройка проекта, шаблоны и эффективность синхронизации

  • Архитектура проекта Workspace Model. Создание проектов перенесено в API IntelliJ Workspace Model, что упрощает начальную настройку проекта и повышает стабильность IDE в больших деревьях исходного кода AOSP.
  • Мгновенный запуск с помощью снимков модели проекта. ASfP теперь кеширует и восстанавливает модель проекта из снимков при запуске, устраняя задержки при первоначальной индексации при повторном открытии больших рабочих областей AOSP.
  • Общедоступные шаблоны проектов (импорт и экспорт):
    • Импорт из шаблона. Создайте новый проект AOSP в мастере настройки, выбрав Импорт из шаблона и указав общий YAML-файл .asfp-project.
    • Экспортировать в шаблон. Чтобы поделиться конфигурацией проекта с коллегами, нажмите правой кнопкой мыши на вкладку редактора .asfp-project (или выберите ASfP > Проект) и выберите Экспортировать в шаблон.
  • Расширенные возможности мастера настройки. Настраивайте переменные среды для пользовательских сборок и включайте частичную компиляцию Soong (SOONG_PARTIAL_COMPILE) прямо во время создания проекта.
  • Гибкие режимы синхронизации:
    • Частичная синхронизация. Синхронизируйте определенные модули или каталоги без полной синхронизации хранилища.
    • Синхронизация без сборки. Быстро обновляйте структуру проекта IDE и корневые каталоги модулей без запуска сборки Soong.
    • Синхронизация и полная сборка. Запустите синхронизацию проекта и полную сборку Soong одним действием.
  • Оптимизированные области поиска и поддержка символических ссылок. Содержимое каталога out/ и сгенерированные файлы IML gen автоматически исключаются из областей поиска проекта, чтобы поиск файлов и символов выполнялся быстро и без лишних результатов. ASfP также поддерживает символические ссылки на корневые каталоги исходного кода в репозиториях AOSP.

Встроенные функции Android.bp для сборки, развертывания и интеллектуального редактирования

  • Значки сборки, запуска и отладки на полях в Android.bp. Рядом с name: в каждом именованном модуле в Android.bp есть значок Сборка на полях, а в тестовых модулях (*_test и *_test_host) и модулях android_app – значок Запуск на полях, позволяющий запускать или отлаживать целевые объекты прямо из редактора.
  • Контекстные конфигурации развертывания и быстрой установки. Создавайте и запускайте конфигурации Soong Deploy из развертываемых целей в файлах Android.bp. Поддерживается развертывание через adb, пользовательские сценарии командной оболочки, adevice или flashall с предварительно запущенными хуками сборки Soong.
  • Открыть соответствующий файл Android.bp и умный редактор. Нажмите правой кнопкой мыши на любой исходный файл или каталог и выберите Открыть соответствующий файл Android.bp, чтобы перейти к объявлению модуля (разрешение цепочек defaults, глобальных переменных и символических ссылок). Внутри Android.bp нажмите на модуль Ctrl+клик или на srcs, чтобы посмотреть подсказки N Usages, и наведите указатель на свойства (включая свойства с областью действия target.*, arch.* и multilib.*), чтобы посмотреть встроенную документацию Soong.
  • Специальное окно инструмента Soong. Отслеживайте синхронизацию Soong и ход сборки с помощью индикаторов статуса задач, запускайте действия сборки и выполняйте команды Soong в окне инструмента Soong.

Управление виртуальными устройствами Cuttlefish и дублирование нескольких экранов

  • Настройка нескольких устройств в Диспетчере устройств: Создавайте и управляйте конфигурациями виртуальных устройств Cuttlefish непосредственно в Диспетчере устройств, используя локальную копию AOSP.
  • Зеркальное отображение нескольких экранов в окне инструмента Cuttlefish. Используйте встроенное зеркальное отображение нескольких экранов Cuttlefish в специальном окне инструмента Cuttlefish, предназначенном для разработки Android Automotive OS (AAOS) с несколькими дисплеями и автомобилей с программным управлением (SDV).

ИИ в Android Studio и встроенный агент для разработки платформ

  • Встроенный агент с инструментами сборки и тестирования Soong. ИИ в Android Studio интегрирует инструменты сборки и выполнения atest Soong для конкретной платформы во встроенного агента, позволяя ему планировать многоэтапные изменения, компилировать целевые объекты Soong и запускать тесты платформы atest со структурированными результатами.
  • Поддержка Enterprise и BYOM. Получите доступ к ИИ в Android Studio, используя встроенные модели Gemini, Gemini Code Assist, лицензии Gemini Enterprise, или подключите конечные точки пользовательских моделей с помощью Bring Your Own Model (BYOM) со своими ключами API.

Отладка платформы (вкладка "Присоединить" в окне инструмента отладки и LLDB).

  • Закрепленная вкладка Attach (Run > Attach to Android Process):
    • Загруженные общие библиотеки (Libraries), Build ID и символы. Проверьте загруженные библиотеки .so и восьмизначные идентификаторы Build ID ELF перед подключением. ASfP сопоставляет каждый идентификатор сборки с индексом out/target/product/<device>/symbols (symbols/.build-id), отображая значок галочки, если проверка пройдена (наведите указатель на проверенную строку, чтобы посмотреть путь .debug), или значок предупреждения, если символы отсутствуют.
    • Java, C++, and Rust attach (Подключение Java, C++ и Rust). Выберите Java debugger (Отладчик Java), Native debugger (Нативный отладчик) или оба варианта, чтобы открыть связанные вкладки отладки <process> (<pid>) и <process> (<pid>)-jdwp. Если выбрать сервис C++ или Rust, отладчик Java будет скрыт, а вместо него появится сообщение Отладка Java недоступна, так как это не процесс Java.
    • Рутирование устройства и включение JDWP в один клик. Отфильтруйте данные с помощью параметра Показать системные процессы, нажмите Рутировать устройство, чтобы запустить adb root (Устройство с настроенным root-доступом), или нажмите Включить JDWP, чтобы задать persist.debug.dalvik.vm.jdwp.enabled=1 и перезагрузить устройства userdebug.
  • Улучшения отладчика LLDB, визуализаторы Rust и сквозная передача сигналов ART:
    • Встроенные сеансы lldb-dap поддерживают условные точки останова, точки останова исключений C++ и Rust, встроенные значения переменных в редакторе, Drop Frame, умный Step Into и автоматические средства форматирования Rust (String, Vec, HashMap, Option) из предварительных сборок AOSP.
    • При подключении LLDB к процессам ART и JNI сигналы проверки на null и сборки мусора SIGSEGV и SIGBUS автоматически передаются без ложных остановок.
    • rust-analyzer автоматически определяется на основе prebuilts/rust-toolchain/linux-x86/stable/rust-analyzer (с переходом на prebuilts/rust/linux-x86/stable/rust-analyzer), а ложные уведомления 'proc-macro' not found о сгенерированных файлах out/soong/.intermediates подавляются.

Тестирование платформы и отладка cc_test и rust_test

  • Отладка целей android_test, cc_test и rust_test. Запускайте сеансы отладки с помощью значков на полях Android.bp или тестовых методов:
    • Модули android_test запускаются с помощью atest --wait-for-debugger и подключают отладчик Java.
    • Модули cc_test, cc_test_host, rust_test и rust_test_host запускаются непосредственно во встроенном LLDB с помощью задач перед запуском Build Native Test Module (Создать нативный тестовый модуль) и Deploy with atest (Развернуть с помощью atest) (atest --collect-tests-only --disable-teardown).
  • Шаблоны LLDB для двух целевых платформ host_supported: true и для отдельных компьютеров. Для модулей cc_test и rust_test с host_supported: true в конфигурациях Soong Test включены переключатели Запустить на устройстве и Запустить на хосте с независимыми карточками настроек LLDB для каждой целевой платформы, а также поля Аргументы программы, Аргументы atest и Launch JSON (Настройки DAP).

Обновления в IDE и качество платформы

  • Автоматические уведомления об обновлениях в IDE. Начиная с версии ASfP 2026.2.2 Canary 1, ASfP автоматически проверяет наличие новых версий в фоновом режиме и уведомляет вас об этом в IDE с помощью диалогового окна Android Studio and Plugin Updates (Обновления Android Studio и плагинов). В нем есть кнопка Download (Скачать) для скачивания последнего пакета .deb и инструкции по установке через терминал. Чтобы проверить наличие обновлений, выберите Справка > Проверить наличие обновлений.
  • Постоянные ссылки на каналы -current-linux.deb. Для автоматизированных скриптов и настроек командной строки последние стабильные и Canary-пакеты доступны по постоянным URL: https://dl.google.com/android/asfp/asfp-current-linux.deb (стабильная версия) и https://dl.google.com/android/asfp/asfp-canary-current-linux.deb (Canary).
  • Обнаружение несоответствия версий на диске. ASfP определяет, когда установка .deb на диске была обновлена во время работы IDE, и предлагает перезапустить ее.
  • Проверки авторских прав и фиксаций AOSP по умолчанию. Включает предварительно настроенный профиль заголовка авторских прав AOSP по умолчанию и проверки форматирования сообщений о фиксации, адаптированные для вкладов в платформу.
  • Увеличен объем памяти, выделяемый по умолчанию. Максимальный размер кучи по умолчанию увеличен с 20 до 30 ГБ, чтобы поддерживать большие деревья исходного кода AOSP.