Thông báo và tiện ích về cuộc trò chuyện

Android 11 hỗ trợ thêm tính năng tuỳ chỉnh hành vi và vị trí của Thông báo cuộc trò chuyện trên ngăn Thông báo theo mức độ ưu tiên và cảnh báo, cho phép đánh dấu Cuộc trò chuyện là Quan trọng và chạy bong bóng dành riêng cho cuộc trò chuyện trong không gian Cuộc trò chuyện.

Dựa trên các tính năng này của Android 11, Android 12 cung cấp hai tính năng mới về Cuộc trò chuyện:

  • Tính năng Cuộc trò chuyện gần đây trong phần Cài đặt cho phép người dùng tuỳ chỉnh hoạt động của thông báo cho các cuộc trò chuyện gần đây mà không cần chờ thông báo.

  • Tính năng tiện ích trò chuyện cho phép người dùng dễ dàng mở các cuộc trò chuyện trên màn hình chính, đồng thời cung cấp thông tin nhanh về các cuộc trò chuyện gần đây.

Tài liệu này mô tả các khía cạnh triển khai, tuỳ chỉnh và xác thực của thông báo cuộc trò chuyện và tiện ích.

Tổng quan về Thông báo về cuộc trò chuyện

Android 11 giới thiệu một nguyên hàm hệ thống mới, đó là Cuộc trò chuyện, được biểu thị bằng đối tượng lối tắt chia sẻ hiện có (được triển khai với Android 9).

Bạn có thể sử dụng nguyên hàm Cuộc trò chuyện như sau:

  • Để chia sẻ dữ liệu Cuộc trò chuyện giữa các ứng dụng trên hệ thống thông qua Trang chia sẻ nội dung (đã có trong Android 10).

  • Để điều khiển bong bóng trò chuyện(lối tắt trong Android 11). Xem Hình 1.

  • Để tham gia không gian Cuộc trò chuyện mới ở đầu ngăn Thông báo (được triển khai trong Android 11). Xem Hình 2.

  • Để tạo Tiện ích trò chuyện (triển khai trong Android 12).

    bong_ bóng chuyển đổi

    Hình 1: Thông báo được đưa ra dưới dạng bong bóng trò chuyện trên ngăn thông báo

    thông_báo_chuyển_đổi

    Hình 2: Không gian trò chuyện nằm ở đầu ngăn Thông báo

Ngoài việc liên kết với lối tắt đại diện cho cuộc trò chuyện, thông báo cũng sử dụng MessagingStyle để đưa tin nhắn gần đây nhất của cuộc trò chuyện vào không gian Cuộc trò chuyện.

Đối tác GMS bắt buộc phải triển khai những nội dung sau:

  • Một không gian Cuộc trò chuyện mới dưới dạng một phần riêng biệt ở đầu ngăn Thông báo.
  • Kiểu thông báo cho phép và hỗ trợ mẫu bong bóng dành riêng cho cuộc trò chuyện.

Những đối tác triển khai tính năng Cuộc trò chuyện cũng phải triển khai tính năng Cuộc trò chuyện quan trọng. Tuy nhiên, bạn có thể điều chỉnh cách triển khai Cuộc trò chuyện sao cho phù hợp với các khái niệm của OEM có bản chất tương tự. Nhìn chung, các đối tác có thể tự do điều chỉnh phần cuộc trò chuyện cho phù hợp với Giao diện người dùng hệ thống cụ thể của họ. Đối tác không phải sửa đổi hoặc triển khai HAL/trình điều khiển/mã nhân/tiện ích.

Xem cách triển khai tham chiếu sau đây trong các phần SystemUI và PeopleService trong AOSP:

frameworks/base/packages/SystemUI/src/com/android/systemui/people/
frameworks/base/core/java/android/app/people/
frameworks/base/services/people/java/com/android/server/people/

Xác nhận kết quả

Để đảm bảo rằng phiên bản tính năng của bạn hoạt động như dự kiến, hãy xác minh những thông tin sau:

  1. Các ứng dụng hỗ trợ đầy đủ Conversation API sẽ thấy thông báo của chúng trong phần mới và có thể tuỳ chỉnh các thông báo đó theo cuộc trò chuyện thay vì theo NotificationChannel chung.

  2. Bong bóng trò chuyện cụ thể đang hoạt động.

Để xác thực quá trình triển khai, hãy sử dụng các kiểm thử sau trong gói thông báo:

  • Kiểm thử CTS.

    cts/tests/app/src/android/app/cts/NotificationManagerTest.java
    
  • Các bài kiểm thử của CTS Verifier.

    cts/apps/CtsVerifier/src/com/android/cts/verifier/notifications/
    
    

Tổng quan về Tiện ích trò chuyện

Trong Android 12, tính năng Tiện ích trò chuyện được xây dựng dựa trên các nội dung biểu diễn cuộc trò chuyện đã tạo trong Android 11 (như mô tả phần trước) bằng cách cho phép ứng dụng cung cấp trạng thái cho những cuộc trò chuyện hiện trong Tiện ích trò chuyện.

conv_widgets

Hình 3: Các cuộc trò chuyện xuất hiện trong tiện ích trò chuyện

Tính năng Tiện ích trò chuyện trong Android 12 thúc đẩy kết nối bằng cách cho phép người dùng dễ dàng mở các cuộc trò chuyện trên màn hình chính. Các tiện ích này là các lối tắt nâng cao cho phép người dùng quay lại cuộc trò chuyện một cách hiệu quả trong khi cho thấy đoạn trích về trạng thái cuộc trò chuyện.

Đối tác phải triển khai những nội dung sau:

  1. Một tiện ích do SystemUI cung cấp.
  2. Quy trình thêm các tiện ích này từ màn hình chọn tiện ích.
  3. Hỗ trợ đổi kích thước tiện ích như sau:

Hãy lưu ý các phần phụ thuộc sau đây khi triển khai tiện ích trò chuyện:

  • Đối tác không phải sửa đổi hoặc triển khai mã HAL/trình điều khiển/hạt nhân.
  • API trạng thái (Status API) cho phép các ứng dụng thêm thông tin về trạng thái hoặc tình trạng rảnh/bận vào cuộc trò chuyện và tiện ích liên quan, được dùng để triển khai.
  • Quy trình này giống nhau đối với cả việc triển khai thiết bị mới và triển khai bản nâng cấp.
  • Tính năng Tiện ích trò chuyện phụ thuộc vào một tính năng mới ra mắt trong Android 12. Tính năng này lưu vào bộ nhớ đệm các cuộc trò chuyện thấy gần đây (ví dụ từ thông báo). Tính năng sau này cho phép mở rộng danh sách các cuộc trò chuyện mà người dùng có thể thêm vào màn hình chính.

Hãy xem cách triển khai tham chiếu sau đây trong các tệp SystemUI và Launcher3:

frameworks/base/packages/SystemUI/src/com/android/systemui/people/
frameworks/base/core/java/android/app/people/
frameworks/base/services/people/java/com/android/server/people/

Tuỳ chỉnh

Bạn không thể bật hoặc tắt tính năng Tiện ích trò chuyện. Tuy nhiên, đối tác có thể thay đổi bố cục của mẫu tiện ích, miễn là đáp ứng các yêu cầu của GMS.

Xác nhận kết quả

Để đảm bảo phiên bản tính năng của bạn hoạt động như dự kiến, hãy xác minh những điều sau:

  1. Khi nhấn và giữ Trình chạy, bạn có thể thêm một Tiện ích trò chuyện mới cho một Cuộc trò chuyện thông qua bộ chọn tiện ích. Xem hình 4 để biết giao diện người dùng của Bộ chọn tiện ích:

    widget_picker

    Hình 4: Giao diện người dùng của bộ chọn tiện ích để thêm một Tiện ích trò chuyện mới

  2. Khi gửi thông báo đến thiết bị từ Cuộc trò chuyện đã chọn, tiện ích sẽ được cập nhật để phản ánh các thông báo đó.

  3. Khi áp dụng trạng thái cho Cuộc trò chuyện đó bằng API ConversationStatus, tiện ích sẽ phản ánh các trạng thái đó.

  4. Người dùng có thể đổi kích thước tiện ích và tiện ích có thể thay đổi kích thước dựa trên Trình chạy hiện tại. Bố cục tiện ích của bạn phải hoạt động tốt với nhiều kích thước Trình chạy trên nhiều thiết bị và khi thay đổi kích thước tiện ích.

Để xác thực quá trình triển khai, hãy sử dụng các kiểm thử sau trong gói thông báo:

  • Kiểm thử CTS (PeopleManagerTest) cho các giao diện API.

    cts/tests/app/src/android/app/cts/NotificationManagerTest.java
    
  • Kiểm thử thủ công theo yêu cầu của GMS – Cuộc trò chuyện.