ব্যবহারকারী হোম স্ক্রিনে ফিরে আসার পরে বা অন্য অ্যাপে স্যুইচ করার পরে অডিও চালায় এমন টিভি অ্যাপগুলি তা চালিয়ে যেতে পারে। এটি করতে, অ্যাপটিকে অবশ্যই হোম স্ক্রিনে একটি Now Playing কার্ড প্রদান করতে হবে৷ এই কার্ডটি ব্যবহারকারীদের বুঝতে দেয় যে অডিওটি কোথা থেকে আসছে এবং মিডিয়া প্লেব্যাক নিয়ন্ত্রণ করতে আপনার অ্যাপে ফিরে আসে।
যখনই একটি সক্রিয় MediaSession
উপস্থিত থাকে, Android ফ্রেমওয়ার্ক হোম স্ক্রিনে একটি Now Playing কার্ড প্রদর্শন করে৷ কার্ডটিতে মিডিয়া মেটাডেটা যেমন অ্যালবাম আর্ট, শিরোনাম এবং অ্যাপ আইকন অন্তর্ভুক্ত থাকে। ব্যবহারকারী কার্ড নির্বাচন করলে, সিস্টেম অ্যাপটি খোলে।
এখন কার্ড খেলা
আপনি একটি মিডিয়া সেশন বাস্তবায়ন করার পরে, সেশনটিকে সক্রিয় করতে সেট করুন এবং অডিও ফোকাসের অনুরোধ করুন, Now Playing কার্ডটি উপস্থিত হবে৷
দ্রষ্টব্য: Now Playing কার্ড শুধুমাত্র FLAG_HANDLES_TRANSPORT_CONTROLS
পতাকা সেট সহ একটি মিডিয়া সেশনের জন্য প্রদর্শন করে৷ এই পতাকাটি API স্তর 26-এ অবচয় করা হয়েছে। যাইহোক, এই পতাকাটি এখনও পিছনের সামঞ্জস্যের জন্য পুরানো ডিভাইসগুলিতে প্রয়োজন হতে পারে।
যখন একটি setActive(false)
কল মিডিয়া সেশন নিষ্ক্রিয় করে বা যখন অন্য অ্যাপ মিডিয়া প্লেব্যাক শুরু করে তখন কার্ডটি লঞ্চার স্ক্রীন থেকে সরানো হয়। যদি প্লেব্যাক সম্পূর্ণরূপে বন্ধ হয়ে যায় এবং কোনো সক্রিয় মিডিয়া না থাকে, তাহলে অবিলম্বে মিডিয়া সেশনটি নিষ্ক্রিয় করুন। যদি প্লেব্যাক বিরাম দেওয়া হয়, তবে বিলম্বের পরে মিডিয়া সেশনটি নিষ্ক্রিয় করুন, সাধারণত 5 থেকে 30 মিনিটের মধ্যে৷
কার্ড আপডেট করুন
যখনই আপনার অ্যাপ MediaSession
এ প্লেব্যাক অবস্থা আপডেট করে, বর্তমান মিডিয়ার অবস্থা দেখানোর জন্য Now Playing কার্ড আপডেট হয়। এটি কীভাবে করবেন তা শিখতে, প্লেব্যাক অবস্থা আপডেট করুন দেখুন।
একইভাবে, বর্তমান মিডিয়া, যেমন শিরোনাম, সাবটাইটেল এবং বিভিন্ন আইকন সম্পর্কে তথ্য প্রদান করার জন্য আপনার অ্যাপ MediaMetadata
আপডেট করতে পারে। এটি কীভাবে করবেন তা শিখতে, মিডিয়া মেটাডেটা আপডেট করুন দেখুন।
ব্যবহারকারীর কর্মে সাড়া দিন
ব্যবহারকারী যখন Now Playing কার্ড নির্বাচন করেন, তখন সিস্টেমটি সেশনের মালিক অ্যাপটি খোলে। যদি আপনার অ্যাপ setSessionActivity()
এর জন্য একটি PendingIntent
প্রদান করে, তাহলে সিস্টেমটি আপনার নির্দিষ্ট করা কার্যকলাপটি চালু করে, যেমনটি নিম্নলিখিত কোড স্নিপেটে দেখানো হয়েছে। যদি না হয়, ডিফল্ট সিস্টেম অভিপ্রায় খোলে। আপনার নির্দিষ্ট করা কার্যকলাপটি অবশ্যই প্লেব্যাক নিয়ন্ত্রণ প্রদান করবে যা ব্যবহারকারীদের প্লেব্যাক থামাতে বা বন্ধ করতে দেয়।
কোটলিন
val pi: PendingIntent = Intent(context, MyActivity::class.java).let { intent -> PendingIntent.getActivity( context, 99 /*request code*/, intent, PendingIntent.FLAG_UPDATE_CURRENT ) } session.setSessionActivity(pi)
জাভা
Intent intent = new Intent(context, MyActivity.class); PendingIntent pi = PendingIntent.getActivity(context, 99 /*request code*/, intent, PendingIntent.FLAG_UPDATE_CURRENT); session.setSessionActivity(pi);
গৃহীত ব্যবহারের ক্ষেত্রে
Now Playing কার্ডটি শুধুমাত্র সেই ক্ষেত্রেই ব্যবহার করা উচিত যেখানে ব্যবহারকারী আপনার অ্যাপটি ছেড়ে যাওয়ার সময় ব্যাকগ্রাউন্ডে অডিও চালিয়ে যাওয়ার আশা করেন৷ একটি গেমের ভিডিও প্লেব্যাক বা সাউন্ড সবসময় বিরতি দেওয়া উচিত, যদি না আপনার অ্যাপটি ছবির সাথে একীভূত এবং সঙ্গতিপূর্ণ হয়।