Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Обзор
Rust — современный язык системного программирования, ориентированный на производительность и безопасность, особенно на безопасность памяти. Rust приобретает всё большую значимость в экосистеме Android как более безопасная альтернатива C/C++ для разработки критически важных системных компонентов, обеспечивая повышенную безопасность и стабильность.
На этой странице вы узнаете, как настроить Android Studio for Platform (ASfP) для поддержки разработки Rust в ваших проектах Android Open Source Project (AOSP).
Предпосылки
ASfP установлен: Убедитесь, что ASfP установлен и работает.
Проверка платформы: на вашем компьютере должна быть установлена рабочая проверка платформы AOSP.
Включение поддержки Rust
Вот пошаговый процесс включения поддержки Rust в ваш проект ASfP:
Включить Rust
При создании нового проекта в мастере настройки просто отметьте галочкой Rust:
Флажок Rust в мастере настройки нового проекта.
Для существующих проектов перейдите в конфигурацию вашего .asfp-project и добавьте rust в other_languages :
other_languages:-cpp-rust```
<figure>
<img src="/studio/platform/images/1-modify_asfp_project_languages.png" alt="Modifying the .asfp-project file to add rust to other_languages" class="screenshot">
<figcaption>Adding Rust support in the <code>.asfp-project</code> file.</figcaption></figure>
Синхронизируйте свой проект:
После выполнения предыдущих шагов необходимо запустить синхронизацию проекта, чтобы убедиться, что все изменения применены и IDE распознает проект Rust: Перейдите в Файл > Синхронизировать проект .
Проверка успеха
После выполнения этих шагов:
Файл rust-project.json должен отображаться в окне проекта (под исходным IML-файлом). Этот файл генерируется Soong во время анализа и создаётся символической ссылкой на корень репозитория, что необходимо для предоставления языковых сервисов LSP. НЕ редактируйте этот файл напрямую; вместо этого выполните повторную синхронизацию, чтобы Soong мог им заняться.
Напоминаем, что дважды проверьте наличие rust в разделе other_languages вашего .asfp-project -config.
Убедитесь, что rust-project.json был сгенерирован.
В вашей среде IDE должны быть включены специфичные для Rust функции (описанные и показанные ниже).
Основные возможности Rust IDE
Автодополнение кода: получайте интеллектуальные предложения по коду Rust, включая элементы из других модулей. Автодополнение кода предлагает элементы из другого модуля Rust.
Навигация: быстро переходите к определениям и находите примеры использования символов Rust в вашем проекте. Переход к определению символа Rust. Поиск всех использований символа Rust.
Подсказки: наведите указатель мыши на символы, чтобы увидеть информацию о типе и документацию. Подсказка, показывающая информацию о типе символа Rust из другого модуля.
Встроенные подсказки: просматривайте информацию о типе и другие контекстные подсказки непосредственно в редакторе. Встроенные подсказки, показывающие информацию о типе кода.
Вид структуры: перемещайтесь по структуре файлов Rust с помощью окна инструментов «Структура» (Вид > Окна инструментов > Структура). Окно инструмента структуры, показывающее контур файла Rust.
Рефакторинг: безопасное переименование символов и обновление всех случаев использования. Переименование символа Rust и обновление всех его ссылок.
Анализ в реальном времени: получайте мгновенную обратную связь об ошибках и предупреждениях в вашем коде Rust. IDE, отображающая ошибки и предупреждения в реальном времени в коде Rust.
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-09-04 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2025-09-04 UTC."],[],[],null,["Overview\n\nRust is a modern systems programming language focused on performance and safety,\nparticularly memory safety. Rust is increasingly important in the Android\necosystem as a safer alternative to C/C++ for developing critical system\ncomponents, offering improved security and stability.\n\nThis page guides you through setting up Android Studio for Platform (ASfP) to\nsupport Rust development within your Android Open Source Project (AOSP)\nprojects.\n\nPrerequisites\n\n- **ASfP Installed:** Verify you have ASfP installed and running.\n- **Platform checkout:** You need a working AOSP platform checkout on your machine.\n\nEnabling Rust support\n\nHere's the step-by-step process to get Rust support working in your ASfP\nproject:\n\n1. **Enable Rust**\n\n - When creating a **new project** in the setup wizard, simply check the box for Rust:\n\n Rust checkbox in new project setup wizard.\n - For existing projects, navigate to your `.asfp-project` config and add `rust` to `other_languages`:\n\n other_languages:\n - cpp\n - rust\n ```\n\n \u003cfigure\u003e\n \u003cimg src=\"/studio/platform/images/1-modify_asfp_project_languages.png\" alt=\"Modifying the .asfp-project file to add rust to other_languages\" class=\"screenshot\"\u003e\n \u003cfigcaption\u003eAdding Rust support in the \u003ccode\u003e.asfp-project\u003c/code\u003e file.\u003c/figcaption\u003e\n \u003c/figure\u003e\n\n\u003c!-- --\u003e\n\n1. **Sync your project:**\n\n - After performing the previous steps, you need to trigger a project sync to ensure that all changes are applied and the IDE recognizes the Rust project: Go to **File \\\u003e Sync Project**.\n\nVerifying success\n\nAfter completing these steps:\n\n- You should see `rust-project.json` in your project view (under the source\n iml). This file is generated by Soong during analysis and symlinked to the\n repo root, which is necessary for LSP to provide language services. **DO\n NOT** edit this file directly; instead, re-sync to let Soong handle it.\n\n As a reminder, double check that `rust` is present under `other_languages`\n in your `.asfp-project` config.\n Ensure that `rust-project.json` has been generated.\n- You should see Rust-specific features (described and shown below) enabled in\n your IDE.\n\nKey Rust IDE features\n\n- **Code completion:** Get intelligent suggestions for Rust code, including\n items from other modules.\n\n Code completion suggesting items from a different Rust module.\n\n \u003cbr /\u003e\n\n- **Navigation:** Quickly jump to definitions and find usages of Rust symbols\n across your project.\n\n Navigating to the definition of a Rust symbol. Finding all usages of a Rust symbol.\n\n \u003cbr /\u003e\n\n- **Tooltips:** Hover over symbols to see type information and documentation.\n\n Tooltip showing type information for a Rust symbol from another module.\n\n \u003cbr /\u003e\n\n- **Inlay hints:** View type information and other contextual hints directly\n in the editor.\n\n Inlay hints showing type information within the code.\n\n \u003cbr /\u003e\n\n- **Structure view:** Navigate the structure of your Rust files using the\n **Structure** tool window (View \\\u003e Tool Windows \\\u003e Structure).\n\n The structure tool window showing the outline of a Rust file.\n\n \u003cbr /\u003e\n\n- **Refactoring:** Safely rename symbols and have all usages updated.\n\n Renaming a Rust symbol and updating all its references.\n\n \u003cbr /\u003e\n\n- **Real-time analysis:** Get instant feedback on errors and warnings in your\n Rust code.\n\n IDE showing real-time errors and warnings in Rust code.\n\n \u003cbr /\u003e"]]