অ্যান্ড্রয়েড ফোন, গাড়ি, টিভি এবং হেডফোনে Google অ্যাসিস্ট্যান্টের সাথে ভয়েসের মাধ্যমে ইন্টারঅ্যাক্ট করা মিডিয়া অ্যাপগুলি অ্যান্ড্রয়েড মিডিয়া সেশন API দ্বারা চালিত এবং মিডিয়া অ্যাকশন ব্যবহার করে। মিডিয়া কর্ম জীবনচক্র অনুসরণ করা কঠিন হতে পারে. এমনকি অনুসন্ধান অনুরোধ থেকে একটি সাধারণ নাটকের অনেক মধ্যবর্তী পদক্ষেপ রয়েছে যেখানে কিছু ভুল হতে পারে, যেমন সরলীকৃত টাইমলাইনে দেখানো হয়েছে:
মিডিয়া কন্ট্রোলার টেস্ট (MCT) অ্যাপ আপনাকে অ্যান্ড্রয়েডে মিডিয়া প্লেব্যাকের জটিলতা পরীক্ষা করতে দেয় এবং আপনার মিডিয়া সেশন বাস্তবায়ন যাচাই করতে সাহায্য করে।
MCT আপনার অ্যাপের MediaController
সম্পর্কে তথ্য প্রকাশ করে, যেমন এর PlaybackState
এবং মেটাডেটা, এবং ইন্টার-অ্যাপ মিডিয়া নিয়ন্ত্রণ পরীক্ষা করতে ব্যবহার করা যেতে পারে। এমসিটি একটি যাচাইকরণ পরীক্ষার কাঠামোও অন্তর্ভুক্ত করে যা আপনাকে আপনার QA পরীক্ষা স্বয়ংক্রিয় করতে দেয়।
MCT ব্যবহার করার জন্য, আপনার অ্যাপের একটি মিডিয়া ব্রাউজার পরিষেবা থাকতে হবে এবং আপনাকে অবশ্যই MCT-কে এটির সাথে সংযোগ করার অনুমতি দিতে হবে। আরও তথ্যের জন্য একটি মিডিয়া ব্রাউজার পরিষেবা তৈরি করা দেখুন।
MCT শুরু হচ্ছে
![এমসিটি লঞ্চ পৃষ্ঠা](https://developer.android.com/static/media/images/MCT/MCT-Launch-Screen.png?authuser=0&hl=bn)
আপনি যখন MCT চালু করবেন, তখন আপনি দুটি তালিকা দেখতে পাবেন:
- সক্রিয় মিডিয়া সেশন - আপনি MCT চালু করার সময় এই তালিকাটি প্রাথমিকভাবে খালি থাকে এবং আপনি "কোনও মিডিয়া অ্যাপস পাওয়া যায়নি। সক্রিয় মিডিয়া সেশনগুলির জন্য স্ক্যান করার জন্য বিজ্ঞপ্তি শ্রোতার অনুমতি প্রয়োজন।" অনুমতি স্ক্রীনে যেতে সেটিংসে ক্লিক করুন এবং MCT-এর জন্য অনুমতি সক্ষম করুন৷
- MediaBrowserService বাস্তবায়ন - এই তালিকাটি এমন অ্যাপ দেখায় যেগুলি একটি মিডিয়া ব্রাউজার পরিষেবা প্রয়োগ করেছে৷ আপনি যদি একটি মিডিয়া ব্রাউজার পরিষেবা প্রয়োগ করে থাকেন, তাহলে আপনার অ্যাপটি এই তালিকায় উপস্থিত হবে, কিন্তু আপনি শুধুমাত্র MCT ব্যবহার করতে পারবেন যদি আপনি আপনার অ্যাপটিকে সমস্ত সংযোগ গ্রহণ করার জন্য কনফিগার করেন বা MCT-কে অনুমোদিত তালিকাভুক্ত করেন। আরও তথ্যের জন্য onGetRoot() এর সাথে ক্লায়েন্ট সংযোগ নিয়ন্ত্রণ করা দেখুন।
ম্যানুয়ালি একটি ফোন অ্যাপ পরীক্ষা করা হচ্ছে
আপনি MCT-কে আপনার অ্যাপের মিডিয়া ব্রাউজার পরিষেবার সাথে সংযোগ করার অনুমতি দিলে, আপনার অ্যাপটি মিডিয়া ব্রাউজার পরিষেবা তালিকা বাস্তবায়নের তালিকায় প্রদর্শিত হবে। সেখানে এটি খুঁজুন এবং ব্যাকগ্রাউন্ডে আপনার অ্যাপ শুরু করতে কন্ট্রোল এ ক্লিক করুন।
অন্যথায়, আপনাকে প্রথমে ব্যাকগ্রাউন্ডে আপনার অ্যাপটি নিজেই শুরু করতে হবে, তারপর সক্রিয় মিডিয়া সেশনের তালিকায় প্রদর্শিত হলে নিয়ন্ত্রণে ক্লিক করুন।
পরীক্ষার প্রস্তুতি এবং খেলা
যখন MCT আপনার অ্যাপ নিয়ন্ত্রণ করতে শুরু করে, তখন এটি অ্যাপের বর্তমান সেশনের মেটাডেটা প্রদর্শন করে: বর্তমানে নির্বাচিত মিডিয়া এবং সেশনটি পরিচালনা করার জন্য প্রস্তুত করা ক্রিয়া।
![কন্ট্রোল পেজ](https://developer.android.com/static/media/images/MCT/audio-focus.png?authuser=0&hl=bn)
MCT কন্ট্রোল পৃষ্ঠার শীর্ষে একটি ড্রপ-ডাউন মেনু রয়েছে যেখানে আপনি অনুসন্ধান , URI , Media ID , বা None নির্বাচন করতে পারেন, একটি পাঠ্য ক্ষেত্র সহ অনুসন্ধান, URI, বা মিডিয়া আইডির সাথে যুক্ত ইনপুট ডেটা নির্দিষ্ট করতে যদি আপনি নির্বাচন করেন সেই বিকল্পগুলির মধ্যে একটি।
টেক্সট ফিল্ডের ঠিক নীচে প্রস্তুত এবং প্লে বোতামগুলি উপযুক্ত কলগুলি সম্পাদন করে ( onPrepare()
, onPrepareFromSearch()
, onPrepareFromUri()
, onPrepareFromMediaId()
, onPlay()
, onPlayFromSearch()
onPlayFromUri()
, onPlayFromMediaId()
) কিসের উপর নির্ভর করে। আপনি নির্বাচিত কর্ম.
অডিও ফোকাস পরীক্ষা করা হচ্ছে
একটি ভাল আচরণ করা মিডিয়া অ্যাপ অডিও ফোকাস পরিচালনা করতে সক্ষম হওয়া উচিত। আপনি আপনার অ্যাপের পাশে অন্য একটি অডিও অ্যাপ চালিয়ে অডিও ফোকাস পরীক্ষা করতে পারেন। MCT নিয়ন্ত্রণ পৃষ্ঠায় একটি বোতাম রয়েছে যা অডিও ফোকাসকে অনুরোধ করে এবং প্রকাশ করে।
অডিও ফোকাস পরীক্ষা করতে, এই পদক্ষেপগুলি অনুসরণ করুন:
-
AUDIOFOCUS_GAIN
,AUDIOFOCUS_GAIN_TRANSIENT
, বাAUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK
তিনটি সময়কাল ইঙ্গিতগুলির মধ্যে একটি নির্বাচন করতে অডিও ফোকাস ড্রপ-ডাউন মেনু ব্যবহার করুন। - ফোকাস অনুরোধ করতে বোতাম টিপুন.
- ফোকাস ছেড়ে দিতে আবার বোতাম টিপুন।
পরিবহন নিয়ন্ত্রণ পরীক্ষা করা হচ্ছে
![পরিবহণ নিয়ন্ত্রণ পরীক্ষা করা](https://developer.android.com/static/media/images/MCT/MCT-Controller-Screen.png?authuser=0&hl=bn)
MCT এর UI ভিউ প্রদর্শন করতে বাম দিকে সোয়াইপ করুন। এই ভিউতে স্ট্যান্ডার্ড মিডিয়া কন্ট্রোলার ট্রান্সপোর্ট বোতাম রয়েছে এবং সেশনের প্রোগ্রাম ইমেজ এবং ডেটা দেখায়। অক্ষম করা পরিবহন বোতামগুলি কমলা রঙে চক্কর দেওয়া হয়৷ বাকিরা সবাই সক্রিয়।
পরিবহন বোতাম ব্যবহার করে আপনার প্লেয়ার পরীক্ষা করুন. পরিবহন বোতামের অবস্থা প্রত্যাশিত হিসাবে পরিবর্তন করা উচিত. উদাহরণস্বরূপ, যখন আপনি প্লে বোতাম টিপুন তখন এটি অক্ষম হয়ে যাবে এবং বিরতি এবং থামান বোতামগুলি সক্রিয় হয়ে যাবে৷
ঐচ্ছিক ক্রিয়া প্রদর্শন করে এমন একটি দৃশ্যের জন্য আবার বাম দিকে সোয়াইপ করুন। প্রতিটি কর্মের একটি নিয়ন্ত্রণ থাকে যা দেখায় যে এটি সক্রিয় কিনা। এটি সক্রিয় থাকলে, আপনি এটিতে ক্লিক করে কাজটি সম্পাদন করতে পারেন।
আপনি যদি মিডিয়া ব্রাউজার পরিষেবা আছে এমন অ্যাপগুলির তালিকা থেকে সংযুক্ত হন, তাহলে আপনি আরও দুইবার বাঁদিকে সোয়াইপ করতে পারেন ভিউয়ের জন্য যা আপনাকে আপনার অ্যাপের বিষয়বস্তু শ্রেণিবিন্যাস বা কন্টেন্ট ট্রি অনুসন্ধান করতে দেয়।
ম্যানুয়ালি একটি ভিডিও অ্যাপ পরীক্ষা করা হচ্ছে
ভিডিও অ্যাপ কন্ট্রোলার পরীক্ষা করতে স্প্লিট-স্ক্রিন মোড ব্যবহার করুন। প্রথমে আপনার ভিডিও অ্যাপটি একটি উইন্ডোতে খুলুন এবং তারপরে স্প্লিট-স্ক্রিন মোডে MCT খুলুন।
যাচাইকরণ পরীক্ষা চলছে
যাচাইকরণ পরীক্ষার কাঠামোটি এক-ক্লিক পরীক্ষাগুলি অফার করে যা আপনি নিশ্চিত করতে চালাতে পারেন যে আপনার মিডিয়া অ্যাপটি প্লেব্যাকের অনুরোধে সঠিকভাবে সাড়া দেয়।
একটি ফোন অ্যাপ পরীক্ষা করা হচ্ছে
![টেস্ট বোতাম](https://developer.android.com/static/media/images/MCT/MCT-Test-Button.png?authuser=0&hl=bn)
যাচাইকরণ পরীক্ষাগুলি অ্যাক্সেস করতে, আপনার মিডিয়া অ্যাপের পাশে পরীক্ষা বোতামে ক্লিক করুন।
এমসিটি রাজ্য
![মিডিয়া কন্ট্রোল স্টেট](https://developer.android.com/static/media/images/MCT/MCT-Testing-Info-Screen.png?authuser=0&hl=bn)
পরবর্তী ভিউ আপনাকে MCT এর MediaController
সম্পর্কে বিস্তারিত তথ্য দেখায়, উদাহরণস্বরূপ PlaybackState
, মেটাডেটা এবং সারি। টুলবারের উপরের ডানদিকে দুটি বোতাম রয়েছে। বাম দিকের বোতামটি পার্সেবল এবং ফরম্যাট করা লগগুলির মধ্যে টগল করে। ডানদিকের বোতামটি সর্বাধিক বর্তমান তথ্য প্রদর্শন করতে ভিউটিকে রিফ্রেশ করে।
একটি পরীক্ষা নির্বাচন
![টেস্ট সিলেকশন পেজ](https://developer.android.com/static/media/images/MCT/MCT-Testing-Verification-Screen.png?authuser=0&hl=bn)
বাম দিকে সোয়াইপ করার মাধ্যমে, আপনি যাচাইকরণ পরীক্ষার দৃশ্যে পৌঁছান, যেখানে আপনি উপলব্ধ পরীক্ষার একটি স্ক্রোলযোগ্য তালিকা দেখতে পাবেন। যদি একটি পরীক্ষা একটি ক্যোয়ারী ব্যবহার করে, যেমন চিত্র 7-এ দেখানো অনুসন্ধান পরীক্ষা থেকে খেলা, ক্যোয়ারী স্ট্রিং প্রবেশ করার জন্য একটি পাঠ্য ক্ষেত্র রয়েছে।
এমসিটি নিম্নলিখিত মিডিয়া অ্যাকশনগুলির জন্য পরীক্ষাগুলি অন্তর্ভুক্ত করে, এবং আরও পরীক্ষা ক্রমাগত প্রকল্পে যোগ করা হয়:
- খেলা
- অনুসন্ধান থেকে খেলুন
- মিডিয়া আইডি থেকে খেলুন
- URI থেকে খেলুন
- বিরতি
- থামো
- এড়িয়ে যান পরবর্তীতে
- এড়িয়ে যান পূর্ববর্তীতে
- সারিতে আইটেম এড়িয়ে যান
- সন্ধান করুন
পরীক্ষার ফলাফল
![একটি সফল পরীক্ষার ফলাফল](https://developer.android.com/static/media/images/MCT/MCT-Testing-Success-Screen.png?authuser=0&hl=bn)
দৃশ্যের নীচে ফলাফলের এলাকা প্রাথমিকভাবে খালি। আপনি যখন একটি পরীক্ষা চালান তখন এটি ফলাফল দেখাবে। উদাহরণস্বরূপ, অনুসন্ধান পরীক্ষা থেকে নাটকটি চালানোর জন্য, পাঠ্য ক্ষেত্রে একটি অনুসন্ধান ক্যোয়ারী লিখুন এবং রান টেস্টে ক্লিক করুন। নিম্নলিখিত স্ক্রিনশট একটি সফল পরীক্ষার ফলাফল দেখায়।
একটি Android TV অ্যাপ পরীক্ষা করা হচ্ছে
আপনি যখন Android TV-তে MCT চালু করেন, তখন আপনি ইনস্টল করা মিডিয়া অ্যাপগুলির একটি তালিকা দেখতে পান। মনে রাখবেন যে একটি অ্যাপ শুধুমাত্র এই তালিকায় উপস্থিত হবে যদি এটি একটি মিডিয়া ব্রাউজার পরিষেবা প্রয়োগ করে।
একটি অ্যাপ নির্বাচন করা আপনাকে টেস্টিং স্ক্রিনে নিয়ে যায়, যা ডানদিকে যাচাইকরণ পরীক্ষার একটি তালিকা প্রদর্শন করে।
আপনি যখন একটি পরীক্ষা চালান, তখন স্ক্রিনের বাম দিকে নির্বাচিত মিডিয়াকন্ট্রোলার সম্পর্কে তথ্য প্রদর্শন করে। আরও বিশদ বিবরণের জন্য, Logcat-এ MCT লগগুলি দেখুন৷
যে পরীক্ষাগুলির জন্য একটি প্রশ্ন প্রয়োজন সেগুলি একটি কীবোর্ড আইকন দ্বারা চিহ্নিত করা হয়৷ এই পরীক্ষাগুলির একটিতে ক্লিক করা প্রশ্নের জন্য একটি ইনপুট ক্ষেত্র খোলে। পরীক্ষা চালানোর জন্য এন্টার ক্লিক করুন।
টেক্সট ইনপুট সহজ করতে, আপনি একটি adb
কমান্ড ব্যবহার করতে পারেন:
adb shell input text your-query
আপনি শব্দগুলির মধ্যে একটি স্থান যোগ করতে "%s" ব্যবহার করতে পারেন৷ উদাহরণস্বরূপ, নিম্নলিখিত কমান্ডটি ইনপুট ক্ষেত্রে "হ্যালো ওয়ার্ল্ড" পাঠ্য যোগ করে।
adb shell input text hello%sworld
একটি পরীক্ষা নির্মাণ
আপনি উপযোগী বলে মনে করেন এমন আরও পরীক্ষা সহ একটি পুল অনুরোধ জমা দিতে পারেন। কিভাবে নতুন পরীক্ষা তৈরি করতে হয় তা জানতে, MCT GitHub Wiki-এ যান এবং যাচাইকরণ পরীক্ষার নির্দেশাবলী দেখুন।
অনুগ্রহ করে অবদানের নির্দেশাবলী পর্যালোচনা করুন।
অতিরিক্ত সম্পদ
MCT-এর অর্থ হল মিডিয়া API প্রয়োগ করে এমন অ্যাপগুলির সাথে একত্রে ব্যবহার করা। এই ধরনের একটি অ্যাপের উদাহরণের জন্য ইউনিভার্সাল অ্যান্ড্রয়েড মিউজিক প্লেয়ার দেখুন।
বাগ সংশোধন এবং উন্নতি সবসময় স্বাগত জানাই. অনুগ্রহ করে অবদান নির্দেশাবলী দেখুন.