Tích hợp các ứng dụng không theo gói

Các ứng dụng bao gồm Dialer, Nội dung nghe nhìn, Thư viện giao diện người dùng ô tô và SMS được coi là ứng dụng không đi kèm (tức là không đi kèm với nền tảng Android). Các ứng dụng như vậy bao gồm logic để nhận dữ liệu từ ứng dụng đồng hành trên điện thoại và trải nghiệm người dùng trên ô tô, bao gồm cả chế độ cài đặt cho việc liên kết và đăng ký tính năng. Các tệp APK được tạo từ mã không đi kèm hoạt động với một số phiên bản của nền tảng.

Hãy xem đoạn mã vừa tải

Để xem mã không đi kèm, hãy chạy lệnh sau:

repo init -u https://android.googlesource.com/platform/manifest -b ub-automotive-master
repo sync -cq -j4

Để tìm hiểu thêm về cách làm việc với mã nguồn AOSP, hãy xem phần Khởi chạy ứng dụng Repo client.

Tạo mã

Bạn có thể tạo mã bằng Android Studio hoặc qua dòng lệnh.

Android Studio

Cách tạo mã trong Android Studio:

  1. Trong Android Studio, hãy nhập tệp bản dựng sau:

    packages/apps/Car/libs/aaos-apps-gradle-project/build.gradle
    
  2. Đảm bảo JDK Gradle được đặt thành Phiên bản 11 trở lên:

    Phiên bản 11

    Hình 1. Đặt JDK Gradle thành Phiên bản 11 trong Android Studio.

Dòng lệnh

Cách tạo mã qua dòng lệnh:

  1. Đặt vị trí SDK Android bằng một trong các phương thức sau:

    • Tạo packages/apps/Car/libs/aaos-apps-gradle-project/local.properties, sau đó đặt thuộc tính sdk.dir mà tệp này chứa. Android Studio có thể tự động thực hiện việc này khi mở một dự án. Ví dụ: hãy 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ở giao diện nhập dòng lệnh hoặc cửa sổ shell.

  3. Chuyển đến packages/apps/Car/libs/aaos-apps-gradle-project.

  4. Chạy lệnh sau:

    ./gradlew assemble

Cấp độ API tối thiểu bắt buộc

Mỗi ứng dụng không đi kèm hoạt động trên các nền tảng Android có phiên bản bằng hoặc lớn hơn phiên bản minSdkVersion. Bảng sau đây liệt kê phiên bản API tối thiểu mà 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
CompanionDevice 29
Dialer 31
Nội dung nghe nhìn 30
Messenger (SMS) 30
Máy chủ AOSP 29
Khoá ứng dụng 34

Tích hợp một ứng dụng tạo sẵn vào hình ảnh hệ thống

Nếu phiên bản nền tảng Android được ứng dụng hỗ trợ (xem bảng trong phần trước), bạn có thể thêm tệp APK vào hình ảnh hệ thống. Tuy nhiên, các bước tích hợp sẽ khác nhau giữa các phiên bản nền tảng Android.

Android 13 trở lên

Android 13 trở lên không bao gồm mã nguồn cho các ứng dụng không đi kèm, nhưng bạn có thể đưa tệp APK tạo sẵn vào bản dựng nền tảng cho các trường hợp sử dụng như kiểm thử tuân thủ CDD hoặc cung cấp ứng dụng đặc quyền. Để chỉ định tệp APK, hãy sử dụng quy tắc Soong android_app_import, như trong ví dụ sau:

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

Android 12 trở xuống bao gồm mã nguồn cho các ứng dụng không đi kèm, nhưng bạn vẫn có thể chỉ định một tệp APK tạo sẵn để đưa vào. Vì giá trị mặc định của Soong là ưu tiên mã nguồn hơn ứng dụng tạo sẵn, nên bạn cần đặt cờ prefer thành true bên trong quy tắc android_app_import, như trong ví dụ sau:

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
}

Thông tin chi tiết về ứng dụng không đi kèm

Ứng dụng Ứng dụng không đi kèm có đặc quyền
hệ thống đã ký
Ứng dụng không đi kèm có đặc quyền
không phải đã ký hệ thống đã ký
Ứng dụng không đi kèm
không cần nằm trong phân vùng hệ thống
Phân phối bản cập nhật OTA OTA hoặc Google Play OTA hoặc Google Play
Máy chủ AOSP X
Lịch X
CompanionDeviceSupport X
Trung tâm điều khiển (Nhiều màn hình) X
Dialer X
Nội dung nghe nhìn X
Messenger (SMS) X
Khoá ứng dụng nhạy cảm X