Android Studio for Platform (ASfP) — это рекомендуемая интегрированная среда разработки (IDE) для разработки приложений на платформе Android, включая проекты программно-определяемых транспортных средств (SDV) на базе Android Automotive Operating System (AAOS). ASfP предоставляет богатый набор инструментов для редактирования кода, сборки, отладки и тестирования, в том числе:
- Искусственный интеллект-помощник (Gemini)
- Поддержка языков Rust, C или C++, Java.
- Полезные интеграции для разработки AAOS SDV (например, поддержка эмулятора Cuttlefish и поддержка языка VSIDL).
Установите Android Studio для этой платформы.
Для установки ASfP:
Скачайте Android Studio для платформы .
Выберите версию, которая лучше всего соответствует вашим потребностям:
- Стабильная версия: последняя рабочая версия, рекомендуемая большинству пользователей.
- Canary: Версия для раннего доступа включает в себя новейшие функции, но потенциально может быть менее стабильной.
Следуйте инструкциям по установке, указанным на странице загрузки.
Создайте проект AAOS SDV.
Чтобы настроить проект AAOS SDV:
Убедитесь, что у вас есть доступ к репозиторию исходного кода AAOS SDV, а также что вы инициализировали и синхронизировали локальную копию. Подробную информацию о доступе к исходному коду и инициализации репозитория см. в разделе «Загрузка, сборка и запуск» .
Запустите Android Studio для платформы.
Если вы используете программу впервые, следуйте инструкциям мастера настройки, чтобы персонализировать среду разработки.
Создать новый проект:
- Если у вас нет открытого проекта, нажмите кнопку «Создать» на экране приветствия.
- Если у вас уже открыт проект, нажмите «Открыть» или выберите ASfP > Проект > Импортировать проект ASfP из меню.
В мастере укажите параметры конфигурации проекта:
Выгрузка из репозитория: укажите абсолютный путь к корневому каталогу вашей локальной загрузки исходного кода AAOS SDV (например,
/path/to/sdv_source).Целевой объект для запуска: Введите соответствующий целевой объект для запуска разработки AAOS SDV на платформе Cuttlefish, например,
sdv_core_cf-trunk_staging-userdebug. См. раздел «Выбор целевого объекта» для получения информации о других доступных целевых объектах.Исходные файлы проекта: перечислите начальные каталоги или модули, которые вы хотите включить в свой проект, или щелкните значок папки, чтобы открыть файловый браузер и выбрать каталоги. Выбор слишком большого количества каталогов или модулей повлияет на индексирование и производительность поиска в IDE, поэтому включайте только релевантные каталоги или модули.
Поддержка языков: выберите Rust и C++ в качестве поддерживаемых языков.
Название проекта: Дайте своему проекту описательное название.
Завершите настройку: нажмите «Готово» . ASfP создаст структуру проекта и конфигурационный файл
.asfp-project.
ASfP автоматически запускает начальный процесс синхронизации. ASfP анализирует ваш исходный код, разрешает зависимости с помощью системы сборки Soong и собирает информацию, необходимую для функций интеллектуального анализа кода. Это может занять значительное количество времени, особенно для первой синхронизации.
Настройте проект
Файл .asfp-project расположенный в корневой директории вашего проекта, позволяет дополнительно настраивать его. Вы можете отредактировать этот файл следующим образом:
- Добавление или удаление каталогов и модулей.
- Включите поддержку других языков, таких как C++ или Rust (по умолчанию поддерживаются Java и Kotlin).
- Настройте флаги сборки.
Чтобы внести изменения в конфигурационный файл, выберите ASfP > Проект > Открыть конфигурацию . Доступные параметры конфигурации см. в разделе «Обзор проектов» .
Отладка и тестирование
Для отладки и тестирования кода в ASfP см. разделы «Отладка кода платформы» и «Тестирование кода платформы с помощью atest» .
Доступные интеграции
ASfP включает в себя ряд полезных интеграций для разработки AAOS SDV, в том числе поддержку Cuttlefish и протокола языкового сервера (LSP) в VSIDL.
Плагин "Кальмар"
Плагин Cuttlefish позволяет пользователям создавать и запускать локальные устройства Cuttlefish непосредственно из ASfP.
Установите плагин
Плагин Cuttlefish предустановлен в ASfP и не требует настройки. Для работы плагина необходимо установить инструменты Cuttlefish на устройство. При необходимости следуйте инструкциям по установке инструментов Cuttlefish.
Создать устройство «Каракатица»
Для создания нового устройства:
Откройте окно «Диспетчер устройств», выбрав «Инструменты» > «Диспетчер устройств» или щелкнув значок «Запущенные устройства» на правой панели, если «Диспетчер устройств» уже закреплен там.
Нажмите на значок «+» и выберите «Создать устройство для имитации каракатицы» .
Настройте новое устройство Cuttlefish. Создать устройство Cuttlefish можно двумя способами:
Из локального репозитория исходного кода Android:
- Выберите путь к целевому объекту сборки, соответствующий вашей конфигурации запуска (подробнее см. раздел «Выбор целевого объекта» ).
- Выберите путь к хосту.
- При желании выберите доступные конфигурации устройства или «Нет» для конфигурации по умолчанию.
Из канонической конфигурации (используйте этот параметр для создания нескольких устройств из одной конфигурации):
- Выберите путь к настройкам устройства.
- При желании можно указать любые флаги переопределения для изменения параметров конфигурации.
Дождитесь создания устройства Cuttlefish и его добавления в список запущенных устройств в Диспетчере устройств.
Выберите устройство Cuttlefish в меню «Устройства для бега» .
Вы можете запускать или останавливать отдельные устройства Cuttlefish, нажав значок остановки или запуска рядом с устройством в Диспетчере устройств.
Перейти на страницу устройства «Каракатица»
Плагин Cuttlefish имеет окно инструментов, в котором отображается страница « Устройство Cuttlefish» , где вы можете получить доступ к функциям зеркального отображения экрана.
Чтобы открыть окно инструмента «Каракатица», щелкните значок «...» на левой боковой панели и выберите «Каракатица» . Также вы можете найти «Каракатицу» в меню «Справка» > «Найти действие» .
Протокол языкового сервера в VSIDL
В VSIDL LSP предоставляет богатый набор функций IDE для улучшения рабочего процесса разработки при работе с файлами VSIDL (с расширением .vsidl ) в ASfP.
Семантическая подсветка синтаксиса
LSP-сервер обеспечивает подсветку синтаксиса для файлов VSIDL.
Что делает эта функция: выделяет ключевые слова (
service_bundle,publisher), поля (package:message::) и литералы.Как попробовать: Откройте любой файл VSIDL. Файл имеет цветовую кодировку, позволяющую отличать структурные ключевые слова от определяемых пользователем идентификаторов.
Диагностика в реальном времени (ошибки и предупреждения)
LSP-сервер непрерывно проверяет файлы и сообщает о проблемах в режиме реального времени.
Что делает программа: Обнаруживает синтаксические ошибки, недопустимые ссылки на типы и другие ошибки во всем каталоге и его зависимостях.
Как попробовать: Добавьте опечатку в название сообщения (например,
TiiirePressure). Под орфографической ошибкой появится красная волнистая линия. Наведите курсор на слово, чтобы увидеть сообщение об ошибке, или просмотрите полный список в окне инструментов «Проблемы» внизу IDE.
Навигация и разведка
Вы можете использовать функции навигации и интеллектуального анализа для изучения взаимосвязей между различными частями вашего каталога VSIDL.
Автозавершение: Нажмите Control + Space , чтобы увидеть подсказки для ключевых слов, сообщений protobuf, служб RPC, тем и каналов. Подсказки по ключевым словам содержат краткие и полезные пояснения к их назначению непосредственно в меню автозавершения. LSP также предоставляет интеллектуальные фрагменты для таких блоков, как
publisherилиserverчтобы ускорить вашу работу.Перейти к определению: Удерживая клавишу Control , щелкните (или нажмите Control+B ) по ссылке на сообщение, службу, тему или канал, чтобы перейти непосредственно к его исходному определению, даже если оно находится в другом файле VSIDL или protobuf.
Поиск ссылок: Наведите курсор на ключевое слово
publisher,subscriber,serverилиclientи нажмите Alt+Shift+F7, чтобы найти все вхождения.Всплывающая подсказка: Наведите курсор на тип или свойство (или нажмите Ctrl+Q ). Появится всплывающая подсказка с комментариями к документации (если таковые имеются).
Структурные особенности
Сервер LSP помогает управлять структурой больших файлов VSIDL и перемещаться по ней:
Символы документа (структура): Нажмите Control+F12 для быстрого просмотра всплывающей подсказки навигации или откройте окно инструмента «Структура» ( Control+Alt+7 ), чтобы увидеть древовидное представление всех пакетов и модулей в файле.
Сворачивание диапазонов: Щелкните значки > или V в боковой панели (рядом с номерами строк), чтобы свернуть или развернуть большие логические блоки, такие как
service_bundleили определения сопоставлений.Форматирование документа: Нажмите Control+Alt+L , чтобы автоматически переформатировать файл, обеспечив единообразные отступы и интервалы.