অডিও ফোকাস

লজিক্যাল স্ট্রীম শুরু করার আগে, একটি অ্যাপ লজিক্যাল স্ট্রিমের জন্য ব্যবহৃত একই অডিও অ্যাট্রিবিউট ব্যবহার করে অডিও ফোকাসের অনুরোধ করে। স্বয়ংচালিত ব্যবহারের ক্ষেত্রে প্রত্যাশিতভাবে কার্য সম্পাদন করার জন্য অ্যাপটিকে অবশ্যই ফোকাস লসকে সম্মান করতে হবে।

ফোকাস অনুরোধ পাঠানোর সুপারিশ করা হয়, এটি সিস্টেম দ্বারা প্রয়োগ করা হয় না। অতএব, প্রাথমিক অডিও কন্ট্রোল মেকানিজমের পরিবর্তে প্লেব্যাকের সময় পরোক্ষভাবে নিয়ন্ত্রণ এবং সংঘর্ষ এড়াতে ফোকাসকে একটি উপায় হিসাবে বিবেচনা করুন। অডিও সাবসিস্টেম পরিচালনার জন্য গাড়ির ফোকাস সিস্টেমের উপর নির্ভর করা উচিত নয়।

মিথস্ক্রিয়া ফোকাস করুন

AAOS সমর্থন করার জন্য, অনুরোধের CarAudioContext এবং বর্তমান ফোকাস হোল্ডারদের মধ্যে পূর্বনির্ধারিত মিথস্ক্রিয়াগুলির উপর ভিত্তি করে অডিও ফোকাস অনুরোধগুলি পরিচালনা করা হয়। তিন ধরনের মিথস্ক্রিয়া আছে:

  • এক্সক্লুসিভ
  • প্রত্যাখ্যান করুন
  • সমসাময়িক

একচেটিয়া মিথস্ক্রিয়া

এটি Android এর সাথে সবচেয়ে বেশি ব্যবহৃত মিথস্ক্রিয়া মডেল।

একচেটিয়া মিথস্ক্রিয়ায়, শুধুমাত্র একটি অ্যাপকে একবারে ফোকাস ধরে রাখার অনুমতি দেওয়া হয়। অতএব, একটি ইনকামিং ফোকাস অনুরোধ ফোকাস মঞ্জুর করা হয় যখন বিদ্যমান ফোকাস হোল্ডার ফোকাস হারায়। যেহেতু উভয় অ্যাপই মিডিয়া চালায়, শুধুমাত্র একটি অ্যাপকে ফোকাস ধরে রাখার অনুমতি দেওয়া হয়। ফলস্বরূপ, সদ্য শুরু হওয়া অ্যাপের ফোকাস অনুরোধটি AUDIOFOCUS_REQUEST_GRANTED সাথে ফেরত দেওয়া হয় যখন অ্যাপটি বর্তমানে মিউজিক বাজছে এমন একটি ক্ষতির স্থিতি সহ ফোকাস পরিবর্তন ইভেন্ট গ্রহণ করে যা অনুরোধের প্রকারের সাথে মিলে যায়।

মিথস্ক্রিয়া প্রত্যাখ্যান করুন

প্রত্যাখ্যান মিথস্ক্রিয়াগুলির সাথে, আগত অনুরোধটি সর্বদা প্রত্যাখ্যান করা হয়। উদাহরণস্বরূপ, যখন একটি কল চলছে তখন সঙ্গীত চালানোর চেষ্টা করা। এই ক্ষেত্রে, যদি ডায়লার একটি কলের জন্য অডিও ফোকাস ধরে রাখে এবং একটি দ্বিতীয় অ্যাপ মিউজিক চালানোর জন্য ফোকাস করার অনুরোধ করে, তাহলে মিউজিক অ্যাপ অনুরোধের জবাবে AUDIOFOCUS_REQUEST_FAILED পায়। যেহেতু ফোকাস অনুরোধ প্রত্যাখ্যান করা হয়েছে, বর্তমান ফোকাস ধারকের কাছে কোনো ফোকাস ক্ষতি পাঠানো হয় না।

সমসাময়িক মিথস্ক্রিয়া

AAOS-এর জন্য অনন্য হল সমবর্তী মিথস্ক্রিয়া। এটি গাড়িতে অডিও ফোকাসের অনুরোধ করে এমন অ্যাপগুলিকে অন্যান্য অ্যাপের সাথে একযোগে ফোকাস ধরে রাখার ক্ষমতা দেয়। একটি সমসাময়িক মিথস্ক্রিয়া সঞ্চালনের জন্য, নিম্নলিখিত শর্তগুলি অবশ্যই পূরণ করতে হবে। দ্য:

  • ইনকামিং ফোকাস অনুরোধ অবশ্যই AudioManager এর জন্য জিজ্ঞাসা করবে৷AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK

  • বর্তমান ফোকাস হোল্ডার সেট করে না PauseWhenDucked(সত্য)

  • বর্তমান ফোকাস ধারক হাঁসের ইভেন্টগুলি গ্রহণ না করার জন্য বেছে নেয়

যদি এই মানদণ্ডগুলি পূরণ করা হয়, তাহলে ফোকাস অনুরোধটি AUDIOFOCUS_REQUEST_GRANTED এর সাথে ফিরে আসে যখন বর্তমান ফোকাস ধারকের ফোকাসে কোনো পরিবর্তন নেই৷ যাইহোক, যদি বর্তমান ফোকাস ধারক হাঁসের ইভেন্টগুলি গ্রহণ করতে বা হাঁসের সময় বিরতি দিতে বেছে নেয়, তবে বর্তমান ফোকাস ধারক ফোকাস হারায়, যেমনটি একটি একচেটিয়া মিথস্ক্রিয়ায় ঘটে।

সমসাময়িক প্রবাহ পরিচালনা করা

যদিও সমসাময়িক মিথস্ক্রিয়াটির অনেকগুলি ব্যবহার রয়েছে, আউটপুট ডিভাইস জুড়ে হার্ডওয়্যার স্তরে মিশ্রণ এবং হাঁস করার ক্ষেত্রে সতর্ক থাকুন। আমরা দৃঢ়ভাবে সুপারিশ করছি যে CarAudioContext এর যেগুলি একসাথে চালানোর অনুমতি দেওয়া হয় সেগুলিকে বিভিন্ন আউটপুট ডিভাইসে রাউট করা উচিত।

সমসাময়িক স্ট্রীমগুলির জন্য পৃথক আউটপুট ডিভাইস থাকার মাধ্যমে, এটি HAL-কে তাদের মিশ্রিত করার আগে একটি স্ট্রীমকে হাঁস করতে বা গাড়ির বিভিন্ন স্পিকারের কাছে শারীরিক স্ট্রিমগুলিকে রুট করতে সক্ষম করে। যদি লজিক্যাল স্ট্রীমগুলি অ্যান্ড্রয়েডের মধ্যে মিশ্রিত হয়, তবে লাভগুলি অপরিবর্তিত থাকে এবং একই শারীরিক স্ট্রিমের অংশ হিসাবে বিতরণ করা হয়।

উদাহরণস্বরূপ, যখন নেভিগেশন এবং মিডিয়া একই সাথে বিতরণ করা হয়, তখন মিডিয়া স্ট্রিমের জন্য লাভ সাময়িকভাবে হ্রাস করা যেতে পারে (বা, ডকড) যাতে নেভিগেশন নির্দেশাবলী আরও স্পষ্টভাবে শোনা যায়। বিকল্পভাবে, নেভিগেশন স্ট্রীমটি ড্রাইভার সাইড স্পীকারে রুট করা যেতে পারে যখন মিডিয়া বাকি কেবিন জুড়ে চলতে থাকে।

মিথস্ক্রিয়া ম্যাট্রিক্স

নীচের টেবিলটি CarAudioService দ্বারা সংজ্ঞায়িত মিথস্ক্রিয়া ম্যাট্রিক্স দেখায়। প্রতিটি সারি বর্তমান ফোকাস হোল্ডারের CarAudioContext প্রতিনিধিত্ব করে এবং প্রতিটি কলাম আগত অনুরোধের প্রতিনিধিত্ব করে।

উদাহরণ স্বরূপ, যখন একটি মিউজিক মিডিয়া অ্যাপ ফোকাস ধরে রাখে যেমন একটি নেভিগেশন অ্যাপ ফোকাসের অনুরোধ করে, তখন ম্যাট্রিক্স নির্দেশ করে যে দুটি মিথস্ক্রিয়া একসাথে চলতে পারে, অনুমান করে যে সমসাময়িক ইন্টারঅ্যাকশনের অন্যান্য মানদণ্ড পূরণ হয়েছে।

একযোগে মিথস্ক্রিয়াগুলির কারণে, একাধিক ফোকাস ধারক থাকা সম্ভব। এই ক্ষেত্রে, কোন ইন্টারঅ্যাকশন প্রয়োগ করতে হবে তা নির্ধারণ করার আগে একটি ইনকামিং ফোকাস অনুরোধ বর্তমান ফোকাস ধারকদের প্রত্যেকের সাথে তুলনা করা হয়। এই ক্ষেত্রে, সবচেয়ে রক্ষণশীল মিথস্ক্রিয়া জয়। প্রত্যাখ্যান, তারপর একচেটিয়া, এবং অবশেষে সমসাময়িক।

চিত্র 1. অডিও ফোকাস ইন্টারঅ্যাকশন ম্যাট্রিক্স।

অ্যান্ড্রয়েড 11-এ, ব্যবহারকারীদের নেভিগেশন এবং ফোন কলগুলির মধ্যে মিথস্ক্রিয়া আচরণ পরিবর্তন করার অনুমতি দেওয়ার জন্য একটি নতুন ব্যবহারকারী সেটিং চালু করা হয়েছিল। সেট করা হলে, android.car.KEY_AUDIO_FOCUS_NAVIGATION_REJECTED_DURING_CALL ইনকামিং NAVIGATION ফোকাস অনুরোধ এবং বর্তমান CALL ফোকাস হোল্ডারদের সমবর্তী থেকে প্রত্যাখ্যানের মধ্যে মিথস্ক্রিয়া পরিবর্তন করে। যদি কোনও ব্যবহারকারী পছন্দ করেন যে নেভিগেশন নির্দেশাবলী কোনও কলে বাধা না দেয়, তবে তারা সেটিংটি সক্ষম করতে পারে। এটি ব্যবহারকারীর জন্য অব্যাহত থাকে এবং গতিশীলভাবে সেট করা যেতে পারে যাতে পরবর্তী ফোকাস অনুরোধগুলি নতুন সেটিংকে সম্মান করে।

বিলম্বযোগ্য অডিও ফোকাস

অ্যান্ড্রয়েড 11-এ, AAOS বিলম্বযোগ্য অডিও ফোকাসের অনুরোধের জন্য সমর্থন যোগ করেছে। এটি অ-ক্ষণস্থায়ী ফোকাস অনুরোধগুলিকে বিলম্বিত করার অনুমতি দেয় যখন বর্তমান ফোকাস হোল্ডারদের সাথে তাদের মিথস্ক্রিয়া সাধারণত তাদের প্রত্যাখ্যান করা হয়। একবার ফোকাস পরিবর্তনের ফলে এমন একটি অবস্থায় পরিণত হয় যেখানে বিলম্বিত অনুরোধ ফোকাস পেতে পারে, অনুরোধটি মঞ্জুর করা হয়।

বিলম্বিত অডিও ফোকাস অনুরোধের জন্য নিয়ম

  • অ ক্ষণস্থায়ী অনুরোধ শুধুমাত্র. একটি বিলম্বিত অনুরোধ শুধুমাত্র অ-ক্ষণস্থায়ী উত্সের জন্য করা যেতে পারে যাতে এটি প্রাসঙ্গিক হওয়ার অনেক পরে একটি ক্ষণস্থায়ী সাউন্ড প্লে না হয়।

  • একবারে শুধুমাত্র একটি অনুরোধ বিলম্বিত হতে পারে। ইতিমধ্যে একটি বিলম্বিত অনুরোধ থাকাকালীন যদি একটি বিলম্বযোগ্য অনুরোধ করা হয়, তবে মূল বিলম্বিত অনুরোধটি একটি AUDIOFOCUS_LOSS পরিবর্তন ইভেন্ট পায় এবং নতুন অনুরোধটি AUDIOFOCUS_REQUEST_DELAYED এর একটি সমলয় প্রতিক্রিয়া পায়।

  • বিলম্বযোগ্য অনুরোধগুলির একটি OnAudioFocusChangeListener থাকতে হবে একবার একটি অনুরোধ বিলম্বিত হলে, শ্রোতা অনুরোধকারীকে অবহিত করার জন্য ব্যবহার করা হয় যখন অনুরোধটি শেষ পর্যন্ত মঞ্জুর করা হয় ( AUDIOFOCUS_GAIN ), অথবা যদি এটি পরে প্রত্যাখ্যান করা হয় ( AUDIOFOCUS_LOSS )।

বিলম্বিত ফোকাস অনুরোধ

বিলম্বিত হতে পারে এমন একটি অনুরোধ তৈরি করতে:

  1. AudioFocusRequest.Builder#setAcceptsDelayedFocusGain ব্যবহার করুন।

    mMediaWithDelayedFocusListener = new MediaWithDelayedFocusListener();
    
    mDelayedFocusRequest = new AudioFocusRequest
         .Builder(AudioManager.AUDIOFOCUS_GAIN)
         .setAudioAttributes(mMusicAudioAttrib)
         .setOnAudioFocusChangeListener(mMediaWithDelayedFocusListener)
         .setForceDucking(false)
         .setWillPauseWhenDucked(false)
         .setAcceptsDelayedFocusGain(true)
         .build();
    
  2. অনুরোধ করার সময়, AUDIOFOCUS_REQUEST_DELAYED প্রতিক্রিয়া পরিচালনা করুন:

    int delayedFocusRequestResults = mAudioManager.requestAudioFocus(mDelayedFocusRequest);
    if (delayedFocusRequestResults == AudioManager.AUDIOFOCUS_REQUEST_GRANTED) {
        // start audio playback
        return;
    }
    if (delayedFocusRequestResults == AudioManager.AUDIOFOCUS_REQUEST_DELAYED) {
         // audio playback delayed to audio focus listener
         return;
    }
    
  3. যখন অনুরোধ বিলম্বিত হয়, ফোকাস শ্রোতা ফোকাসে পরিবর্তনগুলি পরিচালনা করে:

    private final class MediaWithDelayedFocusListener implements
    OnAudioFocusChangeListener {
           @Override
           public void onAudioFocusChange(int focusChange) {
               synchronized (mLock) {
                   switch (focusChange) {
                       case AudioManager.AUDIOFOCUS_GAIN:
                           … // Start focus playback
                       case AudioManager.AUDIOFOCUS_LOSS_TRANSIENT:
                           … // Pause media transiently
                       case AudioManager.AUDIOFOCUS_LOSS:
                           … // Stop media
    

মাল্টি-জোন ফোকাস ব্যবস্থাপনা

একাধিক অডিও জোন সহ যানবাহনের জন্য, প্রতিটি জোনের জন্য অডিও ফোকাস স্বাধীনভাবে পরিচালিত হয়। যেমন, একটি জোনের অনুরোধ অন্য জোনে কী ফোকাস ধরে রাখে তা বিবেচনায় নেয় না, বা এটি অন্য জোনের ফোকাস হোল্ডারদের ফোকাস হারাতে দেয় না। এটির সাহায্যে, মূল কেবিনের ফোকাসটি পিছনের সিটের বিনোদন ব্যবস্থা থেকে আলাদাভাবে পরিচালনা করা যেতে পারে, যার ফলে একটি জোনে ফোকাসে অন্য জায়গায় পরিবর্তনের মাধ্যমে অডিও প্লেব্যাক বাধাগ্রস্ত হয় না।

সমস্ত অ্যাপের জন্য, CarAudioService স্বয়ংক্রিয়ভাবে ফোকাস পরিচালনা করে। একটি ফোকাস অনুরোধের অডিও জোন তার সংশ্লিষ্ট UserId বা UID দ্বারা নির্ধারিত হয় (বিশদ বিবরণের জন্য, মাল্টি-জোন অডিও রাউটিং দেখুন)।

একযোগে একাধিক অঞ্চল থেকে অডিও অনুরোধ করুন

যদি কোনো অ্যাপ একসাথে একাধিক জোনে অডিও চালাতে চায়, তাহলে তাকে অবশ্যই বান্ডেলে AUDIOFOCUS_EXTRA_REQUEST_ZONE_ID অন্তর্ভুক্ত করে প্রতিটি জোনের জন্য ফোকাস করার অনুরোধ করতে হবে:

//Create attribute with bundle and AUDIOFOCUS_EXTRA_REQUEST_ZONE_ID
Bundle bundle = new Bundle();
bundle.putInt(CarAudioManager.AUDIOFOCUS_EXTRA_REQUEST_ZONE_ID,
               zoneId);

AudioAttributes attributesWithZone = new AudioAttributes.Builder()
     .setUsage(AudioAttributes.USAGE_MEDIA)
     .addBundle(bundle)
     .build();

//Create focus request using built attributesWithZone

এই বান্ডেল প্যারামিটার অনুরোধকারীকে স্বয়ংক্রিয় অডিও জোন ম্যাপিংগুলিকে ওভাররাইড করার পরিবর্তে নির্দিষ্ট জোন আইডি ব্যবহার করার অনুমতি দেয়৷ অতএব, একটি অ্যাপ বিভিন্ন অডিও জোনের জন্য পৃথক অনুরোধ জারি করতে পারে।

HAL অডিও ফোকাস

অ্যান্ড্রয়েড 11 থেকে শুরু করে, HAL বহিরাগত স্ট্রিমগুলির পক্ষ থেকে ফোকাস করার অনুরোধ করতে সক্ষম। ঐচ্ছিক হলেও, বাহ্যিক শব্দগুলিকে অ্যান্ড্রয়েড ইকোসিস্টেমে সর্বোত্তম অংশগ্রহণকারী হতে এবং একটি নির্বিঘ্ন ব্যবহারকারীর অভিজ্ঞতা প্রদান করতে সক্ষম করার জন্য এই APIগুলির ব্যবহারকে অত্যন্ত উৎসাহিত করা হয়।

কোন শব্দগুলিকে অগ্রাধিকার দেওয়া উচিত তা HAL চূড়ান্ত সিদ্ধান্ত নেয়৷ এই পরিমাণে, HAL-কে অডিও ফোকাস দেওয়া হোক বা না হোক, জরুরী এবং নিরাপত্তা সংক্রান্ত সমালোচনামূলক শব্দগুলি বাজানো উচিত এবং HAL অডিও ফোকাস হারাতে পারলেও যথাযথভাবে বাজানো উচিত। সরকারী প্রবিধান দ্বারা প্রয়োজনীয় যেকোনো শব্দের ক্ষেত্রেও একই কথা প্রযোজ্য।

জরুরী বা নিরাপত্তা-সমালোচনা শব্দগুলি বাজানোর সময় HAL-এর উচিত সক্রিয়ভাবে Android স্ট্রীমগুলিকে নিঃশব্দ করা যাতে সেগুলি স্পষ্টভাবে শোনা যায়।

অডিও কন্ট্রোল@2.0

অডিওকন্ট্রোল এইচএএল-এর সংস্করণ 2.0 এই নতুন APIগুলিকে প্রবর্তন করে:

API উদ্দেশ্য
IAudioControl#registerFocusListener অডিও কন্ট্রোল HAL-এর সাথে IFocusListener এর একটি উদাহরণ নিবন্ধন করে। এই শ্রোতা HAL কে অনুরোধ করতে এবং অডিও ফোকাস ত্যাগ করতে সক্ষম করে। HAL শ্রোতাকে নিবন্ধনমুক্ত করতে Android দ্বারা ব্যবহার করার জন্য একটি ICloseHandle উদাহরণ প্রদান করে।
IAudioControl#onAudioFocusChange প্রাথমিক ফোকাস অনুরোধের প্রতিক্রিয়া সহ IFocusListener মাধ্যমে HAL দ্বারা করা ফোকাস অনুরোধের অবস্থার পরিবর্তনের HAL-কে অবহিত করে।
IFocusListener#requestAudioFocus HAL-এর পক্ষ থেকে একটি নির্দিষ্ট ব্যবহার, জোন আইডি এবং ফোকাস লাভ টাইপের জন্য ফোকাস করার অনুরোধ।
IFocusListener#abandonAudioFocus নির্দিষ্ট ব্যবহার এবং জোন আইডির জন্য বিদ্যমান HAL ফোকাস অনুরোধগুলি পরিত্যাগ করে৷

HAL-এর একই সময়ে একাধিক ফোকাস অনুরোধ থাকতে পারে, কিন্তু প্রতি ব্যবহার এবং জোন আইডি জোড়ার জন্য একটি অনুরোধের মধ্যে সীমাবদ্ধ। অ্যান্ড্রয়েড অনুমান করে যে একবার অনুরোধ করা হলে HAL অবিলম্বে একটি ব্যবহারের জন্য শব্দ বাজানো শুরু করে এবং এটি ফোকাস ত্যাগ না করা পর্যন্ত এটি চালিয়ে যায়।

registerFocusListener ব্যতীত, ফোকাস অনুরোধ প্রক্রিয়া করার সময় Android যাতে HAL-কে বিলম্ব না করে তা নিশ্চিত করার জন্য এই অনুরোধগুলি oneway । নিরাপত্তা-সমালোচনামূলক শব্দ বাজানোর আগে HAL-এর ফোকাস পাওয়ার জন্য অপেক্ষা করা উচিত নয়IAudioControl#onAudioFocusChange মাধ্যমে অডিও ফোকাসের পরিবর্তনগুলি শুনতে এবং প্রতিক্রিয়া জানানো HAL-এর পক্ষে ঐচ্ছিক৷

OEM গাড়ী অডিও ফোকাস সেবা

অ্যান্ড্রয়েড 14-এ, AAOS গাড়ির কিছু উপাদানের জন্য কনফিগারযোগ্যতা সক্ষম করতে গাড়ি OEM প্লাগইন পরিষেবা চালু করেছে। কার অডিও প্লাগইন পরিষেবার জন্য, প্লাগইন পরিষেবা OEM-গুলিকে গাড়ির অডিও পরিষেবা দ্বারা বাধা দেওয়া ফোকাস অনুরোধগুলি পরিচালনা করার অনুমতি দেয়৷ এটি নিয়ম ও প্রবিধান দ্বারা প্রয়োজনীয় ফোকাস পরিচালনার ক্ষেত্রে OEM-কে আরও নমনীয়তা দেয়। যেমন, অডিও ফোকাস মিথস্ক্রিয়া নির্মাতাদের মধ্যে এবং অঞ্চল থেকে অঞ্চলে আলাদা হতে পারে। অডিও ফোকাসের মূল ভিত্তিটি এখনও ধারণ করে, যে অ্যাপগুলিকে এখনও ব্যবহারকারীর অভিজ্ঞতা বাড়ানোর জন্য আরও ভাল পরিচালনা অডিওর জন্য ফোকাসের অনুরোধ করা উচিত। সাধারণভাবে, কিছু নিয়ম এখনও অ্যাপের অডিও ফোকাস অনুরোধের জন্য প্রযোজ্য:

  • কোনো দাঁড়ানো ছাড়াই, উচ্চ অগ্রাধিকার অডিও ফোকাস (একটি ফোন কল, জরুরী সতর্কতা, বা নিরাপত্তা বিজ্ঞপ্তি সহ) অ্যাপগুলি অস্থায়ীভাবে বা স্থায়ীভাবে অডিও ফোকাস পেতে সক্ষম হওয়া উচিত।

  • যখন একটি মিডিয়া ফোকাস সক্রিয় থাকে:

    • কল ব্যবহারের ফোকাস অনুরোধকারী অ্যাপগুলি একযোগে বা একচেটিয়াভাবে কল গ্রহণ করতে সক্ষম হওয়া উচিত।

    • ন্যাভিগেশন ব্যবহারের ফোকাসের অনুরোধকারী অ্যাপগুলি একযোগে বা একচেটিয়াভাবে নেভিগেশন ফোকাস পেতে সক্ষম হওয়া উচিত।

    • অ্যাসিস্ট্যান্ট ব্যবহারের ফোকাস অনুরোধকারী অ্যাপগুলি একইসঙ্গে বা একচেটিয়াভাবে ব্যবহারের ফোকাস পেতে সক্ষম হওয়া উচিত।

  • উচ্চ অগ্রাধিকার অডিও ফোকাস (একটি ফোন কল, জরুরী সতর্কতা, বা নিরাপত্তা বিজ্ঞপ্তি সহ) অ্যাপ্লিকেশানগুলি সক্রিয় থাকা অবস্থায়, যেকোন আগত বিলম্বিত অডিও ফোকাস অনুরোধ প্রয়োজন অনুসারে মঞ্জুর করা উচিত বা বিলম্বিত করা উচিত।

উপরের পরামর্শগুলি সম্পূর্ণ না হলেও, তারা কোনো সক্রিয় উচ্চ অগ্রাধিকারের শব্দ না থাকলে ফোকাস পেতে ফোকাস করার জন্য অনুরোধ করা অ্যাপগুলিকে সাহায্য করতে পারে। উচ্চ অগ্রাধিকারের শব্দগুলি সক্রিয় থাকা সত্ত্বেও, বিলম্বিত ফোকাস অনুরোধগুলিকে এখনও সম্মান করা উচিত এবং উচ্চ অগ্রাধিকারের শব্দ বন্ধ হয়ে গেলে ফোকাস পেতে সক্ষম হওয়া উচিত।