Để ngăn chặn quảng cáo không liên quan và hành vi lừa đảo đánh cắp thông tin đăng nhập, bắt đầu từ Android 14, quyền USE_FULL_SCREEN_INTENT
mặc định để gửi thông báo toàn màn hình chỉ có thể được cấp cho những ứng dụng cung cấp chức năng gọi điện và chuông báo.
Đối với tất cả các ứng dụng được cài đặt trên Android 14, quyền USE_FULL_SCREEN_INTENT
được bật theo mặc định. Sau khi cài đặt, Cửa hàng Google Play sẽ thu hồi quyền về ý định toàn màn hình (FSI) đối với những ứ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 Android phiên bản 13 trở xuống, quyền USE_FULL_SCREEN_INTENT
vẫn được bật theo mặc định.
Quyền 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. Để được người dùng cấp quyền gửi thông báo toàn màn hình, các ứng dụng sẽ dùng ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT
để khởi chạy chế độ cài đặt Quản lý ý định toàn màn hình như minh hoạ trong Hình 1:
Hình 1. Giao diện người dùng để cho phép các ứng dụng gửi ý định toàn màn hình.
Chế độ cài đặt Quản lý ý định trên toàn màn hình nằm trong trình đơn Cài đặt trong phần Quyền truy cập đặc biệt của ứng dụng. Thông qua 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 đối với nhà sản xuất thiết bị gốc (OEM)
Trong Android 14, theo mặc định, các quyền FSI cho ứng dụng sẽ được bật. Nhà sản xuất thiết bị gốc phải chỉ định những ứng dụng đủ điều kiện có quyền FSI. Các OEM phải đảm bảo rằng cửa hàng ứng dụng bên thứ ba đặt trạng thái cấp ban đầu của các quyền FSI cho ứng dụng của họ bằng cách sử dụng PackageInstaller.SessionParams
, cụ thể là với các tham số PERMISSION_STATE_DEFAULT
, PERMISSION_STATE_DENIED
và PERMISSION_STATE_GRANTED
.
Xác nhận kết quả
Sử dụng bài kiểm thử CTS Verifier trong NotificationFullScreenIntentVerifierActivity.java
và bài kiểm thử CTS trong NotificationManagerTest.java
để xác thực các giới hạn FSI.
Bài kiểm tra thủ công
Hãy làm theo các bước sau để kiểm thử giới hạn FSI theo cách thủ công trên ứng dụng của bạn:
- Khai báo
USE_FULL_SCREEN_INTENT
trong tệpAndroidManifest.xml
của ứng dụng. - Sử dụng biểu tượng
ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT
để quản lý chế độ cài đặt nhằm bật hoặc tắt FSI. - Trên điện thoại thử nghiệm, hãy chuyển đổi quyền của người dùng cho thông báo toàn màn hình theo cách thủ công như trong Hình 1.
- Gửi thông báo về ngành dịch vụ tài chính (FSI).
- Xác thực sự xuất hiện của thông báo toàn màn hình cho các tổ hợp sau đây về quyền FSI và chế độ hiển thị:
Quyền FSI | Màn hình đã mở khoá | Màn hình 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) cố định có nút dạng viên thuốc | Ra mắt FSI | Ra mắt FSI | Ra mắt FSI |
Người dùng từ chối | HUN có nút dạng viên trong 60 giây | HUN có nút dạng viên thuốc sẽ xuất hiện đầu tiên trong danh sách trong 60 giây | AOD bật, hiển thị HUN có các nút dạng viên thuốc trong 60 giây | HUN có nút dạng viên trong 60 giây |