Thiết lập một IDE để phát triển SDV

Android Studio for Platform (ASfP) là môi trường phát triển tích hợp (IDE) được đề xuất để phát triển nền tảng Android, bao gồm cả các dự án Xe được xác định bằng phần mềm (SDV) của Hệ điều hành Android Automotive (AAOS). ASfP cung cấp một bộ công cụ phong phú để chỉnh sửa, tạo, gỡ lỗi và kiểm thử mã, bao gồm:

  • Trợ lý dựa trên AI (Gemini)
  • Hỗ trợ ngôn ngữ Rust, C hoặc C++, Java
  • Các hoạt động tích hợp hữu ích cho quá trình phát triển SDV trên AAOS (ví dụ: hỗ trợ trình mô phỏng Cuttlefish và hỗ trợ ngôn ngữ VSIDL)

Cài đặt Android Studio for Platform

Cách cài đặt ASfP:

  1. Tải Android Studio for Platform xuống.

  2. Chọn phiên bản phù hợp nhất với nhu cầu của bạn:

    • Ổn định: Bản phát hành công khai mới nhất, nên dùng cho hầu hết người dùng
    • Canary: Bản dựng tiếp cận sớm có các tính năng mới nhất, nhưng có thể kém ổn định hơn
  3. Làm theo hướng dẫn cài đặt trên trang tải xuống.

Thiết lập dự án SDV AAOS

Cách thiết lập dự án SDV AAOS:

  1. Xác minh rằng bạn có quyền truy cập vào kho lưu trữ mã nguồn AAOS SDV và đã khởi tạo cũng như đồng bộ hoá quy trình thanh toán cục bộ. Hãy xem phần Tải xuống, tạo và chạy để biết thông tin chi tiết về cách truy cập vào nguồn và khởi tạo kho lưu trữ.

  2. Mở Android Studio for Platform.

  3. Nếu bạn là người dùng lần đầu, hãy làm theo Trình hướng dẫn thiết lập để tuỳ chỉnh môi trường phát triển.

  4. Tạo dự án mới:

    • Nếu bạn chưa mở dự án nào, hãy nhấp vào New (Mới) trên màn hình Chào mừng.
    • Nếu bạn đã mở một dự án, hãy nhấp vào Open (Mở) hoặc chọn ASfP > Project > Import ASfP Project (ASfP > Dự án > Nhập dự án ASfP) trong trình đơn.
  5. Điền thông tin chi tiết về cấu hình dự án trong trình hướng dẫn:

    • Repo checkout: Chỉ định đường dẫn tuyệt đối đến thư mục gốc của chế độ kiểm xuất mã nguồn SDV AAOS cục bộ (ví dụ: /path/to/sdv_source).

    • lunch target: Nhập mục tiêu khởi chạy thích hợp cho quá trình phát triển AAOS SDV trên Cuttlefish, ví dụ: sdv_core_cf-aosp_current-userdebug. Hãy xem phần Chọn mục tiêu để biết thêm các mục tiêu có sẵn.

    • Nguồn dự án: Liệt kê các thư mục hoặc mô-đun ban đầu mà bạn muốn đưa vào dự án hoặc nhấp vào biểu tượng thư mục để mở trình duyệt hệ thống tệp nhằm chọn các thư mục. Việc chọn quá nhiều thư mục hoặc mô-đun sẽ ảnh hưởng đến hiệu suất lập chỉ mục và tìm kiếm của IDE, vì vậy, bạn chỉ nên thêm các thư mục hoặc mô-đun có liên quan.

    • Hỗ trợ ngôn ngữ: Chọn Rust và C++ làm ngôn ngữ được hỗ trợ.

    • Tên dự án: Đặt tên mô tả cho dự án.

    • Hoàn tất thiết lập: Nhấp vào Hoàn tất. ASfP tạo cấu trúc dự án và tệp cấu hình .asfp-project.

ASfP sẽ tự động bắt đầu quy trình đồng bộ hoá ban đầu. ASfP phân tích mã nguồn của bạn, giải quyết các phần phụ thuộc bằng hệ thống bản dựng Soong và tạo thông tin cần thiết cho các tính năng thông minh về mã. Quá trình này có thể mất một khoảng thời gian đáng kể, đặc biệt là đối với lần đồng bộ hoá đầu tiên.

Tuỳ chỉnh dự án

Tệp .asfp-project trong thư mục gốc của dự án cho phép bạn tuỳ chỉnh thêm. Bạn có thể chỉnh sửa tệp này để:

  • Thêm hoặc xoá thư mục và mô-đun.
  • Bật tính năng hỗ trợ cho các ngôn ngữ khác, chẳng hạn như C++ hoặc Rust (Java và Kotlin là ngôn ngữ mặc định).
  • Định cấu hình cờ dựng.

Để thay đổi tệp cấu hình, hãy chọn ASfP > Project > Open Config (ASfP > Dự án > Mở cấu hình). Hãy xem bài viết Tổng quan về dự án để biết các lựa chọn cấu hình hiện có.

Gỡ lỗi và kiểm thử

Để gỡ lỗi và kiểm thử mã trong ASfP, hãy xem phần Gỡ lỗi mã nền tảngKiểm thử mã nền tảng bằng atest.

Các chế độ tích hợp hiện có

ASfP đi kèm với một số tính năng tích hợp hữu ích để phát triển SDV AAOS, bao gồm cả hỗ trợ cho Cuttlefish và Giao thức máy chủ ngôn ngữ (LSP) trong VSIDL.

Trình bổ trợ Cuttlefish

Trình bổ trợ Cuttlefish cho phép người dùng tạo và chạy các thiết bị Cuttlefish cục bộ ngay từ ASfP.

Cài đặt trình bổ trợ

Trình bổ trợ Cuttlefish được cài đặt sẵn cùng với ASfP và không yêu cầu thiết lập. Trình bổ trợ này yêu cầu bạn cài đặt các công cụ Cuttlefish trên thiết bị. Làm theo hướng dẫn để cài đặt các công cụ Cuttlefish nếu cần.

Tạo thiết bị Cuttlefish

Cách tạo thiết bị mới:

  1. Mở cửa sổ công cụ Trình quản lý thiết bị bằng cách chọn Tools > Device Manager (Công cụ > Trình quản lý thiết bị) hoặc bằng cách nhấp vào biểu tượng Running Devices (Thiết bị đang chạy) trên bảng điều khiển bên phải nếu Trình quản lý thiết bị đã được ghim ở đó.

  2. Nhấp vào biểu tượng + rồi chọn Create Cuttlefish Device (Tạo thiết bị Cuttlefish).

  3. Định cấu hình thiết bị Cuttlefish mới. Bạn có thể tạo thiết bị Cuttlefish theo hai cách:

    • Từ quy trình kiểm xuất cây nguồn Android cục bộ:

      • Chọn đường dẫn đến mục tiêu đã tạo tương ứng với cấu hình khởi chạy của bạn (xem phần Chọn mục tiêu để biết thêm chi tiết).
      • Chọn đường dẫn máy chủ lưu trữ.
      • Nếu muốn, hãy chọn cấu hình thiết bị có sẵn hoặc Không có để dùng cấu hình mặc định.
    • Từ cấu hình chuẩn (sử dụng lựa chọn này để tạo nhiều thiết bị từ một cấu hình duy nhất):

      • Chọn đường dẫn đến cấu hình thiết bị.
      • Bạn có thể cung cấp cờ ghi đè (không bắt buộc) để ghi đè các lựa chọn cấu hình.
  4. Đợi thiết bị Cuttlefish được tạo và thêm vào danh sách các thiết bị đang chạy trong Trình quản lý thiết bị.

  5. Chọn thiết bị Cuttlefish trong trình đơn Running Devices (Thiết bị đang chạy).

Bạn có thể khởi động hoặc dừng từng thiết bị Cuttlefish bằng cách nhấp vào biểu tượng dừng hoặc khởi động bên cạnh thiết bị trong Trình quản lý thiết bị.

Truy cập vào trang thiết bị Cuttlefish

Trình bổ trợ Cuttlefish có một cửa sổ công cụ hiển thị trang Cuttlefish Device (Thiết bị Cuttlefish), nơi bạn có thể truy cập vào các tính năng phản chiếu màn hình.

Để mở cửa sổ công cụ Cuttlefish, hãy nhấp vào biểu tượng ... trên bảng điều khiển bên trái rồi chọn Cuttlefish. Ngoài ra, bạn có thể tìm Cuttlefish trong mục trình đơn Trợ giúp > Tìm hành động.

Giao thức máy chủ ngôn ngữ trong VSIDL

Trong VSIDL, LSP cung cấp một bộ tính năng IDE phong phú để cải thiện quy trình phát triển của bạn khi làm việc với các tệp VSIDL (có đuôi .vsidl) trong ASfP.

Làm nổi bật cú pháp ngữ nghĩa

Máy chủ LSP cung cấp tính năng làm nổi bật cú pháp dựa trên các tệp VSIDL.

  • Chức năng: Làm nổi bật các từ khoá (service_bundle, publisher), trường (package:, message:) và giá trị cố định.

  • Cách thử: Mở một tệp VSIDL bất kỳ. Tệp này được mã hoá màu để phân biệt các từ khoá cấu trúc với giá trị nhận dạng do người dùng xác định.

Thông tin chẩn đoán trực tiếp (lỗi và cảnh báo)

Máy chủ LSP liên tục xác thực các tệp và báo cáo vấn đề theo thời gian thực.

  • Chức năng: Phát hiện lỗi cú pháp, các tham chiếu loại không hợp lệ và các lỗi khác trong toàn bộ danh mục cũng như các phần phụ thuộc của danh mục.

  • Cách thử: Nhập sai chính tả tên của một thông báo (ví dụ: TiiirePressure). Một đường gạch chân màu đỏ sẽ xuất hiện bên dưới lỗi chính tả. Di chuột lên từ đó để xem thông báo lỗi hoặc xem danh sách đầy đủ trong cửa sổ công cụ Problems (Vấn đề) ở cuối IDE.

Bạn có thể sử dụng các tính năng điều hướng và thông tin chi tiết để khám phá mối quan hệ giữa các phần khác nhau trong danh mục VSIDL.

  • Tự động hoàn thành: Nhấn tổ hợp phím Control+Space để xem các đề xuất về từ khoá, thông báo protobuf, dịch vụ RPC, chủ đề và kênh. Đề xuất từ khoá bao gồm nội dung giải thích ngắn gọn và hữu ích về mục đích của từ khoá ngay trong trình đơn hoàn thành. LSP cũng cung cấp các đoạn mã thông minh cho các khối như publisher hoặc server để đẩy nhanh quy trình làm việc của bạn.

  • Chuyển đến một định nghĩa: Giữ phím Control rồi nhấp (hoặc nhấn tổ hợp phím Control+B) vào một thông báo, dịch vụ, chủ đề hoặc thông tin tham chiếu về kênh để chuyển thẳng đến định nghĩa nguồn của thông báo, dịch vụ, chủ đề hoặc kênh đó, ngay cả khi thông tin tham chiếu đó nằm trong một tệp VSIDL hoặc protobuf khác.

  • Tìm thông tin tham khảo: Đặt con trỏ lên từ khoá publisher, subscriber, server hoặc client rồi nhấn tổ hợp phím Alt+Shift+F7 để tìm tất cả các lần xuất hiện.

  • Thông tin khi di chuột: Di chuyển con trỏ đến một loại hoặc thuộc tính (hoặc nhấn tổ hợp phím Control+Q). Một chú giải công cụ sẽ xuất hiện, cho thấy các nhận xét trong tài liệu (nếu có).

Đặc điểm cấu trúc

Máy chủ LSP giúp bạn quản lý và điều hướng cấu trúc của các tệp VSIDL lớn:

  • Ký hiệu tài liệu (đề cương): Nhấn tổ hợp phím Ctrl+F12 để xem chú thích điều hướng nhanh hoặc mở cửa sổ công cụ Structure (Cấu trúc) (Ctrl+Alt+7) để xem chế độ xem dạng cây của tất cả các gói và đơn vị trong tệp.

  • Phạm vi thu gọn: Nhấp vào biểu tượng > hoặc V trong rãnh (bên cạnh số dòng) để thu gọn hoặc mở rộng các khối logic lớn như service_bundle hoặc định nghĩa ánh xạ.

  • Định dạng tài liệu: Nhấn tổ hợp phím Control+Alt+L để tự động định dạng lại tệp, tạo thụt lề và khoảng cách nhất quán.