Tuỳ chỉnh ứng dụng tham chiếu

Phần này trình bày chi tiết cách bạn có thể tuỳ chỉnh ứng dụng tham chiếu Control Center và giao diện người dùng.

Luồng người dùng và giao diện người dùng

Phần này mô tả quy trình người dùng và cách khởi chạy Trung tâm điều khiển.

Chạy Trung tâm điều khiển

Bạn có thể chạy Trung tâm điều khiển thông qua Trình chạy ứng dụng hoặc một biểu tượng trên thanh điều hướng Giao diện người dùng hệ thống. Biểu tượng này chỉ xuất hiện trong những bản dựng đã bật người dùng có thể nhìn thấy nền (để tìm hiểu thêm, hãy xem UserHandleAware).

Bạn có thể xem Trung tâm điều khiển bất cứ lúc nào. Trung tâm điều khiển bao gồm sự kết hợp giữa các cửa sổ mờ và nền trong suốt để có thể xuất hiện trên mọi ứng dụng khác, kể cả video và nội dung nghe nhìn đang phát. Trên Trang đích của ứng dụng:

  • Cách sắp xếp màn hình và sử dụng màn hình cục bộtừ xa.
  • Màn hình chứa nội dung nghe nhìn và các nút điều khiển nội dung nghe nhìn.
  • Cách mỗi màn hình giới thiệu chế độ xem chi tiết về các chế độ kiểm soát nội dung nghe nhìn (và nhiều chế độ khác).

Cách sắp xếp các màn hình thể hiện bố cục của các màn hình trong xe. Mỗi màn hình là một DevicePickerScreen. Để tuỳ chỉnh vị trí và kích thước của từng màn hình, hãy sử dụng lớp phủ tài nguyên thời gian chạy (RRO). Để tìm hiểu thêm, hãy xem bài viết Thay đổi giá trị của tài nguyên ứng dụng trong thời gian chạy.

Đối với mỗi màn hình mà Trung tâm điều khiển đang mở, một màn hình khác có đường viền được đánh dấu nổi bật sẽ xuất hiện. Đây là màn hình cục bộ, màn hình đang được sử dụng.

Mọi màn hình khác đều là màn hình từ xa để biểu thị một màn hình khác trong ô tô mà bạn có thể xác định dựa trên cách bố trí các màn hình trong Mảnh. Để tính tổng số vùng dành cho người ngồi được định cấu hình trong xe, hãy sử dụng CarOccupantZoneManager#getAllOccupantZones.

Mỗi màn hình xác định một thuộc tính tuỳ chỉnh controlcenter:occupantZoneId để liên kết dữ liệu với vùng người dùng tương ứng. Khi một ứng dụng nội dung nghe nhìn được phát trên một màn hình cụ thể, màn hình tương ứng sẽ hiển thị ảnh bìa nội dung nghe nhìn. Nút Phát (hoặc Tạm dừng) sẽ xuất hiện bên dưới màn hình.

Nếu ứng dụng nội dung nghe nhìn đang hoạt động là một tác vụ hiển thị (được mở ở chế độ nền của Trung tâm điều khiển), thì nút Chia sẻ nằm bên cạnh nút Phát sẽ được bật để mở trang Phản chiếu. Chia sẻ cho phép bạn chia sẻ màn hình ứng dụng đa phương tiện và hữu ích nhất đối với các ứng dụng đa phương tiện có video.

Thành phần trên màn hình

Khi bạn nhấn vào một màn hình, chế độ xem chi tiết của nội dung nghe nhìn đang phát trên màn hình sẽ xuất hiện. Đây được gọi là màn hình Chi tiết. Khung hiển thị này cho thấy siêu dữ liệu của nội dung nghe nhìn, chẳng hạn như tiêu đề, tiến trình phát và nghệ sĩ. Các nút này giúp bạn kiểm soát thêm vùng người ngồi trong xe.

  • Đầu ra âm thanh cho biết đầu ra âm thanh nào đang phát nội dung nghe nhìn, chẳng hạn như loa trong xe hoặc tai nghe. Đầu ra âm thanh sẽ mở một hộp thoại để thay đổi đầu ra âm thanh và âm lượng nội dung nghe nhìn.

  • Display Input Lock (Khoá thiết bị đầu vào) sẽ khoá thiết bị đầu vào trên màn hình. Bạn không thể áp dụng thao tác này cho màn hình của người lái xe.

  • Display Power (Nguồn màn hình) sẽ tắt nguồn màn hình. Bạn không thể áp dụng thao tác này cho màn hình của người lái xe.

Chế độ xem Chi tiết hiển thị nút Chia sẻ để nhấn vào khi nội dung nghe nhìn là một tác vụ hiển thị phía sau ứng dụng Trung tâm điều khiển. Nút Chia sẻ sẽ mở trang Phản chiếu:

Hành trình phản chiếu và cùng xem giữa Người gửi (trên cùng) và Người nhận (dưới cùng)
Hình 2. Trang phản chiếu và hành trình cùng xem giữa Người gửi (trên cùng) và Người nhận (dưới cùng).

Bắt đầu phiên cùng xem

Trang phản chiếu tương tự như Trang đích bằng cách sử dụng RRO.

Để thêm một màn hình vào chế độ xem cùng nhau, bạn nhấn vào màn hình đó rồi nhấn vào Xong.

Thao tác này sẽ mở một Mirroring Activity lưu trữ ứng dụng được chia sẻ và cung cấp các chế độ điều khiển tạm thời, nổi để rời khỏi phiên cùng xem hoặc truy cập lại vào trang Phản chiếu để thêm hoặc xoá người tham gia.

Hoạt động phản chiếu hiển thị một ứng dụng dùng chung có các chế độ điều khiển nổi để quản lý phiên cùng xem.
Hình 3. Hoạt động phản chiếu với các chế độ kiểm soát nổi tạm thời.

Tóm tắt

Dưới đây là thông tin tóm tắt về các trang trong Trung tâm kiểm soát.

Sơ đồ quy trình cho thấy các trang và hiệu ứng chuyển đổi khác nhau trong ứng dụng Trung tâm điều khiển.
Hình 4. Các trang của Trung tâm kiểm soát.

Nguyên tắc tuỳ chỉnh

Trung tâm điều khiển sử dụng thư viện Giao diện người dùng ô tô để cho phép bạn tuỳ chỉnh và cung cấp một cấu trúc và chủ đề cơ bản có thể được áp dụng nguyên trạng hoặc sửa đổi theo những hạn chế này.

Tuỳ chỉnh Mô tả
SHOULD

Điều chỉnh giao diện và kiểu tổng thể thông qua RRO, chẳng hạn như:

  • Bảng màu
  • Định cỡ
  • Giao diện văn bản
  • Giao diện hộp thoại
  • Đối tượng có thể vẽ
  • Giá trị cấu hình
THÁNG 5 Sửa đổi cấu trúc giao diện người dùng cấp cao của Trung tâm điều khiển.

Trung tâm điều khiển thuộc một bộ ứng dụng hệ thống, bao gồm cả ứng dụng Đa phương tiện, Trung tâm thông báo và Trình chạy ứng dụng. Các ứng dụng này dùng chung các kiểu và thành phần được xác định ở nhiều cấp trong cấu trúc AOSP:

framework/base/core
Tất cả kiểu cơ bản của Android đều được xác định tại đây. Cụ thể, tất cả giao diện ứng dụng hệ thống đều dựa trên Theme.DeviceDefault, giao diện được thiết kế để các OEM sử dụng nhằm tuỳ chỉnh giao diện mặc định của thiết bị.

packages/services/Car/car_product/overlay:
Thư mục này chứa các chế độ ghi đè đối với Theme.DeviceDefault được dùng để tạo giao diện AOSP của Android Automotive. Các OEM có thể chọn loại trừ lớp phủ này và sử dụng lớp phủ của riêng họ.

packages/apps/Car/libs/car-ui-lib:
Thư viện này xác định các thành phần và tài nguyên AAOS thường dùng cho các ứng dụng hệ thống và ứng dụng không đi kèm được thiết kế để tuỳ chỉnh. Để biết thông tin chi tiết, hãy xem Hướng dẫn tích hợp Thư viện giao diện người dùng trên ô tô.

packages/apps/Car/libs/car-apps-common:
Các màu sắc và kiểu định dạng phổ biến được chia sẻ giữa các ứng dụng hệ thống do AOSP cung cấp. Bạn có thể sử dụng lớp phủ để tuỳ chỉnh các phần tử này (tương tự như packages/services/Car/car_product/overlay).

packages/apps/Car/MultiDisplay/ControlCenter:
Tất cả ứng dụng hệ thống đều có một giao diện, mở rộng từ Theme.CarUi và được xác định trong car-ui-lib. ControlCenterActivity sử dụng Theme.Transparent tuỳ chỉnh, mở rộng Theme.CarUi.

Để hỗ trợ một quy trình (chẳng hạn như cùng xem cần có nhiệm vụ phản chiếu hiển thị), Trung tâm điều khiển sử dụng kết hợp các cửa sổ mờ và nền trong suốt không gửi ứng dụng xuống nền hoặc gửi Lifecycle events.

<style name="Theme.Transparent" parent="@style/Theme.CarUi.NoToolbar">
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:windowBackground">@color/transparent</item>
</style>