Trang này mô tả cách tổ chức mã nguồn Display Safety.
Để biết thêm thông tin, hãy xem tệp README.md trong từng thư mục.
Sao chép kho lưu trữ
Để có quyền truy cập vào kho lưu trữ, hãy liên hệ với Nhà quản lý tài khoản hỗ trợ kỹ thuật của Google.
Framework
Thư mục này chứa các thành phần cốt lõi của khung Display Safety.
| Thư mục | Mục đích |
|---|---|
api/har-platform-api |
Tập hợp các lớp trừu tượng hệ thống con của nền tảng để xây dựng các ứng dụng trình kết xuất có tính sẵn sàng cao (HAR) trên các nền tảng được hỗ trợ. |
api/har-types |
Các loại lớp trừu tượng phần cứng. |
asset-manager |
Các công cụ để quản lý tài sản ứng dụng trong thời gian chạy. |
audio/har-audio |
Crate để xử lý việc phát âm thanh HAR |
customizations |
Chứa các API, hoạt động triển khai và macro phái sinh để tạo các chế độ tuỳ chỉnh thiết kế từ một ứng dụng dựa trên HAR. |
derive/har-ui-model-derive |
Macro theo quy trình để lấy các đặc điểm chung do hệ thống mô hình giao diện người dùng HAR sử dụng |
display_list |
Xác định các cấu trúc và thành phần mô tả một cảnh để kết xuất, tách biệt với mọi phần phụ trợ đồ hoạ. |
graphics/external-image |
Một thùng chứa cho các biểu diễn hình ảnh từ bên ngoài. |
graphics/har-gl-context |
Xác định API ngữ cảnh đồ hoạ và bao gồm nhiều cách triển khai trên các nền tảng được hỗ trợ, cả để hiển thị và kết xuất ngoài màn hình. |
graphics/impeller |
API Rust an toàn cho Impeller, được xây dựng dựa trên các liên kết FFI đã tạo. |
graphics/impeller-renderer |
Triển khai trình kết xuất cấp cao bằng cách sử dụng Impeller làm công cụ kết xuất hỗ trợ. |
har-layout |
Một trình bao bọc cho Taffy để tính toán bố cục cho các khung hiển thị trong HAR. |
har-monitoring |
Bộ công cụ giám sát hiệu suất. |
har-utils |
Các tiện ích phổ biến. |
harry |
Khung được dùng làm nền tảng để tạo các ứng dụng HAR |
harry-animation |
API và quá trình triển khai ảnh động cho Harry |
squoosh |
Biểu diễn trung gian và công cụ ảnh động cho các tham số khung hiển thị trong khung Harry. |
task-scheduler |
Tiện ích để lên lịch các tác vụ và thực thi chúng trong một luồng ở chế độ nền sau một khoảng thời gian trễ cụ thể. |
test_suites |
Bộ kiểm thử để chạy các bài kiểm thử đơn vị về độ an toàn của màn hình |
Lắp sẵn
Thư mục này chứa các thư viện và thành phần được tạo sẵn.
| Thư mục | Mục đích |
|---|---|
impeller/ |
Thư viện tạo sẵn cho công cụ đồ hoạ Impeller, được sắp xếp theo hệ điều hành và cấu trúc. |
impeller-rs-bindgen/ |
Các liên kết FFI Rust cho Impeller. |
impeller-rs-bindgen-wrapper/ |
Trình bao bọc API cho các liên kết Impeller. |
Tài liệu tham khảo
Thư mục này chứa chế độ triển khai tham chiếu HAR, các chế độ triển khai dành riêng cho nền tảng, công cụ và cấu phần phần mềm kiểm thử.
| Thư mục | Mục đích |
|---|---|
audio/tinyalsa-rs |
Các liên kết FFI của Rust cho thư viện âm thanh Tinyalsa. |
audio/tinyalsa-audio |
Thư viện để phát âm thanh và quản lý thiết bị, dựa trên các liên kết FFI do thùng chứa "tinyalsa-rs" tạo |
camera/emulated-camera |
Cung cấp một cách triển khai máy ảnh mô phỏng bằng cách sử dụng đặc điểm "Camera" từ "har-platform-api". |
graphics/gl-helpers |
Thùng tiện ích chứa các hàm trợ giúp GL |
har-user-input-evdev/ |
Triển khai một quy trình xử lý đầu vào cơ bản dựa trên evdev. Hỗ trợ các sự kiện bàn phím, chuột và cảm ứng (cảm ứng đơn và cảm ứng đa điểm) |
harry-app/ |
Triển khai tham chiếu cho một ứng dụng trình kết xuất tính sẵn sàng cao (HAR) di động được tạo bằng khung "harry". |
harry-app-core/ |
Logic ứng dụng cốt lõi, tính năng quản lý trạng thái và các định nghĩa về mô hình giao diện người dùng cho ứng dụng tham chiếu "harry-app". |
harry-app-utils/ |
Các hàm tiện ích và mô-đun trợ giúp cho ứng dụng tham chiếu "harry-app". |
harry-control-api/ |
API kiểm soát cho ứng dụng tham chiếu "harry-app". |
harry-grpcio-server/ |
Máy chủ gRPC (dựa trên grpcio). This is only used when building the Android version with soong |
harry-tonic-server/ |
Máy chủ gRPC (dựa trên tonic). Thư viện này chỉ được dùng khi tạo phiên bản Linux bằng Cargo. |
harry-vehicle-data-grpc/ |
Mã gRPC dữ liệu xe, được tạo từ các tệp proto dữ liệu xe. |
i18n/harry-app-i18n |
Dịch vụ quốc tế hoá và bản địa hoá cho HAR. |
i18n/i18n-protos |
Xác định thông báo protobuf và quá trình tạo mã Rust cho dữ liệu i18n. |
libyuv-rs/ |
Các liên kết Rust cho libyuv. |
platforms/har-log |
Xác định các hoạt động triển khai nhật ký và theo dõi cho mọi nền tảng được hỗ trợ. |
platforms/har-looper-headless |
Một cách triển khai trình lặp độc lập với nền tảng để kết xuất không có giao diện người dùng. |
platforms/har-platform-android |
Cung cấp các phương thức triển khai dành riêng cho Android của các trừu tượng hoá nền tảng `har-platform-api`. |
platforms/har-platform-linux |
Cung cấp các hoạt động triển khai dành riêng cho Linux của các trừu tượng hoá nền tảng "har-platform-api". |
platforms/harry-app-platform-specific |
Cầu nối biên dịch có điều kiện cho harry-app, chọn cách triển khai chính xác dựa trên nền tảng đã chọn. |
safety-monitor |
Triển khai một Trình giám sát an toàn tham chiếu cho Android. |
screencap |
Tiện ích chụp ảnh màn hình để trích xuất ảnh chụp màn hình trực tiếp từ vùng đệm khung DRM |
vehicle-data-scripts |
Cấu trúc và logic để tạo chuỗi dữ liệu xe có kịch bản |
Dịch vụ
Thư mục này chứa các dịch vụ Android liên quan đến An toàn hiển thị.
| Thư mục | Mục đích |
|---|---|
ds-cvd-toolkit |
Một công cụ dòng lệnh cho Display Safety, cho phép khởi chạy nhiều thiết bị Cuttlefish. |
emulator |
Hỗ trợ trình mô phỏng cho Lớp phủ tài nguyên thời gian chạy |
har-grpc-services |
Chứa các định nghĩa proto được dùng trong quá trình triển khai tham chiếu để thiết lập các kênh liên lạc giữa ứng dụng HAR, DriverUI và các dịch vụ dữ liệu của xe. |
har-sdv-service* |
Cung cấp một Gói dịch vụ SDV dùng để cung cấp dịch vụ dữ liệu cho HAR bằng cách sử dụng mã do các tệp proto tạo |
har-tracing-common |
Dịch vụ theo dõi hiệu suất cho HAR |
harry-prebuilt/ |
Các thành phần Harry được tạo sẵn (tài sản, cấu hình, v.v.) |
ivi/ |
Các thành phần liên quan đến IVI (Đầu phát giải trí trong xe) trên Android |
libhar_graphics/ |
Thư viện đồ hoạ C++ cho các dịch vụ HAR. |
pdk/ |
Siêu dữ liệu của bản phát hành PDK |
product/ |
Cấu hình và thành phần dành riêng cho từng sản phẩm |
SdvCameraPreviewApp |
Ứng dụng xem trước camera cho SDV. |
vehicledata |
Triển khai trình xuất bản Đường hầm dữ liệu SDV cho dữ liệu xe bằng gRPC |
Utils
Thư mục này chứa các tiện ích chung để triển khai và kiểm thử tham chiếu.
| Thư mục | Mục đích |
|---|---|
asset-manager-cli |
Cung cấp giao diện dòng lệnh để tạo các gói tài sản. |
dcf-info/ |
Công cụ để trích xuất siêu dữ liệu từ DCF (Tài liệu Figma Compose được tuần tự hoá về thiết kế). |
figma-utils |
Cung cấp một trình bao bọc dòng lệnh cho "figma_import", để tìm nạp các tài liệu Figma được chuyển đổi tuần tự. |
gauge-test |
Ứng dụng được thiết kế để kiểm thử và minh hoạ các phần tử trên giao diện người dùng của mặt số và đồng hồ đo. |
gui-playground-app |
Môi trường hộp cát để kiểm thử các tính năng mới về giao diện người dùng và ảnh động. |
har-platform-tests |
Bộ kiểm thử tích hợp cho các hoạt động triển khai đặc điểm dành riêng cho từng nền tảng. |
har-rendering-parity |
Công cụ trực quan để xác minh tính tương đồng khi kết xuất giữa HAR, DesignCompose và Figma. |
harry-rpc-client |
Cung cấp giao diện dòng lệnh để gửi lệnh đến Harry thông qua RPC. |
human-readable-report-generator |
Tiện ích để xác minh trực quan các cấu phần phần mềm an toàn. |
ktx-utils |
Cung cấp các tiện ích để mã hoá và giải mã tệp kết cấu Khronos KTX 2.0. |
list-test-app |
Đóng vai trò là môi trường thử nghiệm và minh hoạ để quản lý danh sách trong HAR. |
transfer-localizations |
Tiện ích để chuyển đổi các tệp bản địa hoá XML của Android sang định dạng proto HAR. |
variable-density-analyzer |
Phân tích một tài liệu Figma và tính toán tỷ lệ giữa các nút với các biến thiết kế. |