Giới hạn về ý định toàn màn hình

Để ngăn chặn quảng cáo không liên quan và hành vi lừa đảo bằng thông tin đăng nhập, kể từ Android 14, USE_FULL_SCREEN_INTENT mặc định chỉ có thể cấp quyền gửi thông báo toàn màn hình cho những ứng dụng cung cấp chức năng gọi điện và báo thức.

Đối với tất cả ứng dụng đang được cài đặt trên Android 14, USE_FULL_SCREEN_INTENT quyền được bật theo mặc định. Sau khi cài đặt, Cửa hàng Google Play thu hồi quyền về ý định toàn màn hình (FSI) đối với các ứng dụng không có chức năng gọi điện hoặc báo thức.

Đối với các ứng dụng được cài đặt trên điện thoại chạy phiên bản thấp hơn Android 13: USE_FULL_SCREEN_INTENT quyền vẫn được bật theo mặc định.

Sự cho phép của người dùng

Với Android 14, các ứng dụng có thể dùng NotificationManager#canUseFullScreenIntent() để kiểm tra xem chúng có thể gửi thông báo toàn màn hình hay không. Để yêu cầu người dùng cho phép gửi thông báo toàn màn hình, các ứng dụng dùng ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT để chạy chế độ cài đặt Quản lý ý định toàn màn hình như trong Hình 1:

giao diện người dùng

Hình 1. Giao diện người dùng để cho phép ứng dụng gửi ý định toàn màn hình.

Chế độ cài đặt Quản lý ý định toàn màn hình nằm ở trình đơn Cài đặt bên dưới Quyền truy cập đặc biệt. Trong giao diện người dùng này, người dùng có thể thu hồi quyền này nếu cần.

Yêu cầu của OEM (Nhà sản xuất thiết bị gốc)

Trong Android 14, quyền FSI cho các ứng dụng được bật bằng cách mặc định. Nhà sản xuất thiết bị gốc phải chỉ định những ứng dụng đủ điều kiện cấp quyền trong ngành dịch vụ tài chính (FSI). OEM phải đảm bảo rằng các cửa hàng ứng dụng bên thứ ba thiết lập trạng thái cấp ban đầu của FSI quyền cho các ứng dụng của họ PackageInstaller.SessionParams, cụ thể bằng PERMISSION_STATE_DEFAULT, PERMISSION_STATE_DENIEDPERMISSION_STATE_GRANTED tham số.

Xác nhận kết quả

Sử dụng bài kiểm tra Trình xác minh CTS trong NotificationFullScreenIntentVerifierActivity.java, và thử nghiệm CTS trong NotificationManagerTest.java để xác thực các giới hạn của ngành dịch vụ tài chính.

Bài kiểm tra thủ công

Hãy làm theo các bước sau để kiểm tra các giới hạn FSI trên ứng dụng của bạn theo cách thủ công:

  1. Khai báo USE_FULL_SCREEN_INTENT trong tệp AndroidManifest.xml của ứng dụng.
  2. Sử dụng ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT để quản lý chế độ cài đặt bật hoặc tắt dịch vụ tài chính (FSI).
  3. Trên điện thoại thử nghiệm, hãy bật/tắt quyền của người dùng ở chế độ toàn màn hình theo cách thủ công các thông báo như được minh hoạ trong Hình 1.
  4. Gửi thông báo dịch vụ tài chính (FSI).
  5. Xác thực sự xuất hiện của thông báo toàn màn hình cho các thông tin sau sự kết hợp giữa quyền FSI và chế độ hiển thị:
Quyền đối với Dịch vụ tài chính (FSI) Màn hình được mở khoá Màn hình bị khoá Tắt màn hình Màn hình luôn bật (AOD)
Do người dùng cấp Thông báo quan trọng (HUN) liên tục kèm theo các nút thuốc Mở dịch vụ tài chính (FSI) Mở dịch vụ tài chính (FSI) Mở dịch vụ tài chính (FSI)
Bị người dùng từ chối HUN bằng các nút thuốc trong 60 giây HUN với các nút hình tròn xuất hiện đầu tiên trong danh sách sau 60 giây AOD bật, hiển thị HUN cùng các nút thuốc trong 60 giây HUN bằng các nút thuốc trong 60 giây