বার্তা অগ্রাধিকার সেট করুন এবং পরিচালনা করুন

অ্যান্ড্রয়েডে ডাউনস্ট্রিম মেসেজগুলিতে ডেলিভারি অগ্রাধিকার দেওয়ার জন্য আপনার কাছে দুটি বিকল্প রয়েছে: স্বাভাবিক এবং উচ্চ অগ্রাধিকার৷ স্বাভাবিক এবং উচ্চ অগ্রাধিকার বার্তাগুলির বিতরণ এই মত কাজ করে:

  • স্বাভাবিক অগ্রাধিকার। এটি ডেটা বার্তাগুলির জন্য ডিফল্ট অগ্রাধিকার। সাধারণ অগ্রাধিকার বার্তাগুলি অবিলম্বে বিতরণ করা হয় যখন ডিভাইসটি ঘুমায় না। যখন ডিভাইসটি ডোজ মোডে থাকে, তখন ব্যাটারি সংরক্ষণের জন্য ডেলিভারি বিলম্বিত হতে পারে যতক্ষণ না ডিভাইসটি ডোজ থেকে বেরিয়ে আসে। কম সময়-সংবেদনশীল বার্তাগুলির জন্য, যেমন নতুন ইমেলের বিজ্ঞপ্তি, আপনার UI সিঙ্কে রাখা, বা পটভূমিতে অ্যাপ ডেটা সিঙ্ক করা, স্বাভাবিক বিতরণ অগ্রাধিকার বেছে নিন।

    আপনার অ্যাপের জন্য একটি ব্যাকগ্রাউন্ড ডেটা সিঙ্কের অনুরোধ করে Android-এ একটি সাধারণ অগ্রাধিকার বার্তা পাওয়ার সময়, নেটওয়ার্ক উপলব্ধ থাকলে এটি পরিচালনা করার জন্য আপনি WorkManager- এর সাথে একটি কাজ নির্ধারণ করতে পারেন।

  • বেশি অগ্রাধিকার. FCM অবিলম্বে উচ্চ অগ্রাধিকার বার্তা প্রদান করার চেষ্টা করে, FCM যখন প্রয়োজনে একটি ঘুমন্ত যন্ত্রকে জাগিয়ে তুলতে এবং কিছু সীমিত প্রক্রিয়াকরণ (খুব সীমিত নেটওয়ার্ক অ্যাক্সেস সহ) চালানোর অনুমতি দেয়। উচ্চ অগ্রাধিকারের বার্তাগুলি সাধারণত আপনার অ্যাপ বা এর বিজ্ঞপ্তিগুলির সাথে ব্যবহারকারীর ইন্টারঅ্যাকশনের ফলে হওয়া উচিত।

Android এর জন্য উচ্চ অগ্রাধিকার বার্তা ব্যবহার করা

অ্যান্ড্রয়েডে উচ্চ অগ্রাধিকার বার্তাগুলি সময় সংবেদনশীল, ব্যবহারকারীর দৃশ্যমান সামগ্রীর জন্য বোঝানো হয় এবং এর ফলে ব্যবহারকারীর মুখোমুখি বিজ্ঞপ্তিগুলি হওয়া উচিত৷ যদি FCM এমন একটি প্যাটার্ন শনাক্ত করে যেখানে বার্তাগুলি ব্যবহারকারী-মুখোমুখী বিজ্ঞপ্তিগুলির ফলে না হয়, তাহলে আপনার বার্তাগুলিকে স্বাভাবিক অগ্রাধিকার থেকে বঞ্চিত করা হতে পারে৷ বার্তাগুলিকে বঞ্চিত করা হবে কিনা তা নির্ধারণ করার সময় FCM 7 দিনের বার্তা আচরণ ব্যবহার করে; এটি আপনার আবেদনের প্রতিটি উদাহরণের জন্য স্বাধীনভাবে এই সংকল্প করে। যদি, উচ্চ অগ্রাধিকার বার্তাগুলির প্রতিক্রিয়া হিসাবে, বিজ্ঞপ্তিগুলি এমনভাবে প্রদর্শিত হয় যা ব্যবহারকারীর কাছে দৃশ্যমান হয়, তাহলে আপনার ভবিষ্যতের উচ্চ-অগ্রাধিকার বার্তাগুলিকে বঞ্চিত করা হবে না৷ এটি প্রযোজ্য যে বিজ্ঞপ্তিটি একটি বিজ্ঞপ্তি বার্তার মাধ্যমে FCM SDK দ্বারা প্রদর্শিত হয়, অথবা একটি ডেটা বার্তার মাধ্যমে একটি বিকাশকারী-উত্পাদিত বিজ্ঞপ্তি৷

অ্যান্ড্রয়েডে বার্তা বঞ্চিতকরণ পরিমাপ করা হচ্ছে

  • স্বতন্ত্র বার্তা। ডেলিভারির সময়, আপনি getOriginalPriority() থেকে, getPriority() থেকে , এর আসল অগ্রাধিকারের সাথে, বিতরণ করা অগ্রাধিকারের তুলনা করে একটি পৃথক বার্তা বঞ্চিত হয়েছে কিনা তা নির্ধারণ করতে পারেন।

  • সমস্ত বার্তা. এফসিএম এগ্রিগেট ডেলিভারি ডেটা এপিআই রিপোর্ট করতে পারে যে Android-এ আপনার সমস্ত বার্তাগুলির কত শতাংশ বঞ্চিত হচ্ছে। সামগ্রিক ডেটা রিপোর্ট থেকে কিছু বার্তা বাদ দেওয়া হতে পারে, তবে সামগ্রিকভাবে তাদের বার্তা বঞ্চনার হারের একটি বিশ্বব্যাপী দৃষ্টিভঙ্গি দেওয়া উচিত। আরও তথ্যের জন্য সমষ্টিগত ডেলিভারি ডেটার উপর আমাদের নিবন্ধটি দেখুন এবং API জিজ্ঞাসা করার জন্য নমুনা কোড; এটি API এক্সপ্লোরার থেকেও অন্বেষণ করা যেতে পারে

সমস্যা সমাধান

  • নিশ্চিত করুন যে আপনার অ্যাপ ইনস্ট্যান্সে বিজ্ঞপ্তিগুলি সক্ষম করা আছে। ব্যবহারকারী আপনার অ্যাপের জন্য বিজ্ঞপ্তির অনুমতি অক্ষম করে থাকলে, আপনার কোনো বিজ্ঞপ্তি পোস্ট করা হবে না, ফলস্বরূপ, আপনার বার্তাগুলিকে বঞ্চিত করা হবে। একটি অ্যাপ্লিকেশন উদাহরণে উচ্চ অগ্রাধিকার বার্তা পাঠানোর আগে আপনার যাচাই করা উচিত যে বিজ্ঞপ্তিগুলি সক্ষম করা হয়েছে৷

  • বিজ্ঞপ্তি পোস্ট করার আগে বাড়িতে ফোন করবেন না। কারণ অ্যান্ড্রয়েড মোবাইল জনসংখ্যার একটি ছোট অংশ উচ্চ লেটেন্সি নেটওয়ার্কে রয়েছে, একটি বিজ্ঞপ্তি প্রদর্শন করার আগে আপনার সার্ভারে একটি সংযোগ খোলা এড়িয়ে চলুন৷ অনুমোদিত প্রক্রিয়াকরণের সময় শেষ হওয়ার আগে সার্ভারে ফিরে কল করা উচ্চ লেটেন্সি নেটওয়ার্কের ব্যবহারকারীদের জন্য ঝুঁকিপূর্ণ হতে পারে। পরিবর্তে, FCM বার্তায় বিজ্ঞপ্তি বিষয়বস্তু অন্তর্ভুক্ত করুন এবং অবিলম্বে এটি প্রদর্শন করুন৷ আপনার যদি Android-এ অতিরিক্ত ইন-অ্যাপ সামগ্রীর জন্য সিঙ্ক করার প্রয়োজন হয়, আপনি পটভূমিতে এটি পরিচালনা করার জন্য WorkManager- এর সাথে একটি কাজ নির্ধারণ করতে পারেন।