Tổng quan
Rust là một ngôn ngữ lập trình hệ thống hiện đại tập trung vào hiệu suất và độ an toàn, đặc biệt là độ an toàn của bộ nhớ. Rust ngày càng trở nên quan trọng trong hệ sinh thái Android vì đây là một lựa chọn thay thế an toàn hơn cho C hoặc C++ để phát triển các thành phần hệ thống quan trọng, giúp cải thiện tính bảo mật và độ ổn định.
Trang này hướng dẫn bạn thiết lập Android Studio for Platform (ASfP) để hỗ trợ hoạt động phát triển Rust trong các dự án Dự án nguồn mở Android (AOSP).
Điều kiện tiên quyết
- Đã cài đặt ASfP: Xác minh rằng bạn đã cài đặt và đang chạy ASfP.
- Thanh toán trên nền tảng: Bạn cần có một quy trình thanh toán đang hoạt động trên nền tảng AOSP trên máy của mình.
Bật tính năng hỗ trợ Rust
Sau đây là quy trình từng bước để hỗ trợ Rust trong dự án ASfP của bạn:
Bật Rust
- Khi tạo một dự án mới trong trình hướng dẫn thiết lập, hãy chọn hộp đánh dấu cho Rust:
Hộp đánh dấu Rust trong trình hướng dẫn thiết lập dự án mới. - Đối với các dự án hiện có, hãy mở tệp cấu hình
.asfp-projectrồi thêmrustvàoother_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>
Đồng bộ hoá dự án
Kích hoạt quá trình đồng bộ hoá dự án để IDE tạo và lập chỉ mục các crate Rust của bạn: chọn ASfP > Sync > Sync Project (ASfP > Đồng bộ hoá > Đồng bộ hoá dự án).
Xác minh cấu hình của bạn
Sau khi hoàn tất các bước này, hãy xác minh các kết quả sau:
rust-project.jsonxuất hiện trong chế độ xem dự án của bạn trong tệp nguồn.iml. Tệp này được Soong tạo trong quá trình phân tích và được liên kết tượng trưng với thư mục gốc của kho lưu trữ. Điều này là cần thiết để Giao thức máy chủ ngôn ngữ (LSP) cung cấp các dịch vụ ngôn ngữ. Đừng chỉnh sửa trực tiếp tệp này; thay vào đó, hãy đồng bộ hoá lại để Soong xử lý tệp.Xác minh rằng
rustcó trongother_languagestrong cấu hình.asfp-projectcủa bạn.
Đảm bảo rằng rust-project.jsonđã được tạo.IDE của bạn cho phép các tính năng dành riêng cho Rust sau đây.
Các tính năng chính của IDE Rust
- Trình gỡ lỗi LLDB và trình trực quan hoá biến tích hợp: Gỡ lỗi các dịch vụ thiết bị Rust đang chạy từ Run > Attach to Android Process (Chạy > Đính kèm vào quy trình Android). Bạn cũng có thể khởi chạy các mục tiêu
rust_testhoặcrust_test_hostngay từ biểu tượng rãnhAndroid.bpbằng trình gỡ lỗi LLDB tích hợp của ASfP (lldb-dap), với các trình tạo bản in đẹp tự động choString,Vec,HashMapvàOption. Để biết thêm thông tin, hãy xem phần Gỡ lỗi mã Rust. Hoàn tất mã: Nhận các đề xuất thông minh cho mã Rust, bao gồm cả các mục từ những mô-đun khác.
Tính năng hoàn tất mã đề xuất các mục từ một mô-đun Rust khác. Điều hướng: Chuyển đến các định nghĩa và tìm cách sử dụng các ký hiệu Rust trong dự án của bạn.
Chuyển đến định nghĩa của một biểu tượng Rust.
Tìm tất cả các cách sử dụng một ký hiệu Rust. Chú thích: Giữ con trỏ trên các biểu tượng để xem thông tin về loại và tài liệu.
Chú thích cho biết thông tin về loại của một biểu tượng Rust trong một mô-đun khác. Gợi ý nội tuyến: Xem thông tin về loại và các gợi ý theo ngữ cảnh khác ngay trong trình chỉnh sửa.
Gợi ý nội tuyến cho biết thông tin về loại trong mã. Chế độ xem cấu trúc: Điều hướng cấu trúc của các tệp Rust bằng cửa sổ công cụ Structure (Cấu trúc) (View > Tool Windows > Structure (Xem > Cửa sổ công cụ > Cấu trúc)).
Cửa sổ công cụ cấu trúc cho thấy cấu trúc của một tệp Rust. Tái cấu trúc: Đổi tên các biểu tượng một cách an toàn và cập nhật tất cả các cách sử dụng.
Đổi tên một biểu tượng Rust và cập nhật tất cả các tham chiếu của biểu tượng đó. Phân tích theo thời gian thực: Nhận phản hồi ngay lập tức về các lỗi và cảnh báo trong mã Rust của bạn.
IDE cho thấy các lỗi và cảnh báo theo thời gian thực trong mã Rust.