Vai trò trên Android

Vai trò là một tên riêng biệt trong hệ thống, được liên kết với một số quyền và đặc quyền nhất định. Ứng dụng có thể yêu cầu giữ một số vai trò nhất định thông qua API Android, cụ thể là bằng cách gọi các phương thức trong lớp RoleManager.

Hãy xem danh sách sau đây để biết các vai trò hiện có và yêu cầu tương ứng:

Vai trò Yêu cầu
ASSISTANT Ít nhất một trong các giá trị sau:
  • Ứng dụng có một hoạt động thực hiện các hành động hỗ trợ, dựa trên thông tin về bối cảnh của người dùng khi họ yêu cầu hỗ trợ (ví dụ: tên gói cho ứng dụng trên nền trước hiện tại và thông tin theo bối cảnh của ứng dụng đó).
  • Ứng dụng có dịch vụ tương tác bằng giọng nói luôn bật được kiểm soát bằng quyền android.permission.BIND_VOICE_INTERACTION. Dịch vụ này có thể nhận dạng giọng nói và lưu trữ các phiên tương tác bằng giọng nói đang hoạt động. Ngoài ra, ứng dụng có một cờ rõ ràng cho biết dịch vụ có khả năng xử lý hành động hỗ trợ.
BROWSER Tất cả:
  • Ứng dụng có một hoạt động mà các ứng dụng khác có thể gọi thông qua yêu cầu ý định ngầm ẩn, hiển thị một trang web tương ứng với địa chỉ http://.
  • Ứng dụng cần xử lý việc điều hướng giữa các đường liên kết. Tức là nếu người dùng đang xem một trang web và nhấp vào một địa chỉ http:// trong văn bản, thì ứng dụng cần có thể hiển thị nội dung tương ứng với đường liên kết đã chọn mà không cần người dùng can thiệp thêm.
  • Ứng dụng cần có khả năng cung cấp thông tin vị trí địa lý hiện tại của thiết bị cho các trang web khi được yêu cầu và người dùng phê duyệt yêu cầu đó.
DIALER Tất cả:
  • Ứng dụng có một hoạt động mà các ứng dụng khác có thể gọi thông qua yêu cầu ý định ngầm ẩn, cung cấp giao diện người dùng trong cuộc gọi khi thiết bị đang trong cuộc gọi.
  • Ứng dụng có thể xử lý ý định cuộc gọi đến, hiển thị thông tin liên quan đến cuộc gọi (ví dụ: số điện thoại của người gọi) cho người dùng và cho phép người dùng trả lời hoặc từ chối cuộc gọi.
  • Ứng dụng cung cấp cho người dùng một phương tiện để bắt đầu cuộc gọi và xem nhật ký cuộc gọi trên thiết bị của họ.
SMS Tất cả:
  • Ứng dụng đáp ứng tất cả yêu cầu đối với ứng dụng SMS.
  • Ứng dụng này có một hoạt động mà các ứng dụng khác có thể gọi thông qua yêu cầu ý định ngầm ẩn, có thể gửi tin nhắn đến một số điện thoại.
  • Ứng dụng có một dịch vụ được kiểm soát bằng quyền android.permission.SEND_RESPOND_VIA_MESSAGE và có thể gọi bằng ý định ngầm ẩn. Dịch vụ này có thể gửi tin nhắn nhận được từ ứng dụng Điện thoại khi người dùng chọn trả lời bằng tin nhắn trong cuộc gọi đến. Ứng dụng có thể gửi tin nhắn thông qua hệ thống nhắn tin của riêng mình.
  • Ứng dụng này có hai bộ nhận tín hiệu truyền tin, một bộ nhận tín hiệu được kiểm soát bằng quyền android.permission.BROADCAST_SMS và một bộ nhận tín hiệu được kiểm soát bằng quyền android.permission.BROADCAST_WAP_PUSH. Hai bộ nhận tín hiệu này có thể lần lượt nghe tin nhắn SMS và MMS dạng văn bản được gửi đến thiết bị. Sau đó, ứng dụng sẽ chịu trách nhiệm ghi tin nhắn vào nhà cung cấp dịch vụ SMS và thông báo cho người dùng.
EMERGENCY Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Ứng dụng có một hoạt động trình bày thông tin khẩn cấp của người dùng. Bất kỳ ai cũng có thể chuyển đến màn hình này thông qua nút Khẩn cấp trên hoạt động Trình quay số khẩn cấp.
HOME Ứng dụng có một hoạt động có thể chạy màn hình chính khi người dùng nhấn vào nút màn hình chính. Màn hình chính phải hiển thị các biểu tượng ứng dụng, tiện ích và hỗ trợ thao tác điều hướng dựa trên nút hoặc cử chỉ (ví dụ: vuốt lên để xem tất cả ứng dụng).
CALL_REDIRECTION Ứng dụng có một dịch vụ được kiểm soát bằng quyền android.permission.BIND_CALL_REDIRECTION_SERVICE mà khung viễn thông có thể liên kết. Dịch vụ này nhận số điện thoại gọi đi từ khung viễn thông và thực hiện một trong các hành động sau:
  • Cho phép thực hiện cuộc gọi như bình thường.
  • Thay đổi số gọi đi để định tuyến qua một số proxy.
  • Huỷ cuộc gọi.
CALL_SCREENING Ứng dụng có một dịch vụ được kiểm soát bằng quyền android.permission.BIND_SCREENING_SERVICE, thực hiện hai chức năng:
  • Chặn và sàng lọc cuộc gọi: Dịch vụ có thể chọn cuộc gọi nào sẽ được gửi đến ứng dụng trình quay số trên điện thoại (và có thể đổ chuông, tuỳ thuộc vào chế độ Không làm phiền hoặc âm lượng) và cuộc gọi nào sẽ được gửi đến thư thoại mà không phát ra âm thanh.
  • Nhận dạng cuộc gọi: Dịch vụ có thể nhận dạng và hiển thị thông tin về cuộc gọi thông qua giao diện người dùng.
SUPERVISION Tất cả:
  • Ứng dụng là một ứng dụng hệ thống hoặc một dịch vụ được cài đặt sẵn.
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Mục đích duy nhất của ứng dụng là cho phép cha mẹ hoặc người giám hộ hợp pháp của người dùng kiểm soát để quản lý thiết bị.
  • Ứng dụng phải cung cấp một thành phần giao diện người dùng trên thiết bị mà người dùng được uỷ quyền có thể sử dụng để tắt vai trò giám sát.
SYSTEM_AUTOMOTIVE_CLUSTER Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống trên Automotive.
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Ứng dụng này cung cấp chức năng cho màn hình cụm đồng hồ trên ô tô (thường nằm cạnh vô lăng) để người dùng trả lời cuộc gọi điện thoại, cũng như truy cập vào danh bạ và nhật ký cuộc gọi.
COMPANION_DEVICE_WATCH Ứng dụng có thể gửi yêu cầu liên kết và quản lý thiết bị đồng hồ (bằng cách sử dụng API do lớp CompanionDeviceManager cung cấp). Khi đồng hồ và ứng dụng được kết nối thông qua giao diện người dùng do ứng dụng cung cấp, người dùng có thể quản lý đồng hồ của họ từ ứng dụng, bao gồm cả việc đồng bộ hoá danh bạ và lịch, cũng như quản lý thông báo và cuộc gọi điện thoại.
SYSTEM_AUTOMOTIVE_PROJECTION Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Ứng dụng này cho phép chiếu màn hình điện thoại lên màn hình trong xe. Ứng dụng này cho phép người lái xe truy cập và điều khiển các ứng dụng trên điện thoại Android, bao gồm cả nhạc, tính năng chỉ đường, cuộc gọi điện thoại và tìm kiếm, bằng cách sử dụng các cơ chế nhập trên xe, bao gồm cả thao tác chạm, điều khiển vô lăng và lệnh thoại.
SYSTEM_SHELL Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống được chỉ định UID Process.SHELL_UID.
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Ứng dụng này cung cấp một giao diện hoạt động ở cấp dòng lệnh để người dùng có thể tương tác với Hệ điều hành Android. Ví dụ: hiển thị nội dung của một thư mục hoặc chạy ứng dụng. Ứng dụng có thể thực thi các lệnh shell theo phương thức lập trình (với điều kiện là đã được cấp các quyền cần thiết) hoặc từ công cụ ADB.
SYSTEM_CONTACTS Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Ứng dụng cung cấp giao diện người dùng để người dùng quản lý danh bạ của họ (ví dụ: xem, chia sẻ, thêm, xoá hoặc tìm kiếm người liên hệ). Ứng dụng này cập nhật Trình cung cấp danh bạ khi người dùng cập nhật danh bạ của họ trong ứng dụng. Người dùng cũng có thể gọi điện, gửi email hoặc gửi tin nhắn văn bản cho người liên hệ của họ trong ứng dụng.
SYSTEM_SPEECH_RECOGNIZER Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Ứng dụng này cung cấp một dịch vụ có thể nhận dạng lời nói.
  • Khi ứng dụng nhận được luồng micrô trực tiếp từ một ứng dụng khác để nhận dạng lời nói, ứng dụng sẽ ghi nhận chính xác việc sử dụng micrô cho ứng dụng gọi điện và cập nhật số liệu thống kê về hoạt động của ứng dụng cho phù hợp.
SYSTEM_WIFI_COEX_MANAGER Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Ứng dụng có một dịch vụ tự động thiết lập danh sách các kênh Wi-Fi mà thiết bị nên tránh sử dụng do bị nhiễu sóng di động.
SYSTEM_WELLBEING Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Ứng dụng phải cung cấp cho người dùng khả năng giảm bớt sự phân tâm và cung cấp cho người dùng số liệu thống kê về cách họ sử dụng thiết bị (ví dụ: thời gian sử dụng thiết bị mỗi tuần).
SYSTEM_TELEVISION_NOTIFICATION_HANDLER Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Ứng dụng phải hiển thị thông báo quan trọng cho người dùng trên thiết bị TV. Ứng dụng cũng phải hiển thị các thông báo đang hoạt động khi ý định android.app.action.TOGGLE_NOTIFICATION_HANDLER_PANEL được gửi (từ SystemUI).
SYSTEM_COMPANION_DEVICE_PROVIDER Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Ứng dụng phải có khả năng phát hiện các thiết bị ngoại vi ở gần. Ứng dụng này phải có giao diện người dùng để người dùng có thể xác nhận rằng một thiết bị ngoại vi nhất định phải được liên kết và quản lý bởi một ứng dụng. Khi người dùng xác nhận, ứng dụng quản lý sẽ cấp cho ứng dụng liên kết quyền truy cập vào thiết bị ngoại vi (ví dụ: tên, địa chỉ, lớp và trạng thái liên kết) và ứng dụng này có thể bắt đầu quá trình liên kết.
SYSTEM_DOCUMENT_MANAGER Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Ứng dụng này có một hoạt động cho phép người dùng truy cập vào các tài liệu hiện có và tạo tài liệu mới trên thiết bị.
  • Ứng dụng phải đáp ứng tất cả yêu cầu nêu trong phần 2.2.3 của CDD Android. Phần mềm trong tiêu đề [3.2.3.1/H-0-1].
SYSTEM_ACTIVITY_RECOGNIZER Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Ứng dụng có một dịch vụ được kiểm soát bằng android.permission.ACTIVITY_RECOGNITION, có thể thực hiện nhận dạng hoạt động (ví dụ: chạy hoặc đạp xe).
SYSTEM_UI Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Ứng dụng có giao diện để người dùng tương tác với điện thoại. Ví dụ: màn hình chính của điện thoại, trình đơn điều hướng, ứng dụng gần đây, trình đơn cài đặt nhanh, thanh thông báo, màn hình khoá, nút điều chỉnh âm lượng.
SYSTEM_TELEVISION_REMOTE_SERVICE Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống trên Android TV.
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Ứng dụng này có một dịch vụ có thể giao tiếp với thiết bị HID của điều khiển TV (ví dụ: qua BLE), chèn sự kiện (ví dụ: lượt nhấp vào nút) và gửi dữ liệu khác (ví dụ: luồng âm thanh từ micrô tích hợp trong điều khiển từ xa) vào nền tảng.
SYSTEM_UI_INTELLIGENCE Tất cả:
  • Là một dịch vụ được cài đặt sẵn, cung cấp bộ xử lý thông minh trên thiết bị cho các tính năng giao diện người dùng hệ thống (ví dụ: dự đoán và hiển thị các ứng dụng tiếp theo cho người dùng) thông qua các API khung (API công khai hoặc API hệ thống).
  • Dịch vụ phải đáp ứng tất cả yêu cầu nêu trong phần 9.8.6 Content Capture (9.8.6 Ghi lại nội dung) của CDD Android.
  • Dịch vụ không thể có quyền android.permission.INTERNET. Thay vào đó, ứng dụng phải truy cập Internet thông qua các API được xác định rõ ràng trong một dự án nguồn mở.
  • Dịch vụ này không thể liên kết với các ứng dụng, ngoại trừ các ứng dụng hệ thống sau: Bluetooth, Danh bạ, Nội dung nghe nhìn, Điện thoại, SystemUI và các thành phần cung cấp API Internet. Mỗi liên kết được phép phải được thiết lập rõ ràng thông qua cấu hình <allow-association> trong cấu hình hệ thống.
  • Dịch vụ không thể chia sẻ dữ liệu với các ứng dụng trừ phi có hành động trực tiếp của người dùng (ví dụ: người dùng nhấn rõ ràng vào một nút mỗi khi dữ liệu được chia sẻ).
SYSTEM_AMBIENT_AUDIO_INTELLIGENCE Tất cả:
  • Giống với các điều kiện cho SYSTEM_UI_INTELLIGENCE, ngoại trừ việc dịch vụ cài đặt sẵn cung cấp một bộ xử lý thông minh trên thiết bị cho âm thanh xung quanh (ví dụ: nhận dạng bài hát đang phát gần thiết bị).
SYSTEM_AUDIO_INTELLIGENCE Tất cả:
  • Giống với các điều kiện cho SYSTEM_UI_INTELLIGENCE, ngoại trừ việc dịch vụ được cài đặt sẵn cung cấp một bộ xử lý thông minh trên thiết bị cho âm thanh (ví dụ: phụ đề cho video, podcast, cuộc gọi điện thoại, cuộc gọi video và tin nhắn thoại).
SYSTEM_NOTIFICATION_INTELLIGENCE Tất cả:
  • Giống hệt với các điều kiện cho SYSTEM_UI_INTELLIGENCE, ngoại trừ việc dịch vụ được cài đặt sẵn cung cấp một bộ xử lý thông minh trên thiết bị cho thông báo (ví dụ: đề xuất câu trả lời và hành động cho thông báo tin nhắn).
SYSTEM_TEXT_INTELLIGENCE Tất cả:
  • Giống với các điều kiện cho SYSTEM_UI_INTELLIGENCE, ngoại trừ việc dịch vụ được cài đặt sẵn cung cấp một bộ xử lý thông minh trên thiết bị cho văn bản (ví dụ: cung cấp tính năng dịch trực tiếp hoặc tự động điền).
SYSTEM_VISUAL_INTELLIGENCE Tất cả:
  • Giống với các điều kiện cho SYSTEM_UI_INTELLIGENCE, ngoại trừ việc dịch vụ cài đặt sẵn cung cấp một bộ xử lý thông minh trên thiết bị cho các tính năng hình ảnh liên quan đến việc phân tích dữ liệu camera. Ví dụ: duy trì màn hình điện thoại khi người dùng đang nhìn vào màn hình hoặc xác định hướng màn hình lý tưởng dựa trên hướng khuôn mặt của người dùng từ camera trước trên thiết bị.
COMPANION_DEVICE_APP_STREAMING Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Các trường hợp sử dụng được phép:
    • Phát trực tuyến, truyền hoặc phản chiếu các ứng dụng cho phép phát trực tuyến, truyền hoặc phản chiếu từ thiết bị chạy Android (chẳng hạn như điện thoại di động hoặc máy tính bảng) sang máy tính hoặc máy tính xách tay.
  • Khi thiết lập kết nối ban đầu từ thiết bị A đến thiết bị B:
    • Quá trình ghép nối PHẢI được cho phép bằng mã dùng một lần hiển thị trên thiết bị nguồn (A) và được nhập trên thiết bị thông minh (B). Ngoài ra, nếu cả hai thiết bị đều có ít nhất một tài khoản trùng khớp trong AccountManager của Android, thì người dùng CÓ THỂ xác nhận việc ghép nối bằng cách nhập mật khẩu của tài khoản trên thiết bị thông minh (B).
    • Cả hai thiết bị cần ở gần 1 nhau trong quá trình ghép nối.
  • Cả hai thiết bị cần ở gần 1 nhau trong khi truyền trực tuyến.
  • Ứng dụng có thể tạo và quản lý các kênh liên lạc với thiết bị được kết nối để các thiết bị có thể trao đổi dữ liệu. Ứng dụng và các thiết bị được kết nối PHẢI xác thực thành công lẫn nhau (ví dụ: bằng cách chứng minh rằng chúng biết các khoá dùng chung) để thiết lập các kênh liên lạc này. Các kênh liên lạc PHẢI được bảo vệ bằng phương thức mã hoá hai đầu.
  • Ứng dụng có thể gửi thông báo từ thiết bị nguồn (A) đến thiết bị thông minh (B) để cho phép người dùng thực hiện hành động đối với thông báo trên thiết bị thông minh (B).
  • Có thể truyền trực tuyến siêu dữ liệu cần thiết cho việc truyền phát ứng dụng đến thiết bị thông minh (B), chẳng hạn như danh sách ứng dụng có trên thiết bị nguồn (A).
  • Có thể truyền trực tuyến ứng dụng từ thiết bị nguồn (A) sang thiết bị đã kết nối (B) sau khi người dùng cho biết họ muốn làm như vậy và đã đồng ý rõ ràng (trên thiết bị nguồn (A) hoặc trên thiết bị đã kết nối (B)).
  • Có thể phát lại (chèn) các sự kiện xảy ra trên một ứng dụng được truyền trực tuyến trên thiết bị thông minh đã kết nối (B) trở lại thiết bị nguồn (A). Ví dụ: phát lại một sự kiện chạm trên thiết bị thông minh được kết nối (B) tại cùng toạ độ như trên thiết bị nguồn (A) hoặc phát lại một sự kiện đầu vào xảy ra trên thiết bị thông minh được kết nối (B) có cùng ngữ nghĩa đầu vào như trên thiết bị nguồn (A).
  • Ứng dụng có thể thay thế luồng micrô của thiết bị nguồn bằng luồng micrô của thiết bị thông minh trong khi ứng dụng phát trực tuyến đang sử dụng micrô.
  • Ứng dụng thu âm thanh từ thiết bị nguồn (A) và truyền trực tuyến âm thanh đó đến thiết bị thông minh (B).
  • Bạn NÊN chặn quyền truy cập vào các ứng dụng cài đặt và cửa hàng ứng dụng trên thiết bị thông minh được kết nối (B).
  • Kể từ Android 16, bạn PHẢI ngăn chặn việc chụp ảnh màn hình và đọc nội dung nhạy cảm trên màn hình, chẳng hạn như cửa sổ và nền tảng bảo mật, trên thiết bị được kết nối (B).
  • PHẢI xác minh tính toàn vẹn của bản dựng hệ điều hành trên thiết bị thông minh (ví dụ: bằng cách sử dụng tính năng chứng thực thiết bị như trong VerifiedBootState).
  • Chỉ truyền trực tuyến các ứng dụng phát trực tuyến chỉ có một tài khoản khớp trong sổ đăng ký tài khoản trên thiết bị (ví dụ: lớp AccountManager trên Android) trên cả hai thiết bị. Nếu không, việc truyền trực tuyến PHẢI được uỷ quyền bằng mã một lần hiển thị trên thiết bị nguồn (A) và được nhập trên thiết bị thông minh (B). Xin lưu ý rằng trong trường hợp thiết bị hỗ trợ nhiều người dùng (chứ không phải nhiều tài khoản) có cùng một cơ chế tách biệt dữ liệu đáng tin cậy như trong Android nhiều người dùng, thì một người dùng được tính là một thiết bị.
  • PHẢI dừng truyền trực tuyến và ngắt kết nối khỏi thiết bị thông minh (B) ngay lập tức nếu quá trình xác thực tài khoản trên thiết bị thông minh (B) hết hạn hoặc bị thu hồi.
  • PHẢI dừng truyền trực tuyến và ngắt kết nối khỏi thiết bị thông minh (B) khi thiết bị thông minh (B) (nơi hiển thị nội dung) hết thời gian chờ ở trạng thái rảnh. CÓ THỂ giữ cho màn hình của thiết bị thông minh luôn bật trong các trường hợp chẳng hạn như WakeLock, giữ cho màn hình của thiết bị Android luôn bật. BẮT BUỘC phải có thời gian chờ không hoạt động. Nếu thiết bị thông minh được kết nối (B) không có thời gian chờ khi không hoạt động, thì bạn PHẢI sử dụng thời gian chờ khi không hoạt động tối đa là 5 phút.
  • Nếu thiết bị nguồn (A) sử dụng Yếu tố nhận biết màn hình khoá (LSKF), thì khi màn hình bị khoá, ứng dụng KHÔNG ĐƯỢC truyền trực tuyến ứng dụng đến thiết bị đã kết nối (B), trừ phi thiết bị đã kết nối (B) có màn hình khoá và đã được mở khoá.
  • Nếu thiết bị nguồn (A) do quản trị viên quản lý, thì ứng dụng PHẢI tuân thủ các chính sách do quản trị viên đặt ra về việc bật hoặc tắt tính năng truyền trực tuyến đến các thiết bị ở gần (ví dụ: sử dụng chế độ cài đặt DevicePolicyManager trong Android).
  • PHẢI đảm bảo rằng màn hình từ xa và tất cả nguồn sự kiện đầu vào từ xa đều thuộc cùng một thiết bị logic (ví dụ: màn hình từ xa và bàn phím được kết nối) theo quan điểm của người dùng và các sự kiện được định tuyến tương ứng.
  • Người dùng PHẢI có thể kết thúc quá trình truyền trực tuyến từ thiết bị nguồn (A), ví dụ: bằng cách sử dụng nút trong thông báo liên tục. Hành vi này được kiểm soát bằng màn hình khoá, nếu thiết bị nguồn (A) đã đặt phương thức khoá màn hình. PHẢI hiển thị chức năng cố định này trên thiết bị nguồn (A). Chức năng này phải luôn hiển thị và nằm ở phần đầu trang.
  • PHẢI cho thấy một chức năng trên thiết bị nguồn (A) khi quá trình truyền trực tuyến đang diễn ra trên một thiết bị khác, chẳng hạn như biểu tượng trên thanh trạng thái hoặc thông báo liên tục.
DEVICE_POLICY_MANAGEMENT Tất cả:
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng. Ứng dụng không thể yêu cầu vai trò này vì vai trò này được cấp sẵn cho tên gói do OEM xác định khi thiết bị được vận chuyển.
  • Ứng dụng phải có khả năng cấp phép hồ sơ được quản lý (chủ sở hữu hồ sơ) hoặc thiết bị được quản lý (chủ sở hữu thiết bị), bao gồm cả việc tải xuống và cài đặt ứng dụng khách chính sách thiết bị thích hợp để trở thành chủ sở hữu thiết bị/hồ sơ nếu cần.
  • Ứng dụng có thể cập nhật linh động (không bắt buộc) tài nguyên chẳng hạn như chuỗi, đối tượng có thể vẽ dùng để quản lý chính sách thiết bị.
  • Ứng dụng có thể là ứng dụng hệ thống được cài đặt sẵn hoặc được tải xuống và cài đặt trước khi cấp phép.
  • Đối với các trường hợp cấp phép cho chủ sở hữu hồ sơ, khi ứng dụng của người giữ vai trò được cài đặt trên một người dùng Android nhất định, thì ứng dụng đó phải được cài đặt trên tất cả hồ sơ hiện có của người dùng đó.
SYSTEM_APP_PROTECTION_SERVICE Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Mục đích duy nhất của ứng dụng là phát hiện các ứng dụng có khả năng gây hại (ứng dụng có thể gây rủi ro cho người dùng, dữ liệu người dùng hoặc thiết bị, chẳng hạn như trojan, ứng dụng lừa đảo và phần mềm gián điệp) hoặc Phần mềm không mong muốn trên thiết bị di động.
  • Ứng dụng phải đáp ứng tất cả yêu cầu nêu trong phần 9.8.6 của CDD Android. Dữ liệu môi trường và dữ liệu cấp hệ điều hành.
  • Ứng dụng không được khai báo quyền thông thường android.permission.INTERNET. Thay vào đó, ứng dụng phải truy cập Internet thông qua các API được xác định rõ ràng trong một dự án nguồn mở.
  • Ứng dụng không được liên kết với các ứng dụng khác, ngoại trừ các ứng dụng hệ thống sau: Trình kiểm soát quyền và các thành phần cung cấp API Điện thoại và Internet. Mỗi liên kết được phép phải được thiết lập rõ ràng thông qua cấu hình <allow-association> trong cấu hình hệ thống.
  • Ứng dụng không được chia sẻ dữ liệu với các ứng dụng khác trừ phi có hành động trực tiếp của người dùng (ví dụ: người dùng nhấn rõ ràng vào một nút mỗi khi dữ liệu được chia sẻ).
SYSTEM_AUTOMOTIVE_CALENDAR_SYNC_MANAGER Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Ứng dụng phải chuyển dữ liệu lịch từ điện thoại iOS hoặc Android của người dùng sang thiết bị Android Auto. Thiết bị Android Auto phải lưu trữ dữ liệu lịch này trong trình cung cấp lịch.
  • Ứng dụng phải cung cấp một thành phần giao diện người dùng trên điện thoại mà người dùng có thể sử dụng để bật tính năng đồng bộ hoá lịch và chọn lịch cần đồng bộ hoá. Ứng dụng phải cung cấp một thành phần giao diện người dùng trên điện thoại mà người dùng có thể sử dụng để tắt tính năng đồng bộ hoá lịch.
  • Ứng dụng phải hoạt động được khi không có kết nối Internet. Ví dụ: bằng cách sử dụng kết nối có dây hoặc không dây trực tiếp.
AUTOMOTIVE_NAVIGATION Tất cả:
  • Ứng dụng có một hoạt động mà các ứng dụng khác có thể gọi thông qua yêu cầu ý định ngầm ẩn, cho thấy vị trí hiện tại của người dùng và môi trường xung quanh.
  • Ứng dụng có một hoạt động mà các ứng dụng khác có thể gọi thông qua yêu cầu ý định ngầm ẩn, cho phép người dùng di chuyển đến một vị trí địa lý cụ thể.
  • Ứng dụng có một hoạt động được chạy trên cụm đồng hồ khi ứng dụng giữ tiêu điểm điều hướng. Hoạt động này phải cho thấy vị trí hiện tại của người dùng, môi trường xung quanh và cho phép họ di chuyển đến một vị trí địa lý cụ thể.
COMPANION_DEVICE_COMPUTER Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Cho phép người dùng phản chiếu thông báo, cũng như truy cập vào ảnh và nội dung nghe nhìn trên điện thoại từ một máy tính đã kết nối.
SYSTEM_SETTINGS_INTELLIGENCE Ít nhất một trong các giá trị sau:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Có một dịch vụ cung cấp các tính năng thông minh cho ứng dụng Cài đặt, chẳng hạn như đề xuất và tìm kiếm.
NOTES Tất cả:
  • Ứng dụng có một hoạt động mà các ứng dụng khác có thể gọi thông qua yêu cầu ý định ngầm ẩn. Hoạt động này cho phép người dùng tạo ghi chú bất kể màn hình đang khoá hay mở khoá.
  • Ứng dụng phải hỗ trợ việc này bằng cách có một hoạt động có bộ lọc ý định cho android.intent.action.CREATE_NOTE với danh mục android.intent.category.DEFAULT. Hoạt động này cũng phải xử lý đúng cách ý định bổ sung android.intent.extra.USE_STYLUS_MODE.
  • Ứng dụng phải có cả hai thuộc tính tệp kê khai showWhenLocked và turnScreenOn được đặt thành true.
COMPANION_DEVICE_GLASSES Ứng dụng có thể đưa ra yêu cầu liên kết và quản lý thiết bị kính (bằng cách sử dụng API do lớp CompanionDeviceManager cung cấp). Khi thiết bị kính và ứng dụng được kết nối bằng giao diện người dùng do CDM cung cấp, người dùng có thể quản lý thiết bị kính bằng cách cấp cho thiết bị đó quyền truy cập vào danh bạ, cũng như quyền quản lý thông báo và cuộc gọi điện thoại.
COMPANION_DEVICE_NEARBY_DEVICE_STREAMING Tất cả:
  • Ứng dụng này là một ứng dụng hệ thống .
  • Chỉ OEM mới có thể cấp vai trò này cho ứng dụng.
  • Các trường hợp sử dụng được phép:
    • Truyền phát ứng dụng từ một thiết bị chạy Android (chẳng hạn như điện thoại di động hoặc máy tính bảng) sang ô tô.
    • Truyền phát ứng dụng từ một thiết bị chạy Android (chẳng hạn như điện thoại di động hoặc máy tính bảng) sang một thiết bị XR.
  • Khi thiết lập kết nối ban đầu từ thiết bị A đến thiết bị B:
    • Quá trình ghép nối PHẢI được cho phép bằng mã dùng một lần hiển thị trên thiết bị nguồn (A) và được nhập trên thiết bị thông minh (B). Ngoài ra, nếu cả hai thiết bị đều có ít nhất một tài khoản trùng khớp trong AccountManager của Android, thì người dùng CÓ THỂ xác nhận việc ghép nối bằng cách nhập mật khẩu của tài khoản trên thiết bị thông minh (B).
    • Cả hai thiết bị cần ở gần 1 nhau trong quá trình ghép nối.
  • Cả hai thiết bị cần ở gần 1 nhau trong khi truyền trực tuyến.
  • Ứng dụng có thể tạo và quản lý các kênh liên lạc với thiết bị được kết nối để các thiết bị có thể trao đổi dữ liệu. Ứng dụng và các thiết bị được kết nối PHẢI xác thực thành công lẫn nhau (ví dụ: bằng cách chứng minh rằng chúng biết các khoá dùng chung) để thiết lập các kênh liên lạc này. Các kênh liên lạc PHẢI được bảo vệ bằng phương thức mã hoá hai đầu.
  • Ứng dụng có thể gửi thông báo từ thiết bị nguồn (A) đến thiết bị thông minh (B) để cho phép người dùng thực hiện hành động đối với thông báo trên thiết bị thông minh (B).
  • Có thể truyền trực tuyến siêu dữ liệu cần thiết cho việc truyền phát ứng dụng đến thiết bị thông minh (B), chẳng hạn như danh sách ứng dụng có trên thiết bị nguồn (A).
  • Có thể truyền trực tuyến ứng dụng từ thiết bị nguồn (A) sang thiết bị đã kết nối (B) sau khi người dùng cho biết họ muốn làm như vậy và đã đồng ý rõ ràng (trên thiết bị nguồn (A) hoặc trên thiết bị đã kết nối (B)).
  • Có thể phát lại (chèn) các sự kiện xảy ra trên một ứng dụng được truyền trực tuyến trên thiết bị thông minh đã kết nối (B) trở lại thiết bị nguồn (A). Ví dụ: phát lại một sự kiện chạm trên thiết bị thông minh được kết nối (B) tại cùng toạ độ như trên thiết bị nguồn (A) hoặc phát lại một sự kiện đầu vào xảy ra trên thiết bị thông minh được kết nối (B) có cùng ngữ nghĩa đầu vào như trên thiết bị nguồn (A).
  • Ứng dụng có thể thay thế luồng micrô của thiết bị nguồn bằng luồng micrô của thiết bị thông minh trong khi ứng dụng phát trực tuyến đang sử dụng micrô.
  • Ứng dụng thu âm thanh từ thiết bị nguồn (A) và truyền trực tuyến âm thanh đó đến thiết bị thông minh (B).
  • Bạn NÊN chặn quyền truy cập vào các ứng dụng cài đặt và cửa hàng ứng dụng trên thiết bị thông minh được kết nối (B).
  • Kể từ Android 16, bạn PHẢI ngăn chặn việc chụp ảnh màn hình và sử dụng trình đọc màn hình đối với nội dung nhạy cảm, chẳng hạn như cửa sổ và nền tảng bảo mật, trên thiết bị được kết nối (B).
  • PHẢI xác minh tính toàn vẹn của bản dựng hệ điều hành trên thiết bị thông minh (ví dụ: bằng cách sử dụng tính năng chứng thực thiết bị như trong VerifiedBootState).
  • Chỉ truyền trực tuyến các ứng dụng phát trực tuyến chỉ có một tài khoản khớp trong sổ đăng ký tài khoản trên thiết bị (ví dụ: lớp AccountManager trên Android) trên cả hai thiết bị. Nếu không, việc truyền trực tuyến PHẢI được uỷ quyền bằng mã một lần hiển thị trên thiết bị nguồn (A) và được nhập trên thiết bị thông minh (B). Xin lưu ý rằng trong trường hợp thiết bị hỗ trợ nhiều người dùng (chứ không phải nhiều tài khoản) có cùng một cơ chế tách biệt dữ liệu đáng tin cậy như trong Android nhiều người dùng, thì một người dùng được tính là một thiết bị.
  • PHẢI dừng truyền trực tuyến và ngắt kết nối khỏi thiết bị thông minh (B) ngay lập tức nếu quá trình xác thực tài khoản trên thiết bị thông minh (B) hết hạn hoặc bị thu hồi.
  • PHẢI dừng truyền trực tuyến và ngắt kết nối khỏi thiết bị thông minh (B) khi thiết bị thông minh (B) (nơi hiển thị nội dung) hết thời gian chờ ở trạng thái rảnh. CÓ THỂ giữ cho màn hình của thiết bị thông minh luôn bật trong các trường hợp chẳng hạn như WakeLock, giữ cho màn hình của thiết bị Android luôn bật. BẮT BUỘC phải có thời gian chờ không hoạt động. Nếu thiết bị thông minh được kết nối (B) không có thời gian chờ khi không hoạt động, thì bạn PHẢI sử dụng thời gian chờ khi không hoạt động tối đa là 5 phút.
  • Nếu thiết bị nguồn (A) sử dụng Yếu tố nhận biết màn hình khoá (LSKF), thì khi màn hình bị khoá, ứng dụng KHÔNG ĐƯỢC truyền trực tuyến ứng dụng đến thiết bị đã kết nối (B), trừ phi thiết bị đã kết nối (B) có màn hình khoá và đã được mở khoá.
  • Nếu thiết bị nguồn (A) do quản trị viên quản lý, thì ứng dụng PHẢI tuân thủ các chính sách do quản trị viên đặt ra về việc bật hoặc tắt tính năng truyền trực tuyến đến các thiết bị ở gần (ví dụ: sử dụng chế độ cài đặt DevicePolicyManager trong Android).
  • PHẢI đảm bảo rằng màn hình từ xa và tất cả nguồn sự kiện đầu vào từ xa đều thuộc cùng một thiết bị logic (ví dụ: màn hình từ xa và bàn phím được kết nối) theo quan điểm của người dùng và các sự kiện được định tuyến tương ứng.
  • Người dùng PHẢI có thể kết thúc quá trình truyền trực tuyến từ thiết bị nguồn (A), ví dụ: bằng cách sử dụng nút trong thông báo liên tục. Hành vi này được kiểm soát bằng màn hình khoá, nếu thiết bị nguồn (A) đã đặt phương thức khoá màn hình. PHẢI hiển thị chức năng cố định này trên thiết bị nguồn (A). Chức năng này phải luôn hiển thị và nằm ở phần đầu trang.
  • PHẢI cho thấy một chức năng trên thiết bị nguồn (A) khi quá trình truyền trực tuyến đang diễn ra trên một thiết bị khác, chẳng hạn như biểu tượng trên thanh trạng thái hoặc thông báo liên tục.
WALLET Một trong các lựa chọn sau:
  • Ứng dụng có một dịch vụ APDU NFC đăng ký tĩnh ít nhất một AID trong danh mục THANH TOÁN.
  • Ứng dụng triển khai một thực thể của QuickAccessWalletService.

1 Khoảng cách gần được xác định khi hai thiết bị nằm trong phạm vi Bluetooth hoặc Wi-Fi của nhau hoặc sử dụng cùng một mạng cục bộ.