टीवी

  
यह टीवी के लिए ऐप्लिकेशन लिखने के लिए, डेवलपर को Compose और Material Design की सुविधाएं उपलब्ध कराता है
नया अपडेट स्टेबल रिलीज़ रिलीज़ कैंडिडेट बीटा रिलीज़ ऐल्फ़ा रिलीज़
11 मार्च, 2026 1.0.1 - 1.1.0-beta01 -

डिपेंडेंसी का एलान करना

tv-foundation और tv-material पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google की Maven रिपॉज़िटरी पढ़ें.

अपने ऐप्लिकेशन या मॉड्यूल के लिए, build.gradle फ़ाइल में उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको ज़रूरत है:

Groovy

dependencies {
    implementation "androidx.tv:tv-foundation:1.0.0-beta01"
    implementation "androidx.tv:tv-material:1.1.0-beta01"
}

Kotlin

dependencies {
    implementation("androidx.tv:tv-foundation:1.0.0-beta01")
    implementation("androidx.tv:tv-material:1.1.0-beta01")
}

डिपेंडेंसी के बारे में ज़्यादा जानने के लिए, बिल्ड डिपेंडेंसी जोड़ना लेख पढ़ें.

सुझाव/राय दें या शिकायत करें

आपके सुझाव, शिकायत या राय से Jetpack को बेहतर बनाने में मदद मिलती है. अगर आपको कोई नई समस्या मिलती है या आपके पास इस लाइब्रेरी को बेहतर बनाने के लिए सुझाव हैं, तो हमें बताएं. कृपया नई समस्या सबमिट करने से पहले, इस लाइब्रेरी में शामिल मौजूदा समस्याओं को देखें. स्टार बटन पर क्लिक करके, किसी मौजूदा समस्या के लिए वोट किया जा सकता है.

नई समस्या दर्ज करने का तरीका

ज़्यादा जानकारी के लिए, Issue Tracker का दस्तावेज़ देखें.

इस आर्टफ़ैक्ट के लिए कोई रिलीज़ नोट नहीं है.

Tv-Material वर्शन 1.1

वर्शन 1.1.0-beta01

11 मार्च, 2026

androidx.tv:tv-material:1.1.0-beta01 रिलीज़ हो गया है. वर्शन 1.1.0-beta01 में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • Kotlin 2.0 के साथ रिलीज़ किए गए प्रोजेक्ट के लिए, KGP 2.0.0 या इसके बाद के वर्शन का इस्तेमाल करना ज़रूरी है (Idb6b5, b/344563182)

बाहरी योगदान

  • androidx.compose.ui.graphics.NativePaint typealias का इस्तेमाल अब नहीं किया जा सकता. इसके बजाय, सीधे android.graphics.Paint का इस्तेमाल करें (I6303c, b/477394763)
  • Paint.asFrameworkPaint() एक्सटेंशन को Paint.nativePaint एक्सटेंशन से बदलें, ताकि typealias (I6303c, b/477394763) के ज़रिए commonMain सोर्ससेट में प्लैटफ़ॉर्म टाइप का पता न चले

वर्शन 1.1.0-alpha01

15 जनवरी, 2025

androidx.tv:tv-material:1.1.0-alpha01 रिलीज़ हो गया है. वर्शन 1.1.0-alpha01 में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • FocusEnterExitScope.cancelFocus() को cancelFocusChange()(I89959) में बदलें
  • FocusProperties.enter और FocusProperties.exit को क्रमशः onEnter और onExit से बदल दिया गया है. इसके लिए, FocusDirection पैरामीटर के बजाय रिसीवर स्कोप का इस्तेमाल किया गया है. (I6e667)

गड़बड़ियां ठीक की गईं

  • स्केलिंग के दौरान टेक्स्ट के हिलने की समस्या को ठीक करने के लिए, CompositingStrategy.OffScreen को Surface से Text में ले जाया गया. (I92b15f17)
  • कैरसेल में फ़ोकस मैनेजमेंट से जुड़ी समस्या ठीक की गई (Ie508b721375)
  • नॉन-इंटरैक्टिव डिसप्ले को इंटरैक्टिव डिसप्ले की तुलना में आसानी से लागू किया जा सकता है. (I7ea545150)

Tv-Material Version 1.0

वर्शन 1.0.1

16 जुलाई, 2025

androidx.tv:tv-material:1.0.1 रिलीज़ हो गया है. वर्शन 1.0.1 में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • NavigationDrawerItem की ऊंचाई को स्पेसिफ़िकेशन के मुताबिक अपडेट किया गया. (cf9a3ce)
  • कंपोज़िटिंग रणनीति के कॉन्फ़िगरेशन को Surface कंपोज़ेबल से Text कंपोज़ेबल में ले जाया गया. इस अपडेट में, उस बग को ठीक किया गया है जिसकी वजह से Android API के पुराने वर्शन पर, Surface कंपोज़ेबल पर Exoplayer रेंडर नहीं हो रहा था. (9858ffb)

वर्शन 1.0.0

21 अगस्त, 2024

androidx.tv:tv-material:1.0.0 रिलीज़ हो गया है. वर्शन 1.0.0, androidx.tv:tv-material का पहला स्टेबल वर्शन है.

वर्शन 1.0.0-rc02

7 अगस्त, 2024

androidx.tv:tv-material:1.0.0-rc02 रिलीज़ हो गया है. वर्शन 1.0.0-rc02 में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • Surface कंपोज़ेबल में, टेक्स्ट के हिलने-डुलने वाले ऐनिमेशन की समस्या ठीक की गई. (3163319)

वर्शन 1.0.0-rc01

10 जुलाई, 2024

androidx.tv:tv-material:1.0.0-rc01 रिलीज़ हो गया है. वर्शन 1.0.0-rc01 में ये बदलाव शामिल हैं.

वर्शन 1.0.0-beta01

1 मई, 2024

androidx.tv:tv-material:1.0.0-beta01 रिलीज़ हो गया है. वर्शन 1.0.0-beta01 में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • ColorScheme और इसके यूटिलिटी फ़ंक्शन अब स्थिर हो गए हैं. (If34fa)
  • LocalContentColor अब स्थिर हो गया है (I60ee2)
  • Typography एपीआई अब स्टेबल हो गया है (I088d6)
  • Shapes API अब स्टेबल हो गए हैं (I0f5f4)
  • Border API अब स्थिर हो गया है (I69281)
  • Glow API अब स्टेबल है (Iea5f1)
  • आइकॉन कॉम्पोनेंट अब स्थिर हो गया है (I62c2d)
  • LocalTextStyles एपीआई अब स्टेबल हो गया है (Iaded8)
  • MaterialTheme एपीआई अब स्टेबल है (I2f541)
  • टेक्स्ट कॉम्पोनेंट अब स्टेबल हो गया है (Ib9e31)
  • RadioButton कॉम्पोनेंट अब स्थिर है (Ia03c8)
  • स्विच कॉम्पोनेंट अब स्थिर है (I6cea3)
  • Checkbox कॉम्पोनेंट अब स्टेबल हो गए हैं (I7eafc)
  • सरफ़ेस कॉम्पोनेंट अब स्थिर हो गए हैं (I58758, I04aca)
  • NonInteractiveSurfaceDefaults का नाम बदलकर SurfaceDefaults और NonInteractiveSurfaceColors का नाम बदलकर SurfaceColors किया गया (I0812e)
  • अब चुनने की सुविधा वाले प्लैटफ़ॉर्म में “चुनें” शब्द का इस्तेमाल किया जाता है. पहले “देखें” शब्द का इस्तेमाल किया जाता था. ऐसा इसलिए है, क्योंकि दोनों शब्दों के अलग-अलग मतलब हैं (I5a206)
  • NavigationDrawer और NavigationDrawerScope अब स्थिर हैं (I249c1)
  • NavigationDrawerItem कॉम्पोनेंट अब स्थिर हो गया है (Id6986)
  • टैब और TabRow कॉम्पोनेंट अब स्टेबल हो गए हैं (I92d92)
  • Button, OutlinedButton, IconButton, OutlinedIconButton, और WideButton कॉम्पोनेंट अब स्थिर हैं (Ib4de8)
  • Card, ClassicCard, CompactCard, WideClassicCard, StandardCardContainer, और WideCardContainer कॉम्पोनेंट अब स्थिर हो गए हैं (I34390)
  • StandardCardLayout का नाम बदलकर StandardCardContainer और WideCardLayout का नाम बदलकर WideCardContainer किया गया (I08883)
  • CardContainerDefaults.ImageCard को हटा दिया गया है और CardDefaults.ContainerGradient का नाम बदलकर CardDefaults.ScrimBrush (I6adfe) कर दिया गया है. कार्ड कंटेनर में CardContainerDefaults.ImageCard की जगह Card का इस्तेमाल किया जा सकता है.
  • ListItem और DenseListItem अब स्थिर हैं (Idebd9)
  • ListItemDefaults.ListItemShape, ListItemDefaults.FocusedDisabledBorder, और ListItemDefaults.SelectedContainerColorOpacity अब निजी हैं (I5d533)
  • ListItem के पैरामीटर को फिर से व्यवस्थित किया गया है. साथ ही, ListItemDefaults.ListItemElevation का नाम बदलकर ListItemDefaults.TonalElevation कर दिया गया है (Id6841). headlineContent पैरामीटर को कंपोज़ेबल के सबसे ऊपर ले जाया गया है. पहले, headlineContent को पास करने के लिए, Kotlin के ट्रेलिंग लैम्ब्डा सिंटैक्स का इस्तेमाल किया जा सकता था. अब आपको headlineContent देने के लिए, नाम वाले पैरामीटर सिंटैक्स का इस्तेमाल करना होगा.
  • LocalAbsoluteTonalElevation अब इंटरनल (Ibfc65) है
  • ImmersiveList कॉम्पोनेंट को हटा दिया गया है. इसे खुद बनाने का तरीका जानने के लिए, यह सैंपल देखें. (Id48da)
  • tv-material कॉम्पोनेंट, अपने एपीआई में MutableInteractionSource को दिखाते हैं. इन्हें अपडेट कर दिया गया है. अब ये ऐसे MutableInteractionSource को दिखाएंगे जो शून्य हो सकता है और डिफ़ॉल्ट रूप से शून्य पर सेट होता है. यहां सिमैंटिक में कोई बदलाव नहीं किया गया है: null पास करने का मतलब है कि आपको MutableInteractionSource को ऊपर नहीं ले जाना है. अगर ज़रूरत होगी, तो इसे कॉम्पोनेंट के अंदर बनाया जाएगा. इसे null पर सेट करने से, कुछ कॉम्पोनेंट को कभी भी MutableInteractionSource असाइन नहीं किया जाता है. साथ ही, अन्य कॉम्पोनेंट को सिर्फ़ तब इंस्टेंस बनाने की अनुमति मिलती है, जब उन्हें इसकी ज़रूरत होती है. इससे इन कॉम्पोनेंट की परफ़ॉर्मेंस बेहतर होती है. अगर इन कॉम्पोनेंट को पास किए गए MutableInteractionSource का इस्तेमाल नहीं किया जा रहा है, तो हमारा सुझाव है कि आप इसके बजाय null पास करें. हमारा यह भी सुझाव है कि आप अपने कॉम्पोनेंट में भी इसी तरह के बदलाव करें. (I309b4, b/298048146)
  • टीवी टेक्स्ट कॉम्पोनेंट के TextAlign पैरामीटर की वैल्यू अब शून्य नहीं है (Ib73b1, b/299490814)
  • ParagraphTextStyle के TextAlign, TextDirection, Hyphens, और LineBreak फ़ील्ड के लिए, 'जानकारी नहीं दी गई' वैल्यू को खास तौर पर पेश किया गया है, ताकि (I4197e, b/299490814) को बदला जा सके

व्यवहार में बदलाव

  • नॉन-इंटरैक्टिव Surface के लिए, shape पैरामीटर की डिफ़ॉल्ट वैल्यू को RectangleShape (I1b859cb) में बदल दिया गया है
  • ज़रूरी एपीआई एक्सपेरिमेंट (I0e755d4) के तौर पर उपलब्ध होने की वजह से, बीटा वर्शन के लिए कैरसेल की कुछ सुविधाओं को हटा दिया गया है
  • Surface में contentColor को बदलने पर, अब राज्यों के बीच ऐनिमेशन नहीं होता (I436e794f)

वर्शन 1.0.0

वर्शन 1.0.0-beta01

11 मार्च, 2026

androidx.tv:tv-foundation:1.0.0-beta01 रिलीज़ हो गया है. वर्शन 1.0.0-beta01 में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • Kotlin 2.0 के साथ रिलीज़ किए गए प्रोजेक्ट के लिए, KGP 2.0.0 या इसके बाद के वर्शन का इस्तेमाल करना ज़रूरी है (Idb6b5, b/344563182)

वर्शन 1.0.0-alpha12

15 जनवरी, 2025

androidx.tv:tv-foundation:1.0.0-alpha12 रिलीज़ हो गया है. वर्शन 1.0.0-alpha12 में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • tv-foundation से लेज़ी लेआउट हटाएं. tv-foundation के लेज़ी लेआउट से माइग्रेट करने के लिए, 1.0.0-alpha11 के रिलीज़ नोट देखें. (I2fdd3, b/358913893)

वर्शन 1.0.0-alpha11

10 जुलाई, 2024

androidx.tv:tv-foundation:1.0.0-alpha11 रिलीज़ हो गया है. वर्शन 1.0.0-alpha11 में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • tv-foundation लाइब्रेरी से TvLazyLayouts को बंद कर दिया गया है. टीवी के लेज़ी लेआउट से माइग्रेट करने का तरीका जानने के लिए, यह टिकट देखें. (I0855f, b/332674072)
  • PlatformImeOptions अब इंटरफ़ेस के बजाय एक कॉन्क्रीट क्लास है. (If40a4)

वर्शन 1.0.0-alpha10

4 अक्टूबर, 2023

androidx.tv:tv-foundation:1.0.0-alpha10 और androidx.tv:tv-material:1.0.0-alpha10 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha10 में ये बदलाव शामिल हैं.

नई सुविधाएं

  • NavigationDrawer और ModalNavigationDrawer में इस्तेमाल करने के लिए NavigationDrawerItem को लॉन्च किया गया. (I4b491)
  • tv-foundation लाइब्रेरी में बेसलाइन प्रोफ़ाइल जोड़ें. (2b57fd7)
  • tv-material लाइब्रेरी में बेसलाइन प्रोफ़ाइल जोड़ें. (1711ff5)

एपीआई में हुए बदलाव

  • NavigationDrawerScope.doesTabRowHaveFocus का नाम बदलकर NavigationDrawerScope.hasFocus कर दिया गया. (I8286b)
  • TabRowScope.isActivated का नाम बदलकर TabRowScope.hasFocus कर दिया गया. (Ic4273)

गड़बड़ियां ठीक की गईं

  • फ़ोकस रीस्टोरर एपीआई का इस्तेमाल करने वाले आस-पास के आइटम के साथ, कैरसेल के काम करने से जुड़ी समस्या ठीक की गई. (7b2a7a4)
  • API_LEVEL 28 से पहले के वर्शन के लिए, चमकने की सुविधा को बंद करें, क्योंकि यह ओएस के साथ काम नहीं करती. (6d3616f)
  • तेज़ी से स्क्रोल करने पर, लेज़ी कंटेनर में आइटम को गलत तरीके से रखने की वजह से होने वाली एएनआर क्रैश की समस्या को ठीक किया गया. (642d65c)
  • मोडल नेविगेशन ड्रॉर में बैकग्राउंड पैडिंग हटा दी गई है. (69965b2)
  • नेविगेशन ड्रॉअर में स्क्रिम को ठीक किया गया है, ताकि इसे बैकग्राउंड कॉन्टेंट के पीछे दिखाने के बजाय, उसके ऊपर दिखाया जा सके. (d4bbefb)

वर्शन 1.0.0-alpha09

6 सितंबर, 2023

androidx.tv:tv-foundation:1.0.0-alpha09 और androidx.tv:tv-material:1.0.0-alpha09 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha09 में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • लाइफ़साइकल मैनेज करने और सबकंपोज़िशन का दोबारा इस्तेमाल करने के लिए, ReusableComposition इंटरफ़ेस जोड़ा गया. (I812d1, b/252846775)
  • tv-foundation फ़ोर्क को compose-foundation के साथ सिंक करें. (I737c3, b/287011882)
  • LazyLayout का ओवरलोड जोड़ा गया है. यह LazyLayoutItemProvider का लैम्ब्डा स्वीकार करता है, न कि पहले की तरह कोई सामान्य ऑब्जेक्ट. पिछला ओवरलोड बंद कर दिया गया है. (I42a5a)
  • डेवलपर को AndroidImeOptions की मदद से, ऑन-स्क्रीन कीबोर्ड की जगह कॉन्फ़िगर करने की अनुमति देने के लिए, TvKeyboardAlignment जोड़ें. (Idb772)
  • टीवी कंपोज़ मटीरियल के साथ Saver को याद रखने के लिए, rememberCarouselState जोड़ें.CarouselState (Id7275)
  • scrimColor: Color पैरामीटर को scrimBrush:Brush पैरामीटर में बदलकर, लोगों को स्क्रिम में ग्रेडिएंट जोड़ने की अनुमति दी गई है. (I254d4)

वर्शन 1.0.0-alpha08

26 जुलाई, 2023

androidx.tv:tv-foundation:1.0.0-alpha08 और androidx.tv:tv-material:1.0.0-alpha08 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha08 में ये बदलाव शामिल हैं.

नई सुविधाएं

  • Compose for TV मटीरियल के लिए, चिप कॉम्पोनेंट पेश किए गए. (I86da4)
  • टीवी के लिए Compose Material में ListItem कॉम्पोनेंट जोड़ें. (I3f0b3)
  • टीवी कंपोज़ मटीरियल में DenseListItem कॉम्पोनेंट जोड़ें. (I536bf)

एपीआई में हुए बदलाव

  • सार्वजनिक टीवी-मटेरियल एपीआई को एक्सपेरिमेंटल के तौर पर मार्क किया गया. (I632e7)
  • TabRowScope को पेश किया गया है, ताकि TabRow कंपोज़ेबल से Tab कंपोज़ेबल के साथ स्टेट शेयर की जा सके. साथ ही, TabColors प्रॉपर्टी के नाम बदले गए हैं. (Ief587)

वर्शन 1.0.0-alpha07

7 जून, 2023

androidx.tv:tv-foundation:1.0.0-alpha07 और androidx.tv:tv-material:1.0.0-alpha07 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha07 में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • कॉम्पोनेंट के स्केल इंडिकेटर में अब 'कोई नहीं' विकल्प भी शामिल है. इससे स्केलिंग की सुविधा बंद की जा सकती है. (I50df5)
  • टीवी के Material Surface, कार्ड, और बटन के लिए, देर तक दबाकर रखने की सुविधा जोड़ी गई. (Id2b89)
  • CarouselItem और CarouselScope को हटा दिया गया है. स्लाइड में फ़ोरग्राउंड कॉन्टेंट को ऐनिमेट करने के लिए, AnimatedContentScope से Modifier.animateEnterExit का इस्तेमाल किया जा सकता है. (Ic038e)
  • टीवी पर दिखने वाले कॉन्टेंट के लिए, color और contentColor पैरामीटर को colors के तौर पर मर्ज किया गया. (Ie69eb)
  • टीवी मटीरियल में RadioButton कंपोज़ेबल पेश किया गया. (I08690)
  • टीवी मटीरियल में Switch कंपोज़ेबल पेश किया गया. (I45e29)
  • टीवी मटीरियल में Checkbox कंपोज़ेबल पेश किया गया. (I6a45a)
  • टीवी के Material में, इंटरैक्ट न किए जा सकने वाले Surface को जोड़ा गया. (Ic5f85)
  • इंटरनल इंडिकेटर बनाना. (Ibff82)

वर्शन 1.0.0-alpha06

19 अप्रैल, 2023

androidx.tv:tv-foundation:1.0.0-alpha06 और androidx.tv:tv-material:1.0.0-alpha06 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha06 में ये बदलाव शामिल हैं.

नई सुविधाएं

  • टीवी के लिए ऑप्टिमाइज़ किए गए, Material 3 कार्ड के इस्तेमाल के उदाहरण जोड़े गए.
    • सामान्य कार्ड (I5b701)
    • ClassicCard, CompactCard, और WideClassicCard (I70471)
    • StandardCardLayout और WideCardLayout (I33fae)
  • टीवी के लिए ऑप्टिमाइज़ किए गए, Material 3 बटन लागू करने की सुविधा जोड़ी गई है.
    • सामान्य बटन (I69c11)
    • IconButton और OutlinedIconButton (Ib504c)
    • WideButton (I4cecf)

एपीआई में हुए बदलाव

  • Carousel में मौजूद CarouselSlide और slideCount का नाम बदलकर CarouselItem और itemCount कर दिया गया है. (Ie554c)
  • forward और backward ContentTransforms का नाम बदलकर StartToEnd और EndToStart कर दिया गया है. (Ie554c)

गड़बड़ियां ठीक की गईं

  • NavigationDrawer पर फ़ोकस होने पर, DPAD के बैक बटन को मैनेज करें. (d654f4)

वर्शन 1.0.0-alpha05

22 मार्च, 2023

androidx.tv:tv-foundation:1.0.0-alpha05 और androidx.tv:tv-material:1.0.0-alpha05 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha05 में ये बदलाव शामिल हैं.

एपीआई में हुए बदलाव

  • tv-material में साइड नेविगेशन पैनल जोड़ने की सुविधा पेश की गई है. इस कंपोज़ेबल को इस्तेमाल करने का तरीका जानने के लिए, कृपया सैंपल देखें. (I12c08)
  • टीवी के लिए उपलब्ध Material 3 में Icon कंपोज़ेबल को शामिल किया गया (I72db9)
  • हमने tv-material में Surface composable को शामिल किया है. इसमें बॉर्डर, ग्लो, और स्केल जैसे इंडिकेटर शामिल हैं. इनका इस्तेमाल करके ऐसे कॉम्पोनेंट बनाए जा सकते हैं जो टीवी स्क्रीन पर फ़ोकस किए गए एलिमेंट को साफ़ तौर पर हाइलाइट करते हैं. (I4a6d8), (Iceea1), (Iee4d4), (I79edf), (Icb376)
  • CarouselItem को CarouselSlide में अपडेट करें, ताकि यह 'Carousel' एपीआई (Ic4299) में slideCount पैरामीटर के नाम से मैच हो सके

वर्शन 1.0.0-alpha04

8 फ़रवरी, 2023

androidx.tv:tv-foundation:1.0.0-alpha04 और androidx.tv:tv-material:1.0.0-alpha04 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha04 में ये बदलाव शामिल हैं.

नई सुविधाएं

  • लेज़ी रो, कॉलम, और ग्रिड में, अगर ज़रूरी हो, तो पिवट को बदल दिया जाता है. इससे यह पक्का किया जा सकता है कि पूरा आइटम व्यू में आ जाए. (11d7e40)
  • अलग-अलग स्थितियों में टैब के रंगों को पसंद के मुताबिक बनाने की सुविधा जोड़ी गई है. (21b2925)
  • कैरसेल में, आगे और पीछे की ओर मैन्युअल तरीके से स्क्रोल करने के लिए, अब कस्टम ऐनिमेशन इस्तेमाल किए जा सकते हैं. (431494a)

एपीआई में हुए बदलाव

  • androidx.tv.material का नाम बदलकर androidx.tv.material3 किया जा रहा है. साथ ही, androidx.tv.material3 के तहत पैकेज स्ट्रक्चर को फ़्लैट किया जा रहा है. (I6ca52)
  • कैरसेल इंडिकेटर लाइन में मौजूद इंडिकेटर अब एक ऐसा स्लॉट है जिसे डेवलपर अपनी पसंद के मुताबिक बना सकता है. (268af2a)
  • focusableItem का नाम बदलकर immersiveListItem कर दिया गया. उपयोगकर्ताओं को immersiveListItem (5dd5078)(b/263061052) के साथ focusable() या clickable() मॉडिफ़ायर को मैन्युअल तरीके से जोड़ना होगा
  • कैरसेल कॉम्पोनेंट में, timeToDisplayMillis का नाम बदलकर autoScrollDurationMillis कर दिया गया है. (431494a)
  • CarouselItem का इस्तेमाल अब सिर्फ़ Carousel में किया जा सकता है. (431494a)
  • कैरसेल अब EnterTransition और ExitTransitions के बजाय, ऐनिमेशन की परिभाषा के तौर पर ContentTransforms को स्वीकार करता है. (431494a)
  • PinnableContainer एपीआई पेश किया गया है. इसे कंपोज़िशन लोकल के ज़रिए लेज़ी लिस्ट से फैलाया जाता है. इससे मौजूदा आइटम को पिन करने की अनुमति मिलती है. (Ib8881, b/259274257, b/195049010)
  • TvLazyListLayoutInfo और TvLazyGridLayoutInfo में mainAxisItemSpacing प्रॉपर्टी जोड़ी गई (I37765)

गड़बड़ियां ठीक की गईं

  • टैब-रो को अपडेट करें, ताकि यह पक्का किया जा सके कि वह 0 या 1 टैब की संख्या को सही तरीके से हैंडल करता है. (I44009), (1c01525), (b/264018028)
  • TvLazyColumn में खाली TvLazyRow होने पर, फ़ोकस-सर्च के क्रैश होने की समस्या ठीक की गई. (e11b4fe), (b/260299091)
  • clickable मॉडिफ़ायर अब ImmersiveList के साथ काम करता है. (5dd5078), (b/263061052)
  • बैक बटन को अब मैनेज किया जाता है और इसका इस्तेमाल, फ़ीचर्ड कैरसेल से बाहर निकलने के लिए किया जाता है. (84c138c)
  • बटन को तेज़ी से कई बार दबाने पर, कैरसेल पर फ़ोकस नहीं हटता. (799489f)
  • बटन को ज़्यादा देर तक दबाकर रखने पर, कैरसेल पर फ़ोकस नहीं हटता. (b2cf37e)
  • कैरल में स्लाइड की संख्या बदलने पर क्रैश होने की समस्या ठीक की गई. (b261247)

वर्शन 1.0.0-alpha03

7 दिसंबर, 2022

androidx.tv:tv-foundation:1.0.0-alpha03 और androidx.tv:tv-material:1.0.0-alpha03 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha03 में ये बदलाव शामिल हैं.

नई सुविधाएं

  • TabRow अब एक्सपेरिमेंटल एपीआई के तौर पर उपलब्ध है. इससे उपयोगकर्ता, अपने ऐप्लिकेशन में टॉप नेविगेशन बार जोड़ सकेंगे. आम तौर पर, टीवी डिवाइसों को यह उम्मीद होती है कि जब टैब-रो में टैब-टाइटल पर फ़ोकस किया जाता है, तब टैब लोड हो जाते हैं.
  • टीवी के लिए खास तौर पर डिज़ाइन किए गए इंडिकेटर, जैसे कि अंडरलाइन इंडिकेटर और पिल इंडिकेटर, बॉक्स से बाहर उपलब्ध कराए जाते हैं. इस्तेमाल के उदाहरण, tv-samples में देखे जा सकते हैं

वर्शन 1.0.0-alpha02

9 नवंबर, 2022

androidx.tv:tv-foundation:1.0.0-alpha02 और androidx.tv:tv-material:1.0.0-alpha02 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha02 में ये बदलाव शामिल हैं.

गड़बड़ियां ठीक की गईं

  • TvLazyRows/TvLazyColumns के कलेक्शन में स्क्रोल करते समय, स्क्रोल करने की परफ़ॉर्मेंस को बेहतर बनाया गया है. इसके लिए, फ़ोकस सर्च स्पेस को कम किया गया है.(I723a3)

वर्शन 1.0.0-alpha01

5 अक्टूबर, 2022

androidx.tv:tv-foundation:1.0.0-alpha01 और androidx.tv:tv-material:1.0.0-alpha01 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha01 में ये बदलाव शामिल हैं.

नई सुविधाएं

पहले ऐल्फ़ा वर्शन में, टीवी पर इस्तेमाल किए जाने वाले कॉम्पोनेंट की शुरुआती झलक दी गई है. इनमें ये शामिल हैं:

  • नॉन-लेज़ी स्क्रोलिंग कंटेनर, जैसे कि Row, Column, Grid में scrollableWithPivot मॉडिफ़ायर जोड़ा गया है. इससे स्क्रोलिंग कंटेनर, कॉन्टेंट को स्क्रोल कर पाएगा, ताकि फ़ोकस में मौजूद आइटम, टीवी स्क्रीन पर उसी जगह पर बना रहे.
  • स्क्रोल करने वाले कंटेनर में TvLazyRow,TvLazyColumn, TvLazyHorizontalGrid, TvLazyVerticalGrid कंपोज़ेबल जोड़े गए हैं, ताकि कॉन्टेंट को स्क्रोल किया जा सके. इससे, फ़ोकस में मौजूद आइटम, टीवी स्क्रीन पर एक ही जगह पर बना रहता है.
  • टीवी के लिए फ़ीचर्ड कैरसेल कंपोज़ेबल जोड़ा गया है. इससे उपयोगकर्ता, अपने-आप स्क्रोल होने वाला बैनर कैरसेल बना सकता है.
  • टीवी के लिए इमर्सिव लिस्ट कंपोज़ेबल को जोड़ा गया है. इससे उपयोगकर्ता, इमर्सिव लाइन/कॉलम/ग्रिड बना सकता है. यह फ़ोकस किए गए लिस्ट-आइटम के आधार पर बैकग्राउंड को बदलता है.

मौजूदा समस्याएं

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