বিজ্ঞপ্তির ইতিহাস

নোটিফিকেশন হিস্ট্রি হলো ডিভাইসের এমন একটি স্ক্রিন, যেখানে ব্যবহারকারীরা স্নুজ করা নোটিফিকেশন, সম্প্রতি বাতিল করা কয়েকটি নোটিফিকেশন এবং গত একদিনের নোটিফিকেশনের ইতিহাস দেখতে পারেন। এটি 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"