Android TV पर Jetpack Compose का इस्तेमाल करना

Compose for TV, Android TV के यूज़र इंटरफ़ेस बनाने का आधुनिक तरीका है. Compose for TV, आपके टीवी ऐप्लिकेशन के लिए Android के Jetpack Compose के सभी फ़ायदे उपलब्ध कराता है. इससे, आपके ऐप्लिकेशन के लिए सुंदर और काम के यूज़र इंटरफ़ेस (यूआई) बनाना बहुत आसान हो जाता है.

'टीवी के लिए लिखें' सुविधा का इस्तेमाल करने के कुछ खास फ़ायदे यहां दिए गए हैं:

  • बेहतर सुविधाएं: Compose का इस्तेमाल, किसी भी तरह का यूज़र इंटरफ़ेस बनाने के लिए किया जा सकता है. जैसे, आसान लेआउट से लेकर जटिल ऐनिमेशन तक. कॉम्पोनेंट, बिना किसी बदलाव के काम करते हैं. हालांकि, इन्हें अपने ऐप्लिकेशन की ज़रूरतों के हिसाब से पसंद के मुताबिक बनाया जा सकता है और इनमें स्टाइल भी जोड़ी जा सकती है.
  • आसान और तेज़ी से डेवलपमेंट: Compose, मौजूदा कोड के साथ काम करता है. साथ ही, डेवलपर को कम कोड के साथ ऐप्लिकेशन को ज़्यादा बेहतर तरीके से बनाने में मदद करता है.
  • इंटियूटिव: Compose, डिक्लेरेटिव सिंटैक्स का इस्तेमाल करता है. इससे, अपने यूज़र इंटरफ़ेस (यूआई) में बदलाव करने, कोड को डीबग करने, समझने, और उसकी समीक्षा करने में मदद मिलती है.

अगर आपको Jetpack Compose टूलकिट का इस्तेमाल करने के बारे में नहीं पता है, तो Compose पाथवे देखें. मोबाइल Compose के लिए डेवलपमेंट के कई सिद्धांत, टीवी पर भी लागू होते हैं. एलान वाले यूज़र इंटरफ़ेस (यूआई) फ़्रेमवर्क के सामान्य फ़ायदों के बारे में ज़्यादा जानने के लिए, Compose क्यों लेख पढ़ें. ज़्यादा जानने के लिए, GitHub पर Compose for TV के सैंपल का डेटा स्टोर करने की जगह भी देखें.

Android TV के लिए सहायता जोड़ने का तरीका जानें

इस प्रॉम्प्ट में, Leanback के बजाय टीवी के लिए Jetpack Compose का इस्तेमाल करके, अपने ऐप्लिकेशन में Android TV के लिए सहायता जोड़ने के बारे में दिशा-निर्देश मांगे जाते हैं.

How do I add support for Android TV to my application?

Use Jetpack Compose for TV as part of the response instead of Leanback.

एआई के प्रॉम्प्ट का इस्तेमाल करना

एआई प्रॉम्प्ट का इस्तेमाल, Android Studio में Gemini में किया जा सकता है. इसके लिए, Canary का नया वर्शन ज़रूरी है

Studio में Gemini के बारे में ज़्यादा जानने के लिए, यहां जाएं: https://developer.android.com/studio/preview/gemini

इनके साथ काम करता है

'टीवी के लिए कॉम्पोज़ करें' सुविधा, Android 5.0 (एपीआई लेवल 21) या उसके बाद के वर्शन वाले Android TV पर काम करती है. Compose for TV के 1.0 वर्शन का इस्तेमाल करने के लिए, androidx.compose लाइब्रेरी का 1.3.0 वर्शन और Kotlin 1.7.10 की ज़रूरत होती है.

सेटअप

Android TV पर Jetpack Compose का इस्तेमाल करना, किसी भी दूसरे Android प्रोजेक्ट के लिए Jetpack Compose का इस्तेमाल करने जैसा ही है. मुख्य अंतर यह है कि Compose for TV, टीवी के लिए ऑप्टिमाइज़ किए गए कॉम्पोनेंट की लाइब्रेरी जोड़ता है. साथ ही, इससे टीवी के हिसाब से यूज़र इंटरफ़ेस बनाना आसान हो जाता है. कुछ मामलों में, उन कॉम्पोनेंट का नाम वही होता है जो टीवी के अलावा अन्य डिवाइसों के लिए होता है. जैसे, androidx.tv.material3.Button और androidx.compose.material3.Button.

Jetpack Compose टूलकिट की डिपेंडेंसी

Compose for TV का इस्तेमाल करने के लिए, अपने ऐप्लिकेशन की build.gradle फ़ाइल में Jetpack Compose टूलकिट की डिपेंडेंसी शामिल करें. इसके लिए, यह तरीका अपनाएं:

Kotlin

dependencies {
   val composeBom = platform("androidx.compose:compose-bom:2024.10.01")
   implementation(composeBom)

   // General compose dependencies.
   implementation("androidx.activity:activity-compose:1.9.2")

   implementation("androidx.compose.ui:ui-tooling-preview")
   debugImplementation("androidx.compose.ui:ui-tooling")

   // Compose for TV dependencies.
   implementation("androidx.tv:tv-material:1.0.0")
}

Groovy

dependencies {
   def composeBom = platform('androidx.compose:compose-bom:2024.10.01')
   implementation composeBom

   // General compose dependencies.
   implementation 'androidx.activity:activity-compose:1.9.2'

   implementation 'androidx.compose.ui:ui-tooling-preview'
   debugImplementation 'androidx.compose.ui:ui-tooling'

   // Compose for TV dependencies.
   implementation 'androidx.tv:tv-material:1.0.0'
}

इसमें क्या फ़र्क़ है

टीवी के लिए उपलब्ध मटीरियल कॉम्पोनेंट, लिविंग रूम में इस्तेमाल करने के लिए डिज़ाइन किए गए हैं. इनमें फ़ोकस करने के लिए साफ़ तौर पर दिखने वाले इंडिकेटर और रिमोट से आसानी से इस्तेमाल किए जा सकने वाले इनपुट शामिल हैं. इन कॉम्पोनेंट को इस्तेमाल करने के तरीके के बारे में जानने के लिए, टीवी के यूज़र इंटरफ़ेस (यूआई) के डिज़ाइन से जुड़ी गाइड देखें.

पहला डायग्राम. टीवी के लिए मटीरियल लाइब्रेरी के सैंपल कॉम्पोनेंट.

इन सुविधाओं का फ़ायदा पाने के लिए, जहां भी हो सके वहां एपीआई के टीवी वर्शन का इस्तेमाल करें.

Compose Material के मोबाइल वर्शन का इस्तेमाल तकनीकी तौर पर किया जा सकता है. हालांकि, इसे Android TV पर इंटरैक्शन के यूनीक स्टाइल के लिए ऑप्टिमाइज़ नहीं किया गया है. इसके अलावा, Compose for TV से Compose मटीरियल को Compose मटीरियल के साथ मिक्स करने पर, अनचाहा व्यवहार हो सकता है. उदाहरण के लिए, हर लाइब्रेरी का अपना MaterialTheme ऑब्जेक्ट होता है. इसलिए, दोनों वर्शन का इस्तेमाल करने पर, रंग, टाइपोग्राफ़ी या आकार में अंतर हो सकता है.

यहां दी गई टेबल में, टीवी और मोबाइल के बीच डिपेंडेंसी के अंतर के बारे में बताया गया है:

टीवी डिपेंडेंसी
(androidx.tv.*)
तुलना मोबाइल डिपेंडेंसी
(androidx.compose.*)
androidx.tv:tv-material इसके बजाय androidx.compose.material3:material3

अन्य संसाधन

  • टीवी डिज़ाइन से जुड़ी गाइड
    टीवी के लिए खास तौर पर बनाए गए कॉम्पोनेंट के बारे में खास जानकारी. इनकी मदद से, यूज़र इंटरफ़ेस बनाए जा सकते हैं. साथ ही, इनमें डेवलपर के लिए काम के संसाधनों के लिंक भी दिए गए हैं.

  • टीवी के लिए बनाए गए कैटलॉग का सैंपल
    यह एक कैटलॉग ऐप्लिकेशन है. इसमें, 'टीवी के लिए Compose' का इस्तेमाल करके, Material Design के सिद्धांतों को लागू करने का तरीका बताया गया है.

  • JetStream का सैंपल
    यह एक मीडिया स्ट्रीमिंग ऐप्लिकेशन है. इसमें, सामान्य Material ऐप्लिकेशन और असल दुनिया के आर्किटेक्चर के साथ TV Compose का इस्तेमाल करने का तरीका दिखाया गया है.

  • 'टीवी के लिए कॉम्पोज़' टूल के बारे में जानकारी
    इस कोडलैब में, कैटलॉग-ब्राउज़र स्क्रीन और जानकारी वाली स्क्रीन के साथ वीडियो प्लेयर ऐप्लिकेशन बनाने का तरीका बताया गया है.

इसके बारे में और पढ़ें

टीवी के लिए ऑप्टिमाइज़ किए गए शानदार अनुभव बनाने के बारे में जानने के लिए, ये गाइड देखें: