বিজ্ঞপ্তির ইতিহাস হল ডিভাইসের এমন একটি স্ক্রিন যেখানে ব্যবহারকারীরা স্নুজ করা বিজ্ঞপ্তি, সম্প্রতি বাতিল করা কিছু বিজ্ঞপ্তি এবং গত দিনের বিজ্ঞপ্তির ইতিহাস দেখতে পাবেন। এটি হল OEM-এর প্রয়োগ করার জন্য একটি ঐচ্ছিক ফিচার। SoC বা পরিষেবা প্রদানকারীর উপর কোনও প্রভাব পড়ে না।
বিজ্ঞপ্তির ইতিহাস এইসব সম্ভাব্য পরিস্থিতি সমাধান করার জন্য তৈরি করা হয়েছে:
- অনিচ্ছাকৃতভাবে বাতিল করা: আপনি অনিচ্ছাকৃতভাবে কোনও বিজ্ঞপ্তি বাতিল করে দিয়েছেন এবং সেটি কী ছিল তা দ্রুত দেখতে চান।
- স্নুজ করা বিজ্ঞপ্তি: আপনি কোনও বিজ্ঞপ্তি স্নুজ করেছেন কিন্তু স্নুজ করার সময়সীমা শেষ হওয়ার আগে সেটি দেখতে চান।
- সমস্যার সমাধান করা: আপনি মনে করেন যে কোনও বিজ্ঞপ্তি মিস করেছেন। কোনও বিজ্ঞপ্তি এসেছিল কিনা এবং সেটি বাজছিল কিনা তা দেখতে আপনি বিজ্ঞপ্তির ইতিহাস চেক করতে পারেন। আপনি এটি খুঁজে না পেলে, কোনও বিজ্ঞপ্তি ব্লক করা হয়েছে কিনা তা চেক করুন। আপনি বিজ্ঞপ্তি ইতিহাসে বিজ্ঞপ্তির সেটিংস পরিবর্তন করতে পারবেন।
- বিজ্ঞপ্তি ম্যানেজমেন্ট: আপনি কীভাবে বাধা সৃষ্টিকারী বিজ্ঞপ্তিগুলি পরিবর্তন করতে চান, তাই আপনি বিজ্ঞপ্তি ইতিহাস ব্যবহার করেন কারণ এটি দৈনিক বিজ্ঞপ্তি লোডের একটি বাস্তবসম্মত চিত্র প্রদান করে, যা আপনাকে সতর্ক করা, ব্লক করা ইত্যাদি সংক্রান্ত পরিবর্তনের সুযোগ বুঝতে সাহায্য করে।
বিজ্ঞপ্তির ইতিহাসের এইসব কম্পোনেন্টের রেফারেন্স ইমপ্লিমেন্টেশন উপলভ্য:
- সেটিংস:
packages/apps/Settings/src/com/android/settings/notification/history - সিস্টেম সার্ভার:
com.android.server.notification.NotificationHistory.*.java
বিজ্ঞপ্তির ইতিহাস চালু করার প্রধান ধাপগুলি এখানে দেওয়া হল:
- লগে বিজ্ঞপ্তি ইভেন্ট লিখুন।
- লগে এন্ট্রি পয়েন্ট যোগ করুন এবং এটি চালু ও বন্ধ করার সেটিং যোগ করুন।
- বিজ্ঞপ্তির ইতিহাস স্ক্রিন প্রয়োগ করুন।
ব্যবহারকারী বিজ্ঞপ্তি ইতিহাস বন্ধ করতে পারেন। এটি বন্ধ করা হলে, সব ইতিহাস আইটেম মুছে ফেলা হয় এবং লগে কোনও আইটেম লেখা হয় না।
ক্লাসে
NotificationHistoryDatabase HISTORY_RETENTION_DAYS কনস্ট্যান্ট ব্যবহার করে
বিজ্ঞপ্তির ইতিহাসে বিজ্ঞপ্তি কতদিন ধরে দেখা যাবে তা আপনি সেট করতে পারবেন। এছাড়াও, বিজ্ঞপ্তি ইতিহাস স্ক্রিনে কোন
বিভাগ দেখানো হবে এবং কীভাবে ডেটা
উপস্থাপন করা হবে তা আপনি পরিবর্তন করতে পারবেন।
ডিফল্ট বিজ্ঞপ্তি ইতিহাস ধরে রাখার সময়সীমা হল ২৪ ঘণ্টা।
কোডের প্রতিটি কম্পোনেন্টের জন্য এইসব ইউনিট টেস্ট প্রদান করা হয়:
- সিস্টেম সার্ভার ইউনিট টেস্ট:
FrameworksUiServicesTests - সেটিংস ইউনিট টেস্ট:
make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.notification"