Kể từ ngày 27 tháng 3 năm 2025, bạn nên sử dụng android-latest-release
thay vì aosp-main
để xây dựng và đóng góp cho AOSP. Để biết thêm thông tin, hãy xem phần Thay đổi đối với AOSP.
Nhật ký thông báo
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Nhật ký thông báo là một màn hình thiết bị mà người dùng có thể xem các thông báo đã tạm ẩn, một số thông báo đã đóng gần đây và nhật ký thông báo của ngày gần nhất. Đây là một tính năng không bắt buộc mà nhà sản xuất thiết bị gốc (OEM) có thể triển khai.
Việc này không ảnh hưởng đến SoC hoặc nhà mạng.
Nhật ký thông báo được dùng để giải quyết các trường hợp sử dụng sau:
- Vô tình đóng: Bạn vô tình đóng một thông báo và muốn xem nhanh thông báo đó là gì.
- Thông báo đã tạm hoãn: Bạn đã tạm hoãn một thông báo nhưng muốn xem thông báo đó trước khi hết thời gian tạm hoãn.
- Khắc phục sự cố: Bạn cho rằng mình đã bỏ lỡ một thông báo. Bạn
kiểm tra nhật ký thông báo để xem có thông báo nào không và
thiết bị có rung không. Nếu không tìm thấy, hãy kiểm tra xem có thông báo nào bị chặn hay không. Bạn có thể thay đổi chế độ cài đặt thông báo trong nhật ký thông báo.
- Quản lý thông báo: Bạn muốn thay đổi cách thông báo gián đoạn, vì vậy, bạn sử dụng nhật ký thông báo vì nhật ký này cung cấp một phần tải thông báo thực tế hằng ngày, giúp bạn dễ dàng hiểu được phạm vi thay đổi đối với việc cảnh báo, chặn, v. v.
Bạn có thể tham khảo cách triển khai các thành phần sau của Nhật ký thông báo:
- Cài đặt:
packages/apps/Settings/src/com/android/settings/notification/history
- Máy chủ hệ thống:
com.android.server.notification.NotificationHistory.*.java
Sau đây là các bước chính để triển khai Nhật ký thông báo:
- Ghi các sự kiện thông báo vào nhật ký.
- Thêm các điểm truy cập vào nhật ký và chế độ cài đặt để bật và tắt nhật ký.
- Triển khai màn hình Nhật ký thông báo.
Người dùng có thể tắt tính năng Nhật ký thông báo. Khi tính năng này tắt, tất cả các mục trong nhật ký sẽ bị xoá và không có mục nào được ghi vào nhật ký.
Bạn có thể đặt số ngày thông báo xuất hiện trong Nhật ký thông báo bằng cách sử dụng hằng số HISTORY_RETENTION_DAYS
trong lớp NotificationHistoryDatabase
. Bạn cũng có thể sửa đổi các phần xuất hiện trong màn hình Nhật ký thông báo và cách trình bày dữ liệu.
Khoảng thời gian giữ lại nhật ký thông báo mặc định là 24 giờ.
Các bài kiểm thử đơn vị này được cung cấp cho từng thành phần của mã:
- Kiểm thử đơn vị máy chủ hệ thống:
FrameworksUiServicesTests
- Kiểm thử đơn vị cài đặt:
make -j64 RunSettingsRoboTests
ROBOTEST_FILTER="com.android.settings.notification"
Nội dung và mã mẫu trên trang này phải tuân thủ các giấy phép như mô tả trong phần Giấy phép nội dung. Java và OpenJDK là nhãn hiệu hoặc nhãn hiệu đã đăng ký của Oracle và/hoặc đơn vị liên kết của Oracle.
Cập nhật lần gần đây nhất: 2025-07-27 UTC.
[[["Dễ hiểu","easyToUnderstand","thumb-up"],["Giúp tôi giải quyết được vấn đề","solvedMyProblem","thumb-up"],["Khác","otherUp","thumb-up"]],[["Thiếu thông tin tôi cần","missingTheInformationINeed","thumb-down"],["Quá phức tạp/quá nhiều bước","tooComplicatedTooManySteps","thumb-down"],["Đã lỗi thời","outOfDate","thumb-down"],["Vấn đề về bản dịch","translationIssue","thumb-down"],["Vấn đề về mẫu/mã","samplesCodeIssue","thumb-down"],["Khác","otherDown","thumb-down"]],["Cập nhật lần gần đây nhất: 2025-07-27 UTC."],[],[],null,["# Notification history is a device screen where users can see snoozed\nnotifications, a handful of recently dismissed notifications, and a history of\nthe last day of notifications. It is an optional feature for OEMs to implement.\nThere's no impact on SoCs or carriers.\n\nNotification history is meant to address these use cases:\n\n- **Accidental dismissal**: You accidentally dismissed a notification and want to get a quick look at what it was.\n- **Snoozed notifications**: You snoozed a notification but want to see it before the snooze period is over.\n- **Troubleshooting**: You think you missed a notification. You check the notification history to see whether there was a notification and whether it buzzed. If you don't find it, you check whether a notification was blocked. You can change notification settings in notification history.\n- **Notification management**: You want to change how interruptive notifications are, so you use notification history because it offers a realistic slice of daily notification load, which makes it easy to understand the scope of your changes to alerting, blocking. etc.\n\nReference implementations of these components of Notification History are\navailable:\n\n- **Settings** : `packages/apps/Settings/src/com/android/settings/notification/history`\n- **System server** : `com.android.server.notification.NotificationHistory.*.java`\n\nThese are the major steps to implement Notification History:\n\n- Write notification events to the log.\n- Add entry points to the log and the setting to turn it on and off.\n- Implement the Notification History screen.\n\nUsers can turn Notification History off. When it's off, all history items are\ndeleted and no items are written to the log.\n\nYou can set the number of days notifications appear in the Notification\nHistory using the `HISTORY_RETENTION_DAYS` constant in the\n`NotificationHistoryDatabase` class. You can also modify which\nsections appear in the Notification History screen and how the data is\npresented.\n\nThe default notification history retention period is 24 hours.\n\nThese unit tests are provided for each component of the code:\n\n- **System server unit tests** : `FrameworksUiServicesTests`\n- **Settings unit tests** : `make -j64 RunSettingsRoboTests\n ROBOTEST_FILTER=\"com.android.settings.notification\"`"]]