Android, उपयोगकर्ताओं को बेहतर अनुभव देता है. इसे बड़ी स्क्रीन वाले डिवाइसों पर चलने वाले ऐप्लिकेशन के लिए ऑप्टिमाइज़ किया गया है. जैसे, हाई-डेफ़िनिशन टेलीविज़न. Android TV के लिए ऐप्लिकेशन बनाकर, अपने ऐप्लिकेशन के दर्शकों की संख्या बढ़ाई जा सकती है. इस दस्तावेज़ में, इसे असरदार तरीके से करने के बारे में दिशा-निर्देश दिए गए हैं.
टीवी ऐप्लिकेशन बनाना
टीवी ऐप्लिकेशन का स्ट्रक्चर, फ़ोन और टैबलेट के ऐप्लिकेशन के जैसा ही होता है. इस तरीके का मतलब है कि Android के लिए ऐप्लिकेशन बनाने के बारे में आपको पहले से जो जानकारी है उसके आधार पर, नए टीवी ऐप्लिकेशन बनाए जा सकते हैं. इसके अलावा, अपने मौजूदा ऐप्लिकेशन को टीवी डिवाइसों पर भी चलाया जा सकता है.
हालांकि, टीवी के लिए उपयोगकर्ता इंटरैक्शन मॉडल, फ़ोन और टैबलेट डिवाइसों से काफ़ी अलग होता है. टीवी डिवाइसों पर अपने ऐप्लिकेशन को सफल बनाने के लिए, आपको ये काम करने होंगे: ऐसे नए लेआउट डिज़ाइन करें जिन्हें 10 फ़ीट की दूरी से भी आसानी से समझा जा सके. साथ ही, नेविगेशन की ऐसी सुविधा दें जो सिर्फ़ दिशा पैड और 'चुनें' बटन के साथ काम करती हो.
टीवी के हार्डवेयर कंट्रोलर को मैनेज करने, टीवी लेआउट बनाने, और टीवी नेविगेशन बनाने जैसे पहलुओं के बारे में ज़्यादा जानकारी के लिए, टीवी ऐप्लिकेशन बनाना लेख पढ़ें.
Media3 ExoPlayer का इस्तेमाल करना
Jetpack Media3, प्लेयर इंटरफ़ेस उपलब्ध कराता है. यह प्लेयर की बुनियादी सुविधाओं के बारे में बताता है. जैसे, मीडिया चलाने, रोकने, आगे-पीछे करने, और ट्रैक की जानकारी दिखाने की सुविधा. Media3 में, इस इंटरफ़ेस को डिफ़ॉल्ट रूप से लागू करने के लिए ExoPlayer का इस्तेमाल किया जाता है.
Android के MediaPlayer API की तुलना में, इसमें कई अतिरिक्त सुविधाएं मिलती हैं. जैसे, एक से ज़्यादा स्ट्रीमिंग प्रोटोकॉल के साथ काम करने की सुविधा, डिफ़ॉल्ट ऑडियो और वीडियो रेंडरर, और मीडिया बफ़रिंग को मैनेज करने वाले कॉम्पोनेंट.
ExoPlayer को पसंद के मुताबिक बनाया जा सकता है और इसे बढ़ाया जा सकता है. साथ ही, इसे Play Store से ऐप्लिकेशन अपडेट के ज़रिए अपडेट किया जा सकता है. ज़्यादा जानकारी के लिए, Media3 ExoPlayer देखें.
Media3 MediaSession
का इस्तेमाल करना
मीडिया सेशन, सिस्टम को आपके ऐप्लिकेशन के ऑडियो या वीडियो प्लेयर के साथ इंटरैक्ट करने का एक सामान्य तरीका उपलब्ध कराते हैं. Media3 को पिछले मीडिया एपीआई से अलग करने वाली मुख्य विशेषताओं में से एक यह है कि अब कॉम्पोनेंट के बीच कनेक्टर की ज़रूरत नहीं होती.
नई MediaSession
क्लास, Player इंटरफ़ेस को लागू करने वाली किसी भी क्लास को स्वीकार करती है. ExoPlayer और MediaController, दोनों ऐसी क्लास हैं जो इस इंटरफ़ेस को लागू करती हैं. इससे कॉम्पोनेंट के बीच इंटरैक्शन करना बहुत आसान हो जाता है.
ज़्यादा जानकारी के लिए, प्लेयर इंटरफ़ेस लेख पढ़ें.
मीडिया चलाने वाला ऐप्लिकेशन बनाने के बारे में ज़्यादा जानने के लिए, ExoPlayer का इस्तेमाल करके बुनियादी मीडिया प्लेयर बनाना लेख पढ़ें.
अपने मीडिया ऐप्लिकेशन के असली उपयोगकर्ताओं को बेहतरीन अनुभव देने के लिए, आपको MediaSession
को लागू करना होगा. इसके लिए, Player
को शुरू करें और इसे MediaSession.Builder
में इस तरह से डालें:
Kotlin
val player = ExoPlayer.Builder(context).build() val mediaSession = MediaSession.Builder(context, player).build()
Java
ExoPlayer player = new ExoPlayer.Builder(context).build(); MediaSession mediaSession = new MediaSession.Builder(context, player).build();
स्टेट को अपने-आप मैनेज करने की सुविधा
Media3 लाइब्रेरी, प्लेयर की स्थिति के हिसाब से मीडिया सेशन को अपने-आप अपडेट करती है. इसलिए, आपको प्लेयर से सेशन तक की मैपिंग को मैन्युअल तरीके से मैनेज करने की ज़रूरत नहीं है. इससे यह पक्का करने में मदद मिलती है कि आपके उपयोगकर्ताओं को, मीडिया चलाने से जुड़ी अप-टू-डेट जानकारी हमेशा दिखे. इसमें 'अभी चल रहा है' कार्ड में दिखने वाली जानकारी भी शामिल है.
प्लेबैक को कंट्रोल करना और उसका विज्ञापन दिखाना
Media3 में, डिफ़ॉल्ट प्लेयर, ExoPlayer क्लास है. यह Player इंटरफ़ेस को लागू करता है. मीडिया सेशन को प्लेयर से कनेक्ट करने पर, ऐप्लिकेशन को मीडिया प्लेबैक का विज्ञापन बाहरी तौर पर दिखाने की अनुमति मिलती है. साथ ही, उसे बाहरी सोर्स से प्लेबैक कमांड मिलती हैं. मीडिया सेशन, इन निर्देशों को मीडिया ऐप्लिकेशन के प्लेयर को सौंपता है.
मीडिया सेशन, प्लेबैक को कंट्रोल करने का मुख्य तरीका है. इसकी मदद से, बाहरी सोर्स से मिलने वाले निर्देशों को उस प्लेयर पर रूट किया जा सकता है जो आपके मीडिया को चलाने का काम करता है. बाहरी क्लाइंट, मीडिया कंट्रोलर का इस्तेमाल करके आपके मीडिया ऐप्लिकेशन को मीडिया चलाने के निर्देश दे सकते हैं. ये निर्देश आपके मीडिया सेशन को मिलते हैं. इसके बाद, मीडिया सेशन इन निर्देशों को मीडिया प्लेयर को भेजता है.
प्लेबैक के बारे में ज़्यादा जानकारी के लिए, MediaSession का इस्तेमाल करके प्लेबैक को कंट्रोल करना और उसका विज्ञापन दिखाना लेख पढ़ें. इसमें प्लेबैक कमांड के व्यवहार को पसंद के मुताबिक बनाने का तरीका भी बताया गया है.
अपने ऐप्लिकेशन में रुकावटों से बचना
MediaSession
का इस्तेमाल करने से, आपको इन जैसी बेवजह की रुकावटों से बचने में मदद मिलती है:
टीवी बंद करने या टीवी इनपुट स्विच करने पर, अनचाहे तरीके से और लगातार वीडियो चलना. इससे टीवी के हार्डवेयर में बिजली की खपत भी ज़्यादा होती है.
MediaSession
की मदद से, आपका ऐप्लिकेशन प्लैटफ़ॉर्म को यह सूचना दे सकता है कि वह मीडिया चला रहा है. साथ ही, प्लैटफ़ॉर्म ऐप्लिकेशन को यह सूचना दे सकता है कि प्लेबैक रोका जा सकता है.ऐप्लिकेशन बंद करने या टीवी का डिसप्ले बंद करने पर, संगीत अचानक बंद हो जाता है.
MediaSession
एपीआई का इस्तेमाल करने से, बैकग्राउंड सेवा में वीडियो चलता रहता है.कॉन्टेंट के साथ सीमित इंटरैक्शन, जिससे उपयोगकर्ता कॉन्टेंट के प्लेबैक को कंट्रोल नहीं कर पाते. उदाहरण के लिए, बैकग्राउंड में संगीत चलाने वाले ऐप्लिकेशन पर वापस जाना या आवाज़ से दिए जाने वाले निर्देशों को सपोर्ट करना. अपने ऐप्लिकेशन में
MediaSession
की सुविधा जोड़कर, उपयोगकर्ताओं को बोलकर निर्देश देने की सुविधा दी जा सकती है. इससे वे गाने या एपिसोड खोज सकते हैं और उन्हें स्किप कर सकते हैं.
अन्य बातें
अपने मीडिया ऐप्लिकेशन को Android TV पर उपलब्ध कराने के लिए, आपको इन बातों पर ध्यान देना होगा: सुलभता से जुड़ी समस्याएं, लोगों की दिलचस्पी बढ़ाना, लोगों को कॉन्टेंट ढूंढने की सुविधा देना, और गेम और टीवी इनपुट सेवाएं बनाना.
टीवी पर सुलभता सुविधाएं
हालांकि, कम दृष्टि वाले लोगों के लिए सुलभता तकनीकें मददगार होती हैं. इसलिए, टीवी ऐप्लिकेशन के लिए कॉन्टेंट खोजने की सुविधा में सुलभता की सुविधा उपलब्ध कराना ज़रूरी है.
उदाहरण के लिए, नेविगेशन के बारे में ज़्यादा जानकारी दें और एलिमेंट को सही तरीके से लेबल करें. साथ ही, यह पक्का करें कि टीवी ऐप्लिकेशन, TalkBack जैसी सुलभता सुविधाओं के साथ ठीक से काम करें. इन चरणों से, दृष्टिबाधित लोगों को बेहतर अनुभव मिल सकता है.
सुलभता को बेहतर बनाने के लिए, सबसे पहले इसके बारे में जागरूकता बढ़ाना ज़रूरी है. टेक्स्ट के साइज़ को बड़ा करने, कीबोर्ड लेआउट, और ऑडियो के बारे में ज़्यादा जानने के लिए, सुलभता संसाधन देखें.
Google TV पर लोगों की दिलचस्पी बढ़ाने के सबसे सही तरीके
Android TV के लिए बनाए गए सभी ऐप्लिकेशन, Google TV पर काम करते हैं. Google TV पर लोगों को बेहतरीन अनुभव देने के लिए, हमारा सुझाव है कि आप यहां बताए गए सबसे सही तरीके अपनाएं.
आपको MediaSession
का इस्तेमाल करना होगा, ताकि ऑडियो या वीडियो प्लेयर के साथ इंटरैक्ट करने का एक सामान्य तरीका उपलब्ध कराया जा सके. इसे लागू करने के तरीके के बारे में ज़्यादा जानने के लिए, Media3 MediaSession का इस्तेमाल करना लेख पढ़ें.
आपके ऐप्लिकेशन में Google Cast की सुविधा काम करनी चाहिए. इसकी मदद से, Android, iOS, और Chrome ऐप्लिकेशन को बढ़ाया जा सकता है. इससे Android TV, Chromecast डिवाइसों, और Assistant डिवाइसों पर ऑडियो और वीडियो स्ट्रीम करने की सुविधा चालू की जा सकती है. ज़्यादा जानकारी के लिए, Google Cast का दस्तावेज़ देखें.
इसके अलावा, उपयोगकर्ताओं की इन कामों में भी मदद की जा सकती है:
मीडिया ऐक्शन फ़ीड उपलब्ध कराकर या 'अगला वीडियो' सुविधा को इंटिग्रेट करके, अलग-अलग प्लैटफ़ॉर्म पर कॉन्टेंट ढूंढें.
आवाज़ और दिलचस्पी बढ़ाने वाली सुविधाओं का फ़ायदा पाएं. इसके लिए, खाता लिंक करने और एनटाइटलमेंट सिंक करने की सुविधा उपलब्ध कराएं. साथ ही, आवाज़ की मदद से कास्ट करने की सुविधा दें और Cast Connect की सुविधा चालू करें.
Google Play के बिलिंग सिस्टम को इंटिग्रेट करके, आसानी से पेमेंट करें. साथ ही, बिना किसी रुकावट के सदस्यताएं उपलब्ध कराएं.
टीवी इनपुट फ़्रेमवर्क बनाना
टीवी पर लाइव टीवी शो और चैनल के हिसाब से लगातार कॉन्टेंट देखना, टीवी देखने के अनुभव का एक अहम हिस्सा है. उपयोगकर्ता, चैनल ब्राउज़ करके टीवी पर शो देखने के आदी हैं. टीवी इनपुट फ़्रेमवर्क, टीवी प्रोग्रामिंग गाइड में वीडियो या संगीत वाला कॉन्टेंट पब्लिश करने के लिए चैनल बनाता है.
टीवी इनपुट फ़्रेमवर्क, हार्डवेयर सोर्स (जैसे, एचडीएमआई पोर्ट और बिल्ट-इन ट्यूनर) और सॉफ़्टवेयर सोर्स (जैसे, इंटरनेट पर स्ट्रीम किया गया वीडियो) से लाइव वीडियो कॉन्टेंट पाने और उसे चलाने का एक जैसा तरीका उपलब्ध कराता है. ज़्यादा जानकारी के लिए, टीवी इनपुट सेवाएं बनाना लेख पढ़ें.