Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Panoramica
Rust è un linguaggio di programmazione di sistemi moderno incentrato su prestazioni e sicurezza,
in particolare sulla sicurezza della memoria. Rust sta diventando sempre più importante nell'ecosistema Android come alternativa più sicura a C/C++ per lo sviluppo di componenti di sistema critici, offrendo maggiore sicurezza e stabilità.
Questa pagina ti guida nella configurazione di Android Studio for Platform (ASfP) per
supportare lo sviluppo in Rust all'interno dei tuoi progetti Android Open Source Project (AOSP).
Prerequisiti
ASfP installato:verifica che ASfP sia installato e in esecuzione.
Checkout della piattaforma:devi avere un checkout della piattaforma AOSP funzionante sul tuo
computer.
Attivazione del supporto di Rust
Ecco la procedura passo passo per attivare il supporto di Rust nel tuo progetto ASfP:
Attiva Rust
Quando crei un nuovo progetto nella configurazione guidata, seleziona la casella
per Rust:
Casella di controllo Rust nella nuova configurazione guidata del progetto.
Per i progetti esistenti, vai alla configurazione .asfp-project e aggiungi
rust a 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>
Sincronizzare il progetto:
Dopo aver eseguito i passaggi precedenti, devi attivare una sincronizzazione del progetto
per assicurarti che tutte le modifiche vengano applicate e che l'IDE riconosca il progetto Rust: vai a File > Sincronizza progetto.
Verifica dell'esito positivo
Dopo aver completato questi passaggi:
Dovresti vedere rust-project.json nella visualizzazione del progetto (sotto l'iml di origine). Questo file viene generato da Soong durante l'analisi e collegato simbolicamente alla
radice del repository, il che è necessario per LSP per fornire servizi linguistici. NON modificare direttamente questo file. Esegui di nuovo la sincronizzazione per consentire a Soong di gestirlo.
Ti ricordiamo di verificare che rust sia presente in other_languages
nella configurazione di .asfp-project.
Assicurati che rust-project.json sia stato generato.
Dovresti visualizzare le funzionalità specifiche di Rust (descritte e mostrate di seguito) abilitate nel tuo IDE.
Funzionalità principali dell'IDE Rust
Completamento del codice:ricevi suggerimenti intelligenti per il codice Rust, inclusi elementi di altri moduli.
Completamento del codice che suggerisce elementi di un modulo Rust diverso.
Navigazione: passa rapidamente alle definizioni e trova gli utilizzi dei simboli Rust
nel tuo progetto.
Navigazione alla definizione di un simbolo Rust.Trovare tutti gli utilizzi di un simbolo Rust.
Descrizioni comando:passa il mouse sopra i simboli per visualizzare informazioni e documentazione sui tipi.
Descrizione comando che mostra le informazioni sul tipo per un simbolo Rust di un altro modulo.
Suggerimenti incorporati: visualizza le informazioni sul tipo e altri suggerimenti contestuali direttamente nell'editor.
Suggerimenti incorporati che mostrano informazioni sul tipo all'interno del codice.
Visualizzazione Struttura:esplora la struttura dei file Rust utilizzando la finestra degli strumenti
Struttura (Visualizza > Finestre degli strumenti > Struttura).
La finestra dello strumento Struttura che mostra la struttura di un file Rust.
Refactoring:rinomina in modo sicuro i simboli e aggiorna tutti gli utilizzi.
Rinomina un simbolo Rust e aggiorna tutti i relativi riferimenti.
Analisi in tempo reale:ricevi feedback immediato su errori e avvisi nel tuo
codice Rust.
IDE che mostra errori e avvisi in tempo reale nel codice Rust.
I campioni di contenuti e codice in questa pagina sono soggetti alle licenze descritte nella Licenza per i contenuti. Java e OpenJDK sono marchi o marchi registrati di Oracle e/o delle sue società consociate.
Ultimo aggiornamento 2025-09-05 UTC.
[null,null,["Ultimo aggiornamento 2025-09-05 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"]]