Hướng dẫn cho quá trình tích hợp

Trang này phác thảo cách tích hợp các ứng dụng chưa được nhóm. Các ứng dụng bao gồm Trình quay số, Phương tiện, Thư viện giao diện người dùng ô tô và SMS được coi là ứng dụng chưa được nhóm. Các ứng dụng này được tách nhóm khỏi nền tảng Android và bao gồm logic để nhận dữ liệu từ ứng dụng đồng hành trên điện thoại và UX ở phía ô tô, bao gồm cả cài đặt liên kết và đăng ký tính năng.

APK được xây dựng từ mã chưa được nhóm sẽ hoạt động với một số phiên bản của nền tảng.

Kiểm tra mã

Để kiểm tra mã chưa được nhóm:

  1. Chạy như sau:
    repo init -u https://android.googlesource.com/platform/manifest -b ub-automotive-master
    repo sync -cq -j4
    
  2. Để tìm hiểu thêm về cách làm việc với mã nguồn AOSP, hãy xem Khởi tạo ứng dụng khách Repo .

Xây dựng mã

Studio Android

Để xây dựng mã trong Android Studio:

  1. Trong Android Studio, nhập tệp xây dựng này:
    packages/apps/Car/libs/aaos-apps-gradle-project/build.gradle
  2. Đảm bảo đặt JDK Gradle trong Android Studio thành Phiên bản ít nhất là 11:


    Hình 1. Phiên bản 11.
  3. Xây dựng các APK mong muốn.

Dòng lệnh

Để xây dựng mã từ dòng lệnh:

  1. Đặt vị trí SDK Android theo một trong hai cách sau:
    • Tạo packages/apps/Car/libs/aaos-apps-gradle-project/local.properties rồi đặt thuộc tính sdk.dir mà nó chứa. Android Studio có thể tự động thực hiện việc này khi mở một dự án. Ví dụ: sử dụng sdk.dir=/Users/MY-USERNAME/Library/Android/sdk .

      hoặc
    • Đặt biến môi trường ANDROID_SDK_ROOT bằng đường dẫn đến SDK Android.
  2. Mở dấu nhắc lệnh hoặc cửa sổ shell.
  3. Đi tới packages/apps/Car/libs/aaos-apps-gradle-project .
  4. Chạy lệnh sau:
    ./gradlew assemble

Cấp độ API yêu cầu tối thiểu

Mỗi ứng dụng chưa được nhóm sẽ hoạt động trên nền tảng Android có phiên bản bằng hoặc lớn hơn minSdkVersion của ứng dụng đó. Bảng sau liệt kê phiên bản API tối thiểu được mỗi ứng dụng hỗ trợ:

Ứng dụng Cấp độ API tối thiểu
Lịch 29
Thư viện giao diện người dùng ô tô 29
Thiết bị đồng hành 29
Trình quay số 31
Phương tiện truyền thông 30
tin nhắn 30
Máy chủ AOSP 29

Tích hợp bản dựng sẵn vào hình ảnh hệ thống

Hình ảnh Android 13 trở lên

Mã chưa được nhóm sẽ bị xóa khỏi nền tảng Android 13. Do đó, việc thêm APK dựng sẵn vào bản dựng nền tảng có thể cần thiết cho:

  • Kiểm tra tuân thủ CDD
  • Cung cấp các ứng dụng đặc quyền

Điều này đạt được nhờ quy tắc android_app_import Soong:

android_app_import {
    name: "CarMediaApp",
    apk: "CarMediaApp.apk",
    privileged: true,
    certificate: "platform", // Media must be signed by the platform
    required: ["allowed_privapp_com.android.car.media"],
}

Android 12 trở xuống

Miễn là phiên bản nền tảng Android được ứng dụng hỗ trợ (xem bảng ở trên), APK có thể được thêm vào hình ảnh hệ thống đó. Tuy nhiên, hầu hết các ứng dụng chưa được nhóm đều có các phiên bản mã nguồn trước đó được đưa vào các nền tảng thấp hơn Android 13. Theo mặc định, Soong ưu tiên mã nguồn hơn mã nguồn dựng sẵn. Do đó, cần đặt cờ prefer thành true bên trong quy tắc android_app_import :

android_app_import {
    name: "CarDialerApp",
    apk: "CarDialerApp.apk",
    privileged: true,
    presigned: true, // Dialer can have its own signature
    required: ["allowed_privapp_com.android.car.dialer"],
    overrides: ["Dialer"],
    prefer: true, // The prebuilt replaces a source target with the same name,
    }

Ứng dụng được liệt kê theo loại chưa được nhóm

Ứng dụng Đặc quyền được tách nhóm Đã tách nhóm
(Không cần nằm trên phân vùng hệ thống)
Hệ thống đã ký Không có chữ ký hệ thống
Lịch X
Thiết bị đồng hành X
Trình quay số X
Máy chủ AOSP X
Phương tiện truyền thông X
tin nhắn X
Cập nhật phân phối OTA OTA hoặc Google Play OTA hoặc Google Play