تاریخچه اعلانها، صفحهای از دستگاه است که کاربران میتوانند اعلانهای به تعویق افتاده، تعدادی از اعلانهای اخیراً رد شده و تاریخچهای از آخرین روز اعلانها را مشاهده کنند. پیادهسازی این ویژگی برای تولیدکنندگان تجهیزات اصلی (OEM) اختیاری است. هیچ تأثیری بر SoCها یا اپراتورها ندارد.
تاریخچه اعلانها برای رسیدگی به این موارد استفاده در نظر گرفته شده است:
- حذف تصادفی : شما به طور تصادفی یک اعلان را رد کردهاید و میخواهید نگاهی سریع به آن بیندازید.
- اعلانهای به تعویق افتاده : شما یک اعلان را به تعویق انداختهاید اما میخواهید قبل از پایان دوره تعویق، آن را ببینید.
- عیبیابی : فکر میکنید یک اعلان را از دست دادهاید. تاریخچه اعلانها را بررسی میکنید تا ببینید آیا اعلانی وجود داشته و آیا زنگ خورده است یا خیر. اگر آن را پیدا نکردید، بررسی میکنید که آیا اعلان مسدود شده است یا خیر. میتوانید تنظیمات اعلانها را در تاریخچه اعلانها تغییر دهید.
- مدیریت اعلانها : شما میخواهید میزان مزاحمت اعلانها را تغییر دهید، بنابراین از تاریخچه اعلانها استفاده میکنید زیرا یک بخش واقعبینانه از بار اعلانهای روزانه را ارائه میدهد که درک دامنه تغییرات شما در هشدار، مسدود کردن و غیره را آسان میکند.
پیادهسازیهای مرجع این اجزای Notification History در دسترس هستند:
- تنظیمات :
packages/apps/Settings/src/com/android/settings/notification/history - سرور سیستم :
com.android.server.notification.NotificationHistory.*.java
مراحل اصلی برای پیادهسازی تاریخچه اعلانها (Notification History) به شرح زیر است:
- رویدادهای اعلان را در گزارش بنویسید.
- نقاط ورودی را به گزارش اضافه کنید و تنظیمات مربوط به روشن و خاموش کردن آن را انجام دهید.
- صفحه تاریخچه اعلانها (Notification History) را پیادهسازی کنید.
کاربران میتوانند تاریخچه اعلانها را غیرفعال کنند. وقتی غیرفعال باشد، تمام موارد تاریخچه حذف میشوند و هیچ موردی در گزارش ثبت نمیشود.
شما میتوانید تعداد روزهایی که اعلانها در Notification History نمایش داده میشوند را با استفاده از ثابت HISTORY_RETENTION_DAYS در کلاس NotificationHistoryDatabase تنظیم کنید. همچنین میتوانید بخشهایی که در صفحه Notification History نمایش داده میشوند و نحوه نمایش دادهها را تغییر دهید.
مدت زمان پیشفرض نگهداری تاریخچه اعلانها ۲۴ ساعت است.
این تستهای واحد برای هر جزء کد ارائه شدهاند:
- تستهای واحد سرور سیستم :
FrameworksUiServicesTests - تستهای واحد تنظیمات :
make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.notification"