ประวัติการแจ้งเตือน

ประวัติการแจ้งเตือนคือหน้าจอของอุปกรณ์ที่ผู้ใช้จะเห็นการแจ้งเตือนที่เลื่อนเวลาไว้ การแจ้งเตือนที่ปิดไปล่าสุดจำนวนหนึ่ง และประวัติการแจ้งเตือนของวันล่าสุด โดย OEM จะใช้หรือไม่ก็ได้ การดำเนินการนี้ไม่ส่งผลกระทบต่อ SoC หรือผู้ให้บริการ

ประวัติการแจ้งเตือนมีไว้เพื่อจัดการกรณีการใช้งานต่อไปนี้

  • ปิดโดยไม่ตั้งใจ: คุณปิดการแจ้งเตือนโดยไม่ตั้งใจและต้องการดูข้อมูลคร่าวๆ ของการแจ้งเตือนนั้น
  • การแจ้งเตือนที่เลื่อน: คุณเลื่อนการแจ้งเตือนไปแล้วแต่ต้องการดูการแจ้งเตือนนั้นก่อนที่จะหมดระยะเวลาเลื่อน
  • การแก้ปัญหา: คุณคิดว่าพลาดการแจ้งเตือน คุณสามารถตรวจสอบประวัติการแจ้งเตือนเพื่อดูว่ามีการแจ้งเตือนหรือไม่ และอุปกรณ์สั่นหรือไม่ หากไม่พบ ให้ตรวจสอบว่ามีการบล็อกการแจ้งเตือนหรือไม่ คุณเปลี่ยนการตั้งค่าการแจ้งเตือนได้ในประวัติการแจ้งเตือน
  • การจัดการการแจ้งเตือน: หากต้องการเปลี่ยนลักษณะการแจ้งเตือนที่รบกวน คุณก็สามารถใช้ประวัติการแจ้งเตือนได้ เนื่องจากประวัติการแจ้งเตือนจะแสดงข้อมูลการแจ้งเตือนรายวันที่สมจริง ซึ่งช่วยให้เข้าใจขอบเขตของการเปลี่ยนแปลงการแจ้งเตือน การบล็อก ฯลฯ ได้ง่าย

การใช้งานอ้างอิงสำหรับคอมโพเนนต์เหล่านี้ของประวัติการแจ้งเตือนมีดังนี้

  • การตั้งค่า: packages/apps/Settings/src/com/android/settings/notification/history
  • เซิร์ฟเวอร์ระบบ: com.android.server.notification.NotificationHistory.*.java

ขั้นตอนหลักในการใช้ประวัติการแจ้งเตือนมีดังนี้

  • เขียนเหตุการณ์การแจ้งเตือนลงในบันทึก
  • เพิ่มจุดแรกเข้าในบันทึกและการตั้งค่าเพื่อเปิดและปิด
  • ใช้หน้าจอประวัติการแจ้งเตือน

ผู้ใช้สามารถปิดประวัติการแจ้งเตือนได้ เมื่อปิดการตั้งค่านี้ ระบบจะลบรายการในประวัติทั้งหมดและไม่มีการเขียนรายการลงในบันทึก

คุณกำหนดจำนวนวันให้การแจ้งเตือนปรากฏในประวัติการแจ้งเตือนได้โดยใช้ค่าคงที่ HISTORY_RETENTION_DAYS ในคลาส NotificationHistoryDatabase นอกจากนี้ คุณยังแก้ไขส่วนที่จะปรากฏในหน้าจอประวัติการแจ้งเตือนและวิธีนำเสนอข้อมูลได้ด้วย

ระยะเวลาการเก็บรักษาประวัติการแจ้งเตือนเริ่มต้นคือ 24 ชั่วโมง

การทดสอบ 1 หน่วยเหล่านี้มีไว้สำหรับคอมโพเนนต์แต่ละรายการของโค้ด

  • การทดสอบหน่วยของเซิร์ฟเวอร์ระบบ: FrameworksUiServicesTests
  • การทดสอบหน่วยการตั้งค่า: make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.notification"