Compose ऐनिमेशन

उपयोगकर्ता अनुभव को बेहतर बनाने के लिए, Jetpack Compose ऐप्लिकेशन में ऐनिमेशन बनाएं.
नया अपडेट स्टेबल रिलीज़ रिलीज़ कैंडिडेट बीटा रिलीज़ ऐल्फ़ा वर्शन
16 जुलाई, 2025 1.8.3 - 1.9.0-beta03 -

संरचना

Compose, androidx में मौजूद सात Maven ग्रुप आईडी का कॉम्बिनेशन है. हर ग्रुप में, फ़ंक्शन का टारगेट किया गया सबसेट होता है. हर ग्रुप के रिलीज़ नोट का अपना सेट होता है.

इस टेबल में, ग्रुप और रिलीज़ नोट के हर सेट के लिंक के बारे में बताया गया है.

ग्रुपब्यौरा
compose.animationउपयोगकर्ता अनुभव को बेहतर बनाने के लिए, Jetpack Compose ऐप्लिकेशन में ऐनिमेशन बनाएं.
compose.compiler@Composable फ़ंक्शन को बदलें और Kotlin कंपाइलर प्लगिन की मदद से ऑप्टिमाइज़ेशन चालू करें.
compose.foundationइस्तेमाल के लिए तैयार बिल्डिंग ब्लॉक की मदद से, Jetpack Compose ऐप्लिकेशन लिखें. साथ ही, अपने डिज़ाइन सिस्टम के कॉम्पोनेंट बनाने के लिए, फ़ाउंडेशन को बढ़ाएं.
compose.materialइस्तेमाल के लिए तैयार मटीरियल डिज़ाइन कॉम्पोनेंट की मदद से, Jetpack Compose यूज़र इंटरफ़ेस (यूआई) बनाएं. यह Compose का टॉप लेवल एंट्री पॉइंट है. इसे ऐसे कॉम्पोनेंट उपलब्ध कराने के लिए डिज़ाइन किया गया है जो www.material.io पर बताए गए कॉम्पोनेंट से मेल खाते हों.
compose.material3मटीरियल डिज़ाइन 3 कॉम्पोनेंट की मदद से, Jetpack Compose यूज़र इंटरफ़ेस (यूआई) बनाएं. ये कॉम्पोनेंट, मटीरियल डिज़ाइन का अगला वर्शन हैं. Material 3 में, अपडेट की गई थीमिंग और कॉम्पोनेंट शामिल हैं. साथ ही, इसमें Material You की मनमुताबिक बनाने की सुविधाएं भी हैं, जैसे कि डाइनैमिक कलर. इसे Android 12 की नई विज़ुअल स्टाइल और सिस्टम यूज़र इंटरफ़ेस (यूआई) के साथ काम करने के लिए डिज़ाइन किया गया है.
compose.runtimeCompose के प्रोग्रामिंग मॉडल और स्टेट मैनेजमेंट के बुनियादी बिल्डिंग ब्लॉक. साथ ही, Compose Compiler Plugin के लिए कोर रनटाइम, ताकि उसे टारगेट किया जा सके.
compose.uiडिवाइस के साथ इंटरैक्ट करने के लिए, Compose यूज़र इंटरफ़ेस (यूआई) के बुनियादी कॉम्पोनेंट. इनमें लेआउट, ड्रॉइंग, और इनपुट शामिल हैं.

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

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

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

Groovy

dependencies {
    implementation "androidx.compose.animation:animation:1.8.3"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

dependencies {
    implementation("androidx.compose.animation:animation:1.8.3")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

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

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

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

नई समस्या बनाना

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

वर्शन 1.9

वर्शन 1.9.0-beta03

16 जुलाई, 2025

androidx.compose.animation:animation-*:1.9.0-beta03 रिलीज़ हो गया है. वर्शन 1.9.0-beta03 में ये कमिट शामिल हैं.

वर्शन 1.9.0-beta02

2 जुलाई, 2025

androidx.compose.animation:animation-*:1.9.0-beta02 रिलीज़ हो गया है. वर्शन 1.9.0-beta02 में ये कमिट शामिल हैं.

वर्शन 1.9.0-beta01

18 जून, 2025

androidx.compose.animation:animation-*:1.9.0-beta01 रिलीज़ हो गया है. वर्शन 1.9.0-beta01 में ये कमिट शामिल हैं.

वर्शन 1.9.0-alpha04

4 जून, 2025

androidx.compose.animation:animation-*:1.9.0-alpha04 रिलीज़ हो गया है. वर्शन 1.9.0-alpha04 में ये कमिट शामिल हैं.

वर्शन 1.9.0-alpha03

20 मई, 2025

androidx.compose.animation:animation-*:1.9.0-alpha03 रिलीज़ हो गया है. वर्शन 1.9.0-alpha03 में ये कमिट शामिल हैं.

वर्शन 1.9.0-alpha02

7 मई, 2025

androidx.compose.animation:animation-*:1.9.0-alpha02 रिलीज़ हो गया है. वर्शन 1.9.0-alpha02 में ये कमिट शामिल हैं.

नई सुविधाएं

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

वर्शन 1.9.0-alpha01

23 अप्रैल, 2025

androidx.compose.animation:animation-*:1.9.0-alpha01 रिलीज़ हो गया है. वर्शन 1.9.0-alpha01 में ये कमिट शामिल हैं.

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

  • Compose के साथ शिप किए गए Lint चेक के लिए, अब AGP का कम से कम 8.8.2 वर्शन ज़रूरी है. अगर AGP को अपग्रेड नहीं किया जा सकता, तो gradle.properties में android.experimental.lint.version=8.8.2 (या नया वर्शन) का इस्तेमाल करके, Lint को अपग्रेड किया जा सकता है. आईडीई में कंपोज़ के लिंट चेक चलाने के लिए, Android Studio Ladybug या इसके बाद का वर्शन ज़रूरी है.

नई सुविधाएं

  • शेयर किए गए एलिमेंट के लिए स्क्रोल करने की बेहतर परफ़ॉर्मेंस (ea4f1f)

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

  • Kotlin 2.0 के साथ रिलीज़ किए गए प्रोजेक्ट के लिए, KGP 2.0.0 या इसके बाद के वर्शन का इस्तेमाल करना ज़रूरी है. (Idb6b5)
  • TabRow और ScrollableTabRow अब काम नहीं करते. इनकी जगह, हर एक के प्राइमरी और सेकंडरी वैरिएंट का इस्तेमाल किया जाता है. प्राइमरी और सेकंडरी टैब की लाइनें, स्पेसिफ़िकेशन के मुताबिक ज़्यादा सटीक और बेहतर तरीके से काम करती हैं. (I918e2)
  • क्वेरी के संसाधनों में LocalResources कंपोज़िशन लोकल जोड़ी गई. कॉन्फ़िगरेशन में बदलाव होने पर, LocalResources.current को फिर से कंपोज़ किया जाएगा. इसलिए, stringResource() जैसे एपीआई को किए गए कॉल, अपडेट की गई वैल्यू (I50c13, b/274786917) दिखाएंगे

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

  • पक्का करें कि ट्रांज़िशन पूरा होने पर, शेयर किए गए एलिमेंट को ओवरले से हटा दिया गया हो (35f359)
  • ट्रांज़िशन में अतिरिक्त रीकंपोज़िशन को हटाना (988923)
  • बच्चे के ट्रांज़िशन में रुकावट आने की समस्या को ठीक किया गया (8aed52)
  • पक्का करें कि नया TransitionState एट्रिब्यूट की वैल्यू देने पर ट्रांज़िशन रीसेट हो जाए (57820a)

बाहरी योगदान

  • लिखें 1.8.1 से: अगर स्टीवन शॉन ने नई अवधि तय कर दी है, तो SeekableTransitionState में ऐनिमेशन खत्म करें. (0c832c)

वर्शन 1.8

वर्शन 1.8.3

18 जून, 2025

androidx.compose.animation:animation-*:1.8.3 रिलीज़ हो गया है. वर्शन 1.8.3 में ये कमिट शामिल हैं.

वर्शन 1.8.2

20 मई, 2025

androidx.compose.animation:animation-*:1.8.2 रिलीज़ हो गया है. वर्शन 1.8.2 में ये कमिट शामिल हैं.

वर्शन 1.8.1

7 मई, 2025

androidx.compose.animation:animation-*:1.8.1 रिलीज़ हो गया है. वर्शन 1.8.1 में ये कमिट शामिल हैं.

बाहरी योगदान

  • अगर नई अवधि पहले ही खत्म हो चुकी है, तो SeekableTransitionState में ऐनिमेशन बंद करें. धन्यवाद स्टीवन शोएन! (fbcdf7)

वर्शन 1.8.0

23 अप्रैल, 2025

androidx.compose.animation:animation-*:1.8.0 रिलीज़ हो गया है. वर्शन 1.8.0 में ये कमिट शामिल हैं.

1.7.0 के बाद हुए अहम बदलाव

  • वर्शन 1.8.0 में हुए ज़रूरी बदलावों के बारे में इस ब्लॉग पोस्ट में बताया गया है
  • लुकअहेड स्कोप में साइज़ और पोज़िशन में होने वाले बदलावों को ऐनिमेट करने के लिए, नया Modifier.animateBounds एपीआई. (94b939)
  • आर्क और स्प्लाइन के साथ कीफ़्रेम के लिए फ़ाइनल किए गए एपीआई (89e119)
  • LazyGrid और Pager में Lookahead की सुविधा काम करती है. इसमें स्क्रोलिंग, आइटम कंपोज़िशन/डिस्पोज़ल, और आइटम ऐनिमेशन में लुकअहेड पास और अप्रोच पास के बीच अंतर करना शामिल है. साथ ही, स्क्रोलिंग और आइटम ऐनिमेशन टारगेट के लिए, लुकअहेड पास का इस्तेमाल किया जाता है.
  • शेयर किए गए एलिमेंट के सभी एपीआई में एक जैसा नाम रखने के लिए, sharedElement पैरामीटर के नाम को राज्य से बदलकर sharedContentState कर दिया गया है. (9e7df5)
  • AnimatedImageVector एपीआई का सुइट अब स्थिर हो गया है.(69d7e0)

वर्शन 1.8.0-rc03

9 अप्रैल, 2025

androidx.compose.animation:animation-*:1.8.0-rc03 रिलीज़ हो गया है. वर्शन 1.8.0-rc03 में ये कमिट शामिल हैं.

वर्शन 1.8.0-rc02

26 मार्च, 2025

androidx.compose.animation:animation-*:1.8.0-rc02 रिलीज़ हो गया है. वर्शन 1.8.0-rc02 में ये कमिट शामिल हैं.

वर्शन 1.8.0-rc01

12 मार्च, 2025

androidx.compose.animation:animation-*:1.8.0-rc01 रिलीज़ हो गया है. वर्शन 1.8.0-rc01 में ये कमिट शामिल हैं.

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

  • चाइल्ड ट्रांज़िशन के ठीक होने के बावजूद, उसे गलत तरीके से बाधित के तौर पर मार्क किया जा रहा था. इस समस्या को ठीक किया गया है. (3fa2ce)

वर्शन 1.8.0-beta03

26 फ़रवरी, 2025

androidx.compose.animation:animation-*:1.8.0-beta03 रिलीज़ हो गया है. वर्शन 1.8.0-beta03 में ये कमिट शामिल हैं.

वर्शन 1.8.0-beta02

12 फ़रवरी, 2025

androidx.compose.animation:animation-*:1.8.0-beta02 रिलीज़ हो गया है. वर्शन 1.8.0-beta02 में ये कमिट शामिल हैं.

वर्शन 1.8.0-beta01

29 जनवरी, 2025

androidx.compose.animation:animation-*:1.8.0-beta01 रिलीज़ हो गया है. वर्शन 1.8.0-beta01 में ये कमिट शामिल हैं.

वर्शन 1.8.0-alpha08

15 जनवरी, 2025

androidx.compose.animation:animation-*:1.8.0-alpha08 रिलीज़ हो गया है. वर्शन 1.8.0-alpha08 में ये कमिट शामिल हैं.

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

  • MotionFrameOfReferencePlacement के रीसेट होने की वजह से, LazyGrid में animateBounds से गलत प्लेसमेंट ऐनिमेशन को ठीक किया गया. (16193b)
  • SharedTransitionLayout में इंट्रिंसिक क्वेरी की समस्या ठीक की गई. इसके लिए, इंट्रिंसिक क्वेरी को टॉप-लेवल के लुकअहेड रूट से लुकअहेड पास पर रीडायरेक्ट किया गया. (a07d12)
  • दस्तावेज़ों में, वे @param टैग जोड़े गए जो पहले मौजूद नहीं थे. (e5cf67)

वर्शन 1.8.0-alpha07

11 दिसंबर, 2024

androidx.compose.animation:animation-*:1.8.0-alpha07 रिलीज़ हो गया है. वर्शन 1.8.0-alpha07 में ये कमिट शामिल हैं.

नई सुविधाएं

  • यह पेंजर में लुकअहेड की सुविधा के साथ काम करता है. इसके लिए, यह आइटम बनाए रखने और स्क्रोलिंग का इस्तेमाल करने के लिए, लुकअहेड पास को अप्रोच पास से अलग करता है. (b/371802474)

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

  • इस अपडेट में, क्रैश होने की एक ऐसी समस्या को ठीक किया गया है जिसमें शेयर किया गया कोई एलिमेंट कंपोज़ तो हो जाता है, लेकिन उसे कभी मेज़र/प्लेस नहीं किया जाता. इसके लिए, शेयर किए गए एलिमेंट को ओवरले में रेंडर करने से पहले, उसे कम से कम एक बार अपनी जगह पर रेंडर करना ज़रूरी है. (b/371802474)

वर्शन 1.8.0-alpha06

13 नवंबर, 2024

androidx.compose.animation:animation-*:1.8.0-alpha06 रिलीज़ हो गया है. वर्शन 1.8.0-alpha06 में ये कमिट शामिल हैं.

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

  • शेयर किए गए एलिमेंट के सभी एपीआई में एक जैसा नाम रखने के लिए, sharedElement पैरामीटर के नाम को state से बदलकर sharedContentState कर दिया गया है. (I5694c, b/375351468)
  • AnimatedImageVector एपीआई का सुइट अब स्टेबल हो गया है. (I7174b, b/261436267)

वर्शन 1.8.0-alpha05

30 अक्टूबर, 2024

androidx.compose.animation:animation-*:1.8.0-alpha05 रिलीज़ हो गया है. वर्शन 1.8.0-alpha05 में ये कमिट शामिल हैं.

नई सुविधाएं

  • अब LazyGrid में लुकअहेड की सुविधा काम करती है. इसमें स्क्रोलिंग, आइटम कंपोज़िशन/डिस्पोज़ल, और आइटम ऐनिमेशन में लुकअहेड पास और अप्रोच पास के बीच अंतर करना शामिल है. साथ ही, स्क्रोलिंग और आइटम ऐनिमेशन टारगेट के लिए, लुकअहेड पास का इस्तेमाल किया जाता है.

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

  • ट्रांज़िशन फिर से बनाए जाने पर, AnimatedContent के साइज़ ट्रांसफ़ॉर्म के लिए इंटरनल स्टेटस अपडेट करता है. इससे यह पक्का होता है कि टारगेट साइज़ की जानकारी हमेशा अप-टू-डेट रहे. (b/372512085)

वर्शन 1.8.0-alpha04

16 अक्टूबर, 2024

androidx.compose.animation:animation-*:1.8.0-alpha04 रिलीज़ हो गया है. वर्शन 1.8.0-alpha04 में ये कमिट शामिल हैं.

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

  • एक गड़बड़ी को ठीक किया गया है. इसकी वजह से, कुछ ईज़िंग कर्व, समय के कुछ हिस्सों में क्रैश हो जाते थे.
  • आरटीएल मोड में Modifier.animateContentSize के गलत अलाइनमेंट की वजह से होने वाली गड़बड़ी को ठीक किया गया है. (Idae6b, b/372055503)

वर्शन 1.8.0-alpha03

2 अक्टूबर, 2024

androidx.compose.animation:animation-*:1.8.0-alpha03 रिलीज़ हो गया है. वर्शन 1.8.0-alpha03 में ये कमिट शामिल हैं.

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

  • Kotlin का वर्शन 1.9 (I1a14c) पर अपडेट किया गया

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

  • AnimatedContent के साइज़ ऐनिमेशन में मौजूद समस्या को ठीक किया गया है. इसके लिए, ऐनिमेशन को हमेशा ट्रैक किया जाता है और मौजूदा साइज़ से ऐनिमेशन शुरू किया जाता है, ताकि यह लगातार चलता रहे.

वर्शन 1.8.0-alpha02

18 सितंबर, 2024

androidx.compose.animation:animation-*:1.8.0-alpha02 रिलीज़ हो गया है. वर्शन 1.8.0-alpha02 में ये कमिट शामिल हैं.

वर्शन 1.8.0-alpha01

4 सितंबर, 2024

androidx.compose.animation:animation-*:1.8.0-alpha01 रिलीज़ हो गया है. वर्शन 1.8.0-alpha01 में ये कमिट शामिल हैं.

नई सुविधाएं

  • लुकअहेड स्कोप में साइज़ और पोज़िशन में होने वाले बदलावों को ऐनिमेट करने के लिए, नया Modifier.animateBounds एपीआई. 94b9394

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

  • आर्क और स्प्लाइन वाले मुख्य फ़्रेम से एक्सपेरिमेंट वाले फ़्लैग हटाए गए (89e1199)

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

  • कोई मैच न मिलने पर, placeHolderSize लॉजिक को छोड़ें (77c0160)
  • AndroidFlingSpline में वीडियो चलाने का समय सीमित करें, ताकि वीडियो चलाने के समय में लगातार बढ़ोतरी होने की वजह से होने वाली क्रैश की समस्याओं को रोका जा सके(9d47587)
  • कुछ स्थितियों में SharedTransitionScope के आइटम न दिखाने की समस्या ठीक की गई (b41077b6)

बाहरी योगदान

  • स्टीवन शॉन का कोई ट्रांज़िशन चालू न होने पर, सीक किए जा सकने वाले ट्रांज़िशन playTime को सेट होने से रोकें. (c2e6e7e6)

वर्शन 1.7

वर्शन 1.7.8

12 फ़रवरी, 2025

androidx.compose.animation:animation-*:1.7.8 रिलीज़ हो गया है. वर्शन 1.7.8 में ये कमिट शामिल हैं.

वर्शन 1.7.7

29 जनवरी, 2025

androidx.compose.animation:animation-*:1.7.7 रिलीज़ हो गया है. 1.7.6 वर्शन में कोई बदलाव नहीं किया गया है. 11 दिसंबर, 2024

androidx.compose.animation:animation-*:1.7.6 रिलीज़ हो गया है. वर्शन 1.7.6 में ये कमिट शामिल हैं.

वर्शन 1.7.5

30 अक्टूबर, 2024

androidx.compose.animation:animation-*:1.7.5 रिलीज़ हो गया है. वर्शन 1.7.5 में ये कमिट शामिल हैं.

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

  • आरटीएल मोड में Modifier.animateContentSize के गलत अलाइनमेंट की वजह से होने वाली गड़बड़ी को ठीक किया गया है. (Idae6b, b/372055503)

वर्शन 1.7.4

16 अक्टूबर, 2024

androidx.compose.animation:animation-*:1.7.4 रिलीज़ हो गया है. वर्शन 1.7.4 में ये कमिट शामिल हैं.

वर्शन 1.7.3

2 अक्टूबर, 2024

androidx.compose.animation:animation-*:1.7.3 रिलीज़ हो गया है. वर्शन 1.7.3 में ये कमिट शामिल हैं.

वर्शन 1.7.2

18 सितंबर, 2024

androidx.compose.animation:animation-*:1.7.2 रिलीज़ हो गया है. वर्शन 1.7.2 में ये कमिट शामिल हैं.

बाहरी योगदान

  • जब कोई ट्रांज़िशन नहीं चल रहा हो, तब सीक किए जा सकने वाले ट्रांज़िशन playTime को सेट होने से रोकना. धन्यवाद स्टीवन शोएन! (c2e6e7e6)

वर्शन 1.7.1

10 सितंबर, 2024

  • Android आर्टफ़ैक्ट में कोई बदलाव नहीं किया गया है. -desktop आर्टफ़ैक्ट हटा दिए गए हैं. साथ ही, -jvmStubs और -linuxx64Stubs आर्टफ़ैक्ट जोड़ दिए गए हैं. इनमें से किसी भी टारगेट का इस्तेमाल नहीं किया जाना चाहिए. ये सिर्फ़ प्लेसहोल्डर हैं, ताकि Jetbrains Compose को बेहतर बनाने में मदद मिल सके.

वर्शन 1.7.0

4 सितंबर, 2024

androidx.compose.animation:animation-*:1.7.0 रिलीज़ हो गया है.

1.6.0 के बाद हुए अहम बदलाव

वर्शन 1.7.0 में हुए अहम बदलावों के बारे में इस ब्लॉग पोस्ट में बताया गया है.

शेयर किए गए एलिमेंट के ट्रांज़िशन के लिए नए एपीआई

  • शेयर किए गए एलिमेंट के ट्रांज़िशन के नए एपीआई, आपके इस्तेमाल और सुझाव/राय देने या शिकायत करने के लिए उपलब्ध हैं. ये नए एक्सपेरिमेंटल एपीआई, लेआउट को टैग करने की सुविधा देते हैं. इसके लिए, दिए गए मॉडिफ़ायर का इस्तेमाल करके, लेआउट ट्री में लेआउट को शेयर किया जाता है. इससे, शेयर किए गए कॉन्टेंट का एक सेट बंद होने और दूसरा सेट शुरू होने पर, बाउंड्री में आसानी से बदलाव होता है. (Icb0b9)
  • sharedBounds में कॉन्टेंट को बड़े पैमाने पर उपलब्ध कराने के लिए, नई scaleInSharedContentToBounds और scaleOutSharedContentToBounds (I731c1)
  • एक्सपेरिमेंटल SharedTransitionScope अब क्लास के बजाय इंटरफ़ेस है. (Iaf856)
  • sharedBounds के लिए नया resizeModes (ScaleToBounds और RemeasureToBounds). इससे, मेज़रमेंट को स्केल करने और फिर से मेज़र करने के बीच कोई विकल्प चुना जा सकता है. पिछले scaleIn/OutSharedContentToBounds एपीआई अब काम नहीं करते. (I0d41a)

मौजूदा एपीआई में सुधार:

  • नया Modifier.animateContentSize, जो कस्टम कॉन्टेंट अलाइनमेंट के लिए एक अतिरिक्त पैरामीटर लेता है. (I5623a, b/269803907)
  • साइज़, पोज़िशन या किसी अन्य टारगेट को ऐनिमेट करने के लिए, नया एक्सपेरिमेंटल DeferredTargetAnimation. इंस्टैंटिएशन के दौरान, टारगेट के बारे में जानकारी नहीं होती है. (I60745)
  • SeekableTransitionState, snapTo() को seekTo() से बदलता है. साथ ही, एक snapTo() जोड़ता है, जो बिना किसी ऐनिमेशन के स्थिति को तुरंत डेस्टिनेशन स्थिति में बदल देता है.
  • अब keyframesWithSpline को periodicBias वैल्यू (फ़्लोट) दी जा सकती है. इससे स्प्लाइन की शुरुआती और आखिरी वेलोसिटी बराबर हो जाएगी. स्प्लाइन का इस्तेमाल करके, बार-बार होने वाले ऐनिमेशन के लिए यह फ़ंक्शन काम का होता है. बायस से पता चलता है कि पीरियोडिसिटी हासिल करने के लिए, हर वेलोसिटी (शुरुआती और आखिरी) में कितना बदलाव किया जाता है. (Ic1e6c, b/292114811)

यहां दिए गए एपीआई अब स्टेबल हो गए हैं या इन्हें हटा दिया गया है:

  • AnimatedVisibilityScope.transition अब एक स्टेबल एपीआई है. Modifier.animateEnterExit(..) को भी स्थिर कर दिया गया है. (I6c1d1)
  • ApproachLayoutModifierNode और Modifier.approachLayout अब स्थिर हो गए हैं. साथ ही, पुराने isMeasurementApproachComplete() और isPlacementApproachComplete() की जगह लेने के लिए, नए isMeasurementApproachInProgress() और isPlacementApproachInProgress() उपलब्ध हैं.
  • बहिष्कृत किए गए intermediateLayout मॉडिफ़ायर को हटाया गया. (I3e91c)
  • LookaheadScope एपीआई को स्थिर कर दिया गया है. (I21507)

वर्शन 1.7.0-rc01

21 अगस्त, 2024

androidx.compose.animation:animation-*:1.7.0-rc01 रिलीज़ हो गया है. वर्शन 1.7.0-rc01 में ये कमिट शामिल हैं.

वर्शन 1.7.0-beta07

7 अगस्त, 2024

androidx.compose.animation:animation-*:1.7.0-beta07 रिलीज़ हो गया है. वर्शन 1.7.0-beta07 में ये कमिट शामिल हैं.

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

  • कुछ मामलों में ट्रांज़िशन के दौरान, फ़िक्स्ड SharedTransitionScope के ओवरले आइटम नहीं दिख रहे थे. आम तौर पर, ऐसा नेविगेशन के साथ इस्तेमाल करने पर होता था. इस समस्या को ठीक किया गया है. (Id65ab, b/347520198)

वर्शन 1.7.0-beta06

24 जुलाई, 2024

androidx.compose.animation:animation-*:1.7.0-beta06 रिलीज़ हो गया है. वर्शन 1.7.0-beta06 में ये कमिट शामिल हैं.

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

  • ट्रांज़िशन के बंद होने पर, SnapshotStateObserver से मिले ऑब्ज़र्वेशन को सही तरीके से हटाने की सुविधा जोड़ी गई है. इससे SeekableTransition की ट्रांज़िशन स्टेट लीक होने की समस्या ठीक हो गई है. (b9c7182)
  • ऐसे कुछ मामलों को ठीक किया गया है जिनमें पैरंट ट्रांज़िशन पूरा होने पर, चाइल्ड ट्रांज़िशन को 'पूरा हो गया' के तौर पर सही तरीके से मार्क नहीं किया जाता था. (dc42216)

वर्शन 1.7.0-beta05

10 जुलाई, 2024

androidx.compose.animation:animation-*:1.7.0-beta05 रिलीज़ हो गया है. वर्शन 1.7.0-beta05 में ये कमिट शामिल हैं.

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

  • अब snapshotFlow में, ट्रांज़िशन प्रॉपर्टी totalDurationNanos को सही तरीके से पढ़ा जा सकता है.

वर्शन 1.7.0-beta04

26 जून, 2024

androidx.compose.animation:animation-*:1.7.0-beta04 रिलीज़ हो गया है. वर्शन 1.7.0-beta04 में ये कमिट शामिल हैं.

वर्शन 1.7.0-beta03

12 जून, 2024

androidx.compose.animation:animation-*:1.7.0-beta03 रिलीज़ हो गया है. वर्शन 1.7.0-beta03 में ये कमिट शामिल हैं.

वर्शन 1.7.0-beta02

29 मई, 2024

androidx.compose.animation:animation-*:1.7.0-beta02 रिलीज़ हो गया है. वर्शन 1.7.0-beta02 में ये कमिट शामिल हैं.

वर्शन 1.7.0-beta01

14 मई, 2024

androidx.compose.animation:animation-*:1.7.0-beta01 रिलीज़ हो गया है. वर्शन 1.7.0-beta01 में ये कमिट शामिल हैं.

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

  • sharedBounds के लिए नया resizeModes (ScaleToBounds और RemeasureToBounds). इससे, मेज़रमेंट को स्केल करने और फिर से मेज़र करने के बीच कोई विकल्प चुना जा सकता है. पिछले scaleIn/OutSharedContentToBounds एपीआई अब काम नहीं करते. (I0d41a)

बाहरी योगदान

  • स्टीवन शॉन ने एक्सपेरिमेंटल SharedTransitionScope को अब क्लास के बजाय इंटरफ़ेस बना दिया है. (Iaf856, b/338415048, b/338414702)

वर्शन 1.7.0-alpha08

1 मई, 2024

androidx.compose.animation:animation-*:1.7.0-alpha08 रिलीज़ हो गया है. वर्शन 1.7.0-alpha08 में ये कमिट शामिल हैं.

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

  • LookaheadScope एपीआई को स्थिर कर दिया गया है. (I21507)

बाहरी योगदान

  • स्टीवन शॉन (1ca89529) ने SeekableTransitionState के ऐनिमेट/स्नैप होने के बाद, ऐनिमेशन शुरू होने का समय साफ़ किया

वर्शन 1.7.0-alpha07

17 अप्रैल, 2024

androidx.compose.animation:animation-*:1.7.0-alpha07 रिलीज़ हो गया है. वर्शन 1.7.0-alpha07 में ये कमिट शामिल हैं.

नई सुविधाएं

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

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

  • AnimatedVisibilityScope.transition अब एक स्टेबल एपीआई है. Modifier.animateEnterExit(..) को भी स्थिर कर दिया गया है. (I6c1d1)
  • ApproachLayoutModifierNode और Modifier.approachLayout अब स्थिर हो गए हैं. साथ ही, पुराने isMeasurementApproachComplete() और isPlacementApproachComplete() की जगह लेने के लिए, नए isMeasurementApproachInProgress() और isPlacementApproachInProgress() उपलब्ध हैं.
  • बहिष्कृत किए गए intermediateLayout मॉडिफ़ायर को हटाया गया. (I3e91c)
  • अब keyframesWithSpline को periodicBias वैल्यू (फ़्लोट) दी जा सकती है. इससे स्प्लाइन की शुरुआती और आखिरी वेलोसिटी बराबर हो जाएगी. स्प्लाइन का इस्तेमाल करके, बार-बार होने वाले ऐनिमेशन के लिए यह फ़ंक्शन काम का होता है. बायस से पता चलता है कि पीरियोडिसिटी हासिल करने के लिए, हर वेलोसिटी (शुरुआती और आखिरी) में कितना बदलाव किया जाता है. (Ic1e6c, b/292114811)

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

  • इज़िंग कर्व के ज़्यादा और कम होने की समस्या ठीक की गई है. पहले, इन्हें 0..1 पर क्लैंप किया जाता था (I38747)

वर्शन 1.7.0-alpha06

3 अप्रैल, 2024

androidx.compose.animation:animation-*:1.7.0-alpha06 रिलीज़ हो गया है. वर्शन 1.7.0-alpha06 में ये कमिट शामिल हैं.

नई सुविधाएं

  • LazyColumn और LazyRow में, आइटम के दिखने और गायब होने के ऐनिमेशन की सुविधा जोड़ी गई. पहले, प्लेसमेंट (फिर से क्रम में लगाना) ऐनिमेशन के लिए सहायता पाने के लिए, Modifier.animateItemPlacement() मॉडिफ़ायर जोड़ा जा सकता था. हमने इस मॉडिफ़ायर को बंद कर दिया है और एक नया मॉडिफ़ायर लॉन्च किया है. यह मॉडिफ़ायर एक्सपेरिमेंट के लिए नहीं है. इसका नाम Modifier.animateItem() है. इसकी मदद से, ऐनिमेशन के तीनों टाइप इस्तेमाल किए जा सकते हैं: दिखना (फ़ेड इन), गायब होना (फ़ेड आउट), और क्रम बदलना. (I2d7f7, b/330152398, b/150812265)

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

  • updateTransition एपीआई की परफ़ॉर्मेंस में सुधार किया गया है.

वर्शन 1.7.0-alpha05

20 मार्च, 2024

androidx.compose.animation:animation-*:1.7.0-alpha05 रिलीज़ हो गया है. वर्शन 1.7.0-alpha05 में ये कमिट शामिल हैं.

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

  • SeekableTransitionState, snapTo() को seekTo() से बदलता है. साथ ही, एक snapTo() जोड़ता है, जो बिना किसी ऐनिमेशन के स्थिति को तुरंत डेस्टिनेशन स्थिति में बदल देता है.

वर्शन 1.7.0-alpha04

6 मार्च, 2024

androidx.compose.animation:animation-*:1.7.0-alpha04 रिलीज़ हो गया है. वर्शन 1.7.0-alpha04 में ये कमिट शामिल हैं.

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

  • पाथ की दिशा बदलने के लिए नया एपीआई Path.reverse() (I36348)

वर्शन 1.7.0-alpha03

21 फ़रवरी, 2024

androidx.compose.animation:animation-*:1.7.0-alpha03 रिलीज़ हो गया है. वर्शन 1.7.0-alpha03 में ये कमिट शामिल हैं.

नई सुविधाएं

  • नया Modifier.animateContentSize, जो कस्टम कॉन्टेंट अलाइनमेंट के लिए एक अतिरिक्त पैरामीटर लेता है. (I5623a, b/269803907)
  • साइज़, पोज़िशन या किसी अन्य टारगेट को ऐनिमेट करने के लिए, नया एक्सपेरिमेंटल DeferredTargetAnimation. इंस्टैंटिएशन के दौरान, टारगेट के बारे में जानकारी नहीं होती है. (I60745)

वर्शन 1.7.0-alpha02

7 फ़रवरी, 2024

androidx.compose.animation:animation-*:1.7.0-alpha02 रिलीज़ हो गया है. वर्शन 1.7.0-alpha02 में ये कमिट शामिल हैं.

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

  • KeyframesSpec के साथ काम करने से जुड़ी समस्या ठीक की गई. (I2bdf3, b/322214617)
  • LazyList में इस्तेमाल किए जाने पर, Modifier.animateContentSize के ठीक से रीसेट न होने की समस्या ठीक की गई. (I070512, b/322525716)
  • टाइमस्टैंप की सीमा से बाहर होने पर, IllegalStateException को KeyframesSpec पर ठीक किया गया. (I341b8, b/322839811)

वर्शन 1.7.0-alpha01

24 जनवरी, 2024

androidx.compose.animation:animation-*:1.7.0-alpha01 रिलीज़ हो गया है. वर्शन 1.7.0-alpha01 में ये कमिट शामिल हैं.

वर्शन 1.6

वर्शन 1.6.8

12 जून, 2024

androidx.compose.animation:animation-*:1.6.8 रिलीज़ हो गया है. वर्शन 1.6.8 में ये कमिट शामिल हैं.

वर्शन 1.6.7

1 मई, 2024

androidx.compose.animation:animation-*:1.6.7 रिलीज़ हो गया है. वर्शन 1.6.7 में ये कमिट शामिल हैं.

वर्शन 1.6.6

17 अप्रैल, 2024

androidx.compose.animation:animation-*:1.6.6 रिलीज़ हो गया है. पिछली रिलीज़ के बाद से कोई बदलाव नहीं हुआ है

वर्शन 1.6.5

3 अप्रैल, 2024

androidx.compose.animation:animation-*:1.6.5 रिलीज़ हो गया है. वर्शन 1.6.5 में ये कमिट शामिल हैं.

वर्शन 1.6.4

20 मार्च, 2024

androidx.compose.animation:animation-*:1.6.4 रिलीज़ हो गया है. वर्शन 1.6.4 में ये कमिट शामिल हैं.

वर्शन 1.6.3

6 मार्च, 2024

androidx.compose.animation:animation-*:1.6.3 रिलीज़ हो गया है. वर्शन 1.6.3 में ये कमिट शामिल हैं.

वर्शन 1.6.2

21 फ़रवरी, 2024

androidx.compose.animation:animation-*:1.6.2 रिलीज़ हो गया है. वर्शन 1.6.2 में ये कमिट शामिल हैं.

वर्शन 1.6.1

7 फ़रवरी, 2024

androidx.compose.animation:animation-*:1.6.1 रिलीज़ हो गया है. वर्शन 1.6.1 में ये कमिट शामिल हैं.

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

  • KeyframesSpec के साथ काम करने से जुड़ी समस्या ठीक की गई. (I2bdf3, b/322214617)

वर्शन 1.6.0

24 जनवरी, 2024

androidx.compose.animation:animation-*:1.6.0 रिलीज़ हो गया है. वर्शन 1.6.0 में ये कमिट शामिल हैं.

वर्शन 1.6.0-rc01

10 जनवरी, 2024

androidx.compose.animation:animation-*:1.6.0-rc01 रिलीज़ हो गया है. वर्शन 1.6.0-rc01 में ये कमिट शामिल हैं.

वर्शन 1.6.0-beta03

13 दिसंबर, 2023

androidx.compose.animation:animation-*:1.6.0-beta03 रिलीज़ हो गया है. वर्शन 1.6.0-beta03 में ये कमिट शामिल हैं.

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

  • scaleInToFitContainer और scaleOutToFitContainer को AnimatedContentTransitionScope से कुछ समय के लिए हटा दिया गया है, क्योंकि इनके लिए लुकअहेड की ज़रूरत होती है. ये सुविधाएं तब उपलब्ध होंगी, जब आने वाले समय में रिलीज़ होने वाले वर्शन में, लुकअहेड की सुविधा डिफ़ॉल्ट रूप से चालू होगी या आपने इसे चालू किया होगा.

वर्शन 1.6.0-beta02

29 नवंबर, 2023

androidx.compose.animation:animation-*:1.6.0-beta02 रिलीज़ हो गया है. वर्शन 1.6.0-beta02 में ये कमिट शामिल हैं.

वर्शन 1.6.0-beta01

15 नवंबर, 2023

androidx.compose.animation:animation-*:1.6.0-beta01 रिलीज़ हो गया है. वर्शन 1.6.0-beta01 में ये कमिट शामिल हैं.

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

  • ज़्यादा जानकारी देने के लिए, ExitTransition.Hold का नाम बदलकर ExitTransition.KeepUntilTransitionsFinished कर दिया गया है. (I1c490)
  • अब keyframesWithSpline का इस्तेमाल करके, किसी भी N-डाइमेंशनल वैल्यू को इंटरपोलेट किया जा सकता है. इसके लिए, मोनोटोनिक स्प्लाइन का इस्तेमाल किया जाता है. यह Offset, IntOffset, DpOffset जैसी पोज़िशनल वैल्यू को इंटरपोलेट करने के लिए खास तौर पर उपयोगी है. इसे एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई के तौर पर जोड़ा गया है.

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

  • ArcLine में स्वीप ग्रेडिएंट के लिए रेंडरर की सुविधा जोड़ी गई. (I4d5bb)
  • PageSize.Fixed के लिए equals और hashcode लागू करें. (Ie3ede, b/300134276)
  • Window Inset में बदलाव करने पर, बाइनरी के साथ काम करने से जुड़ी समस्या ठीक की गई. (Iee695)
  • Material3 चिप/बटन के लिए, मटीरियल कोर लेयर हटाएं. ऐसा इसलिए, क्योंकि माइक्रोबेंचमार्क से पता चलता है कि इसके बिना बेहतर परफ़ॉर्मेंस मिलती है. (I55555)

वर्शन 1.6.0-alpha08

18 अक्टूबर, 2023

androidx.compose.animation:animation-*:1.6.0-alpha08 रिलीज़ हो गया है. वर्शन 1.6.0-alpha08 में ये कमिट शामिल हैं.

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

  • बिल्डर पैटर्न को बनाए रखने वाले KeyframesSpecConfig#using के पक्ष में KeyframesSpecConfig#with को बंद कर दिया गया है. (I1d769)

वर्शन 1.6.0-alpha07

4 अक्टूबर, 2023

androidx.compose.animation:animation-*:1.6.0-alpha07 रिलीज़ हो गया है. वर्शन 1.6.0-alpha07 में ये कमिट शामिल हैं.

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

  • फ़िक्स्ड और स्क्रोल किए जा सकने वाले टैबरो में अब प्राइमरी और सेकंडरी वैरिएंट उपलब्ध हैं. ये Material3 में तय किए गए रंग और इंडिकेटर के व्यवहार के हिसाब से सही तरीके से मैप किए गए हैं.
  • PrimaryScrollableTabRow और SecondaryScrollableTabRow अब स्क्रोल की स्थिति दिखाते हैं. (Iec8f5, b/260572337)

वर्शन 1.6.0-alpha06

20 सितंबर, 2023

androidx.compose.animation:animation-*:1.6.0-alpha06 रिलीज़ हो गया है. वर्शन 1.6.0-alpha06 में ये कमिट शामिल हैं.

वर्शन 1.6.0-alpha05

6 सितंबर, 2023

androidx.compose.animation:animation-*:1.6.0-alpha05 रिलीज़ हो गया है. वर्शन 1.6.0-alpha05 में ये कमिट शामिल हैं.

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

  • PathEasing को जोड़ा गया, ताकि ईज़िंग कर्व को कोई भी पाथ दिया जा सके. (Idb4b9)

वर्शन 1.6.0-alpha04

23 अगस्त, 2023

androidx.compose.animation:animation-*:1.6.0-alpha04 रिलीज़ हो गया है. वर्शन 1.6.0-alpha04 में ये कमिट शामिल हैं.

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

  • डेवलपर को ट्रांज़िशन की प्रोसेस को कंट्रोल करने की अनुमति देने के लिए, SeekableTransitionState जोड़ें. (I8e69d)

वर्शन 1.6.0-alpha03

9 अगस्त, 2023

androidx.compose.animation:animation-*:1.6.0-alpha03 रिलीज़ हो गया है. वर्शन 1.6.0-alpha03 में ये कमिट शामिल हैं.

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

  • ऑब्जेक्ट को सीन में शामिल करने और हटाने के लिए, ट्रांज़िशन का नया टाइप. यह ऑब्जेक्ट को सीन में शामिल करने और हटाने के दौरान, ऐनिमेशन वाले कंटेनर के साइज़ के हिसाब से कॉन्टेंट को स्केल करता है. LookaheadScope कंपोज़ेबल फ़न और इंटरफ़ेस अब स्टेबल हो गए हैं. (Ifb2ce)

वर्शन 1.6.0-alpha02

26 जुलाई, 2023

androidx.compose.animation:animation-*:1.6.0-alpha02 रिलीज़ हो गया है. वर्शन 1.6.0-alpha02 में ये कमिट शामिल हैं.

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

  • AnimatedContent में आउटगोइंग कॉन्टेंट दिखाने के लिए नया ExitTransition.Hold. यह तब तक दिखेगा, जब तक दोनों ट्रांज़िशन खत्म नहीं हो जाते. (I5984f)
  • कंपोज़ेबल में इस्तेमाल किए जा सकने वाले इनपुट तय करने के लिए अतिरिक्त एनोटेशन (I51109)

वर्शन 1.6.0-alpha01

21 जून, 2023

androidx.compose.animation:animation-*:1.6.0-alpha01 रिलीज़ हो गया है. वर्शन 1.6.0-alpha01 में ये कमिट शामिल हैं.

नई सुविधाएं

  • लुकअहेड पास में टारगेट साइज़ की जानकारी देकर, Modifier.animateContentSize और AnimatedVisibility को लुकअहेड सिस्टम में पूरी तरह से इंटिग्रेट किया जा सकता है.

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

  • IntrinsincMeasureScope में नई प्रॉपर्टी और उसके लागू करने के तरीके (जैसे, MeasureScope), ताकि यह पता चल सके कि मौजूदा मेज़रमेंट पास, लुकअहेड पास है या नहीं. (I7a812)

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

  • स्प्रिंग ऐनिमेशन से, मेमोरी के लिए जगह का बंटवारा हटाया गया. (Ie9431)
  • Enum.valueOf के लिए वैल्यू पैरामीटर का नाम बदला गया (Ia9b89)
  • enum valueOf (I818fe) से ज़्यादा थ्रो किए गए अपवाद

संस्‍करण 1.5

वर्शन 1.5.4

18 अक्टूबर, 2023

androidx.compose.animation:animation-*:1.5.4 रिलीज़ हो गया है. वर्शन 1.5.4 में ये कमिट शामिल हैं.

वर्शन 1.5.3

4 अक्टूबर, 2023

androidx.compose.animation:animation-*:1.5.3 रिलीज़ हो गया है. इस वर्शन में कोई बदलाव नहीं किया गया है

संस्‍करण 1.5.2

27 सितंबर, 2023

androidx.compose.animation:animation-*:1.5.2 रिलीज़ हो गया है. वर्शन 1.5.2 में ये कमिट शामिल हैं.

संस्‍करण 1.5.1

6 सितंबर, 2023

androidx.compose.foundation:foundation-*:1.5.1 रिलीज़ हो गया है. वर्शन 1.5.1 में ये कमिट शामिल हैं.

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

  • readOnly की वैल्यू सही होने पर, कीबोर्ड दिखाने वाले टेक्स्ट फ़ील्ड और उनमें बदलाव करने की सुविधा से जुड़ी समस्या ठीक की गई. इसके अलावा, फ़ोकस किए जाने के दौरान readOnly को सही से गलत पर बदलने पर कीबोर्ड न दिखने की समस्या को भी ठीक किया गया है. (I34a19, b/246909589)

संस्‍करण 1.5.1

6 सितंबर, 2023

androidx.compose.animation:animation-*:1.5.1 रिलीज़ हो गया है. वर्शन 1.5.1 में ये कमिट शामिल हैं.

वर्शन 1.5.0

9 अगस्त, 2023

androidx.compose.animation:animation-*:1.5.0 रिलीज़ हो गया है. वर्शन 1.5.0 में ये कमिट शामिल हैं.

वर्शन 1.5.0-rc01

26 जुलाई, 2023

androidx.compose.animation:animation-*:1.5.0-rc01 रिलीज़ हो गया है. वर्शन 1.5.0-rc01 में ये कमिट शामिल हैं.

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

  • हमने उस समस्या को ठीक कर दिया है जिसमें प्रिमिटिव स्टेट टाइप (जैसे कि MutableIntState) पर .value को कॉल करने पर, अमान्य फ़िक्स के साथ लिंट चेतावनी दिखती थी. अब जांच में, सही प्रॉपर्टी पर माइग्रेट करने का सुझाव दिया जाएगा. (Iba953, b/287279257)

  • प्रिमिटिव के लिए, mutableStateOf() कॉल को उनके खास टाइप में माइग्रेट करने का सुझाव देने के लिए, जांच का विकल्प उपलब्ध है. इसका लिंट आईडी AutoboxingStateCreation है. पहले, यह जांच सभी प्रोजेक्ट के लिए डिफ़ॉल्ट रूप से चालू होती थी. Android Studio के एडिटर और आपके प्रोजेक्ट के लिंट आउटपुट में इस चेतावनी को देखने के लिए, इसकी गंभीरता को सूचना से बदलकर चेतावनी (या इससे ज़्यादा) पर सेट करें. इसके लिए, अपने मॉड्यूल के build.gradle या build.gradle.kts कॉन्फ़िगरेशन में warning "AutoboxingStateCreation" को इस तरह से एलान करें (I34f7e):

        android {
            lint {
                warning "AutoboxingStateCreation"
            }
            ...
        }
    

वर्शन 1.5.0-beta03

28 जून, 2023

androidx.compose.animation:animation-*:1.5.0-beta03 रिलीज़ हो गया है. वर्शन 1.5.0-beta03 में ये कमिट शामिल हैं.

वर्शन 1.5.0-beta02

7 जून, 2023

androidx.compose.animation:animation-*:1.5.0-beta02 रिलीज़ हो गया है. वर्शन 1.5.0-beta02 में ये कमिट शामिल हैं.

वर्शन 1.5.0-beta01

24 मई, 2023

androidx.compose.animation:animation-*:1.5.0-beta01 रिलीज़ हो गया है. वर्शन 1.5.0-beta01 में ये कमिट शामिल हैं.

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

  • रीकंपोज़िशन, कलर ऐनिमेशन, और AndroidComposeView (Ib2bfa) में किए गए असाइनमेंट हटा दिए गए हैं

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

  • स्प्रिंग ऐनिमेशन से हटाए गए असाइनमेंट (Ie9431)

वर्शन 1.5.0-alpha04

10 मई, 2023

androidx.compose.animation:animation-*:1.5.0-alpha04 रिलीज़ हो गया है. वर्शन 1.5.0-alpha04 में ये कमिट शामिल हैं.

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

  • ContentKey अब AnimatedContent में काम करता है, ताकि यह तय किया जा सके कि ट्रांज़िशन कब होना चाहिए. (Ic069b)

वर्शन 1.5.0-alpha03

19 अप्रैल, 2023

androidx.compose.animation:animation-*:1.5.0-alpha03 रिलीज़ हो गया है. वर्शन 1.5.0-alpha03 में ये कमिट शामिल हैं.

नई सुविधाएं

  • LookaheadScope में SubcomposeLayout के लिए नया डिफ़ॉल्ट व्यवहार. इससे, SubcomposeLayouts के साथ लुकअहेड ऐनिमेशन को बेहतर तरीके से काम करने में मदद मिलती है. जैसे, TabRow, Scaffold, BoxWithConstraints वगैरह.

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

  • नया डिफ़ॉल्ट intermediateMeasurePolicy, लुकअहेड पास से मेज़रमेंट की नीति का फिर से इस्तेमाल करता है. इससे SubcomposeLayout के ऐसे सबटाइप जो कंडिशनल स्लॉट के बिना काम करते हैं, जैसे कि Scaffold, TabRow, और BoxWithConstraints, डिफ़ॉल्ट रूप से लुकअहेड के साथ काम कर पाते हैं. (Id84c8)
  • स्लाइड में ऑब्जेक्ट जोड़ते और हटाते समय होने वाले ट्रांज़िशन को एक साथ दिखाने के लिए, infix fun with का नाम बदलकर togetherWith कर दिया गया है. कॉन्टेंट लैंबडा के लिए, रिसीवर के तौर पर नया AnimatedContentScope. (Ic39ae)

वर्शन 1.5.0-alpha02

5 अप्रैल, 2023

androidx.compose.animation:animation-*:1.5.0-alpha02 रिलीज़ हो गया है. वर्शन 1.5.0-alpha02 में ये कमिट शामिल हैं.

नई सुविधाएं

  • SubcomposeLayout में लुकअहेड की सुविधा के लिए, नया एक्सपेरिमेंटल एपीआई. इससे LookaheadScope में SubcomposeLayout को ठीक से काम करने की अनुमति मिल जाएगी. SubcomposeLayout के कुछ सबटाइप के लिए, ज़्यादा बेहतर सहायता जल्द ही उपलब्ध होगी.

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

  • नया SubcomposeLayout एपीआई, जो लुकअहेड पर आधारित ऐनिमेशन के दौरान मेज़र/लेआउट लॉजिक को मैनेज करने के लिए, मेज़रमेंट की नीति से जुड़ी अतिरिक्त जानकारी लेता है. (I017d3)

वर्शन 1.5.0-alpha01

22 मार्च, 2023

androidx.compose.animation:animation-*:1.5.0-alpha01 रिलीज़ हो गया है. वर्शन 1.5.0-alpha01 में ये कमिट शामिल हैं.

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

  • AnimatedContent एपीआई अब स्टेबल हैं. AnimatedContentScope का नाम बदलकर AnimatedContentTransitionScope कर दिया गया है. scaleIn और scaleOut अब स्टेबल एपीआई हैं. (Iaf54e)

वर्शन 1.4

वर्शन 1.4.3

3 मई, 2023

androidx.compose.animation:animation:1.4.3, androidx.compose.animation:animation-core:1.4.3, और androidx.compose.animation:animation-graphics:1.4.3 में कोई बदलाव नहीं किया गया है. सिर्फ़ वर्शन को अपडेट किया गया है.

वर्शन 1.4.2

19 अप्रैल, 2023

androidx.compose.animation:animation:1.4.2, androidx.compose.animation:animation-core:1.4.2, और androidx.compose.animation:animation-graphics:1.4.2 में कोई बदलाव नहीं किया गया है. वर्शन 1.4.2 में ये कमिट शामिल हैं.

वर्शन 1.4.1

5 अप्रैल, 2023

androidx.compose.animation:animation:1.4.1, androidx.compose.animation:animation-core:1.4.1, और androidx.compose.animation:animation-graphics:1.4.1 में कोई बदलाव नहीं किया गया है. वर्शन 1.4.1 में ये कमिट शामिल हैं.

वर्शन 1.4.0

22 मार्च, 2023

androidx.compose.animation:animation:1.4.0, androidx.compose.animation:animation-core:1.4.0, और androidx.compose.animation:animation-graphics:1.4.0 रिलीज़ किए गए हैं. वर्शन 1.4.0 में ये कमिट शामिल हैं.

1.3.0 के बाद हुए अहम बदलाव

  • टूलिंग लेबल, rememberInfiniteTransition और InfiniteTransition और ट्रांज़िशन (जैसे, InfiniteTransition#animateColor) पर मौजूद सभी एक्सटेंशन फ़ंक्शन के साथ काम करता है (I56ef7)

वर्शन 1.4.0-rc01

8 मार्च, 2023

androidx.compose.animation:animation:1.4.0-rc01, androidx.compose.animation:animation-core:1.4.0-rc01, और androidx.compose.animation:animation-graphics:1.4.0-rc01 में कोई बदलाव नहीं किया गया है. वर्शन 1.4.0-rc01 में ये कमिट शामिल हैं.

वर्शन 1.4.0-beta02

22 फ़रवरी, 2023

androidx.compose.animation:animation:1.4.0-beta02, androidx.compose.animation:animation-core:1.4.0-beta02, और androidx.compose.animation:animation-graphics:1.4.0-beta02 में कोई बदलाव नहीं किया गया है. वर्शन 1.4.0-beta02 में ये कमिट शामिल हैं.

वर्शन 1.4.0-beta01

8 फ़रवरी, 2023

androidx.compose.animation:animation:1.4.0-beta01, androidx.compose.animation:animation-core:1.4.0-beta01, और androidx.compose.animation:animation-graphics:1.4.0-beta01 में कोई बदलाव नहीं किया गया है. वर्शन 1.4.0-beta01 में ये कमिट शामिल हैं.

वर्शन 1.4.0-alpha05

25 जनवरी, 2023

androidx.compose.animation:animation:1.4.0-alpha05, androidx.compose.animation:animation-core:1.4.0-alpha05, और androidx.compose.animation:animation-graphics:1.4.0-alpha05 रिलीज़ किए गए हैं. वर्शन 1.4.0-alpha05 में ये कमिट शामिल हैं.

बदलाव

  • पिछले ऐल्फ़ा वर्शन के बाद से, ऐनिमेशन लाइब्रेरी में कोई बदलाव नहीं किया गया है. सिर्फ़ वर्शन में बदलाव किया गया है

वर्शन 1.4.0-alpha04

11 जनवरी, 2023

androidx.compose.animation:animation:1.4.0-alpha04, androidx.compose.animation:animation-core:1.4.0-alpha04, और androidx.compose.animation:animation-graphics:1.4.0-alpha04 रिलीज़ किए गए हैं. वर्शन 1.4.0-alpha04 में ये कमिट शामिल हैं.

नई सुविधाएं

  • टूलिंग लेबल, rememberInfiniteTransition और InfiniteTransition और Transition पर मौजूद सभी एक्सटेंशन फ़ंक्शन (जैसे, InfiniteTransition#animateColor) के साथ काम करता है (I56ef7)

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

  • InfiniteTransition#TransitionAnimationState और InfiniteTransition#animations एपीआई अब सार्वजनिक तौर पर उपलब्ध हैं. (I36682)

वर्शन 1.4.0-alpha03

7 दिसंबर, 2022

androidx.compose.animation:animation:1.4.0-alpha03, androidx.compose.animation:animation-core:1.4.0-alpha03, और androidx.compose.animation:animation-graphics:1.4.0-alpha03 रिलीज़ किए गए हैं. वर्शन 1.4.0-alpha03 में ये कमिट शामिल हैं.

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

  • Compose नियम का इस्तेमाल करके की जाने वाली यूज़र इंटरफ़ेस (यूआई) जांचों में, withFrameNanos कॉलबैक के दौरान फिर से शुरू किए गए कंटीन्यूएशन तब तक डिस्पैच नहीं किए जाएंगे, जब तक सभी फ़्रेम कॉलबैक पूरे नहीं हो जाते. ऐसा सामान्य तौर पर कंपोज़ करने के तरीके में भी होता है. हालांकि, पुरानी सेटिंग पर आधारित टेस्ट काम नहीं कर सकते. इसका असर सिर्फ़ उन कोड पर पड़ना चाहिए जो सीधे तौर पर withFrameNanos या withFrameMillis को कॉल करते हैं. साथ ही, उनमें उन फ़ंक्शन को पास किए गए कॉलबैक के बाहर का लॉजिक होता है जिसे कॉलबैक के अंदर ले जाने की ज़रूरत पड़ सकती है. उदाहरणों के लिए, इस सीएल में ऐनिमेशन टेस्ट में किए गए बदलाव देखें.
  • TestMonotonicFrameClock कंस्ट्रक्टर और फ़ैक्ट्री फ़ंक्शन में, onPerformTraversals: (Long) -> Unit पैरामीटर जोड़ा गया है. इसका इस्तेमाल, withFrameNanos कॉलबैक के बाद और कॉलर की को-रूटीन फिर से शुरू होने से पहले कोड चलाने के लिए किया जाता है. (Idb413, b/254115946, b/222093277, b/255802670)
  • टूलिंग लेबल (Iebe2d) के लिए, AnimatedContent में नया पैरामीटर

वर्शन 1.4.0-alpha02

9 नवंबर, 2022

androidx.compose.animation:animation:1.4.0-alpha02, androidx.compose.animation:animation-core:1.4.0-alpha02, और androidx.compose.animation:animation-graphics:1.4.0-alpha02 रिलीज़ किए गए हैं. वर्शन 1.4.0-alpha02 में ये कमिट शामिल हैं.

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

  • टूलिंग को कंपोज़ेबल की इंटरनल स्थितियों में बदलाव करने की अनुमति देने के लिए, ToolingState जोड़ें (Ie6614)

वर्शन 1.4.0-alpha01

24 अक्टूबर, 2022

androidx.compose.animation:animation:1.4.0-alpha01, androidx.compose.animation:animation-core:1.4.0-alpha01, और androidx.compose.animation:animation-graphics:1.4.0-alpha01 रिलीज़ किए गए हैं. वर्शन 1.4.0-alpha01 में ये कमिट शामिल हैं.

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

  • AnimatedContent में, इंटरप्शन ऐनिमेशन की गड़बड़ी ठीक की गई (b/238662479)

वर्शन 1.3

वर्शन 1.3.3

11 जनवरी, 2023

androidx.compose.animation:animation:1.3.3, androidx.compose.animation:animation-core:1.3.3, और androidx.compose.animation:animation-graphics:1.3.3 रिलीज़ किए गए हैं. वर्शन 1.3.3 में ये कमिट शामिल हैं.

  • 1.3.2 के बाद से कोई बदलाव नहीं हुआ है.

वर्शन 1.3.2

7 दिसंबर, 2022

androidx.compose.animation:animation:1.3.2, androidx.compose.animation:animation-core:1.3.2, और androidx.compose.animation:animation-graphics:1.3.2 रिलीज़ किए गए हैं. वर्शन 1.3.2 में ये कमिट शामिल हैं.

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

  • androidx.compose.ui 1.3.2 के साथ काम करने के लिए अपडेट किया गया

वर्शन 1.3.1

9 नवंबर, 2022

androidx.compose.animation:animation:1.3.1, androidx.compose.animation:animation-core:1.3.1, और androidx.compose.animation:animation-graphics:1.3.1 रिलीज़ किए गए हैं. वर्शन 1.3.1 में ये कमिट शामिल हैं.

वर्शन 1.3.0

24 अक्टूबर, 2022

androidx.compose.animation:animation:1.3.0, androidx.compose.animation:animation-core:1.3.0, और androidx.compose.animation:animation-graphics:1.3.0 रिलीज़ किए गए हैं. वर्शन 1.3.0 में ये कमिट शामिल हैं.

1.2.0 के बाद हुए ज़रूरी बदलाव

  • नए ईज़िंग फ़ंक्शन का सेट स्थिर कर दिया गया है

वर्शन 1.3.0-rc01

5 अक्टूबर, 2022

androidx.compose.animation:animation:1.3.0-rc01, androidx.compose.animation:animation-core:1.3.0-rc01, और androidx.compose.animation:animation-graphics:1.3.0-rc01 रिलीज़ किए गए हैं. वर्शन 1.3.0-rc01 में ये कमिट शामिल हैं.

वर्शन 1.3.0-beta03

21 सितंबर, 2022

androidx.compose.animation:animation:1.3.0-beta03, androidx.compose.animation:animation-core:1.3.0-beta03, और androidx.compose.animation:animation-graphics:1.3.0-beta03 रिलीज़ किए गए हैं. वर्शन 1.3.0-beta03 में ये कमिट शामिल हैं.

  • 1.3.0-beta02 के बाद से कोई बदलाव नहीं किया गया है.

वर्शन 1.3.0-beta02

7 सितंबर, 2022

androidx.compose.animation:animation:1.3.0-beta02, androidx.compose.animation:animation-core:1.3.0-beta02, और androidx.compose.animation:animation-graphics:1.3.0-beta02 रिलीज़ किए गए हैं. वर्शन 1.3.0-beta02 में ये कमिट शामिल हैं.

  • कंपाइलर के विकल्पों से Kotlin.experimental को हटाया गया, क्योंकि अब इसका इस्तेमाल नहीं किया जा सकता

वर्शन 1.3.0-beta01

24 अगस्त, 2022

androidx.compose.animation:animation:1.3.0-beta01, androidx.compose.animation:animation-core:1.3.0-beta01, और androidx.compose.animation:animation-graphics:1.3.0-beta01 रिलीज़ किए गए हैं. वर्शन 1.3.0-beta01 में ये कमिट शामिल हैं.

वर्शन 1.3.0-alpha03

10 अगस्त, 2022

androidx.compose.animation:animation:1.3.0-alpha03, androidx.compose.animation:animation-core:1.3.0-alpha03, और androidx.compose.animation:animation-graphics:1.3.0-alpha03 रिलीज़ किए गए हैं. वर्शन 1.3.0-alpha03 में ये कमिट शामिल हैं.

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

  • टूलिंग लेबल (Iac08a) के लिए, Crossfade, animateAsState, और Animatable में नया पैरामीटर
  • atFraction फ़ंक्शन जोड़ा गया है. इसकी मदद से, मुख्य फ़्रेम को किसी तय अवधि के बजाय किसी फ़्रैक्शन पर सेट किया जा सकता है. (I20c76, b/232059455)

वर्शन 1.3.0-alpha02

27 जुलाई, 2022

androidx.compose.animation:animation:1.3.0-alpha02, androidx.compose.animation:animation-core:1.3.0-alpha02, और androidx.compose.animation:animation-graphics:1.3.0-alpha02 रिलीज़ किए गए हैं. वर्शन 1.3.0-alpha02 में ये कमिट शामिल हैं.

वर्शन 1.3.0-alpha01

29 जून, 2022

androidx.compose.animation:animation:1.3.0-alpha01, androidx.compose.animation:animation-core:1.3.0-alpha01, और androidx.compose.animation:animation-graphics:1.3.0-alpha01 रिलीज़ किए गए हैं. वर्शन 1.3.0-alpha01 में ये कमिट शामिल हैं.

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

  • नया LookaheadLayout, जो मेज़र/लेआउट से पहले लुकअहेड पास की सुविधा देता है. इससे लेआउट में बदलाव होने पर, उसकी पहले से गणना की जा सकती है. साथ ही, लुकअहेड के बाद के मेज़रमेंट/लेआउट को, पहले से कैलकुलेट किए गए साइज़/जगह का इस्तेमाल करके, साइज़ और जगहों को टारगेट की ओर ऐनिमेशन करने की अनुमति मिलती है. फ़िलहाल, SubcomposeLayouts काम नहीं करते हैं. हालांकि, आने वाले समय में इसकी सुविधा उपलब्ध होगी. (I477f5)

वर्शन 1.2

वर्शन 1.2.1

10 अगस्त, 2022

androidx.compose.animation:animation:1.2.1, androidx.compose.animation:animation-core:1.2.1, और androidx.compose.animation:animation-graphics:1.2.1 रिलीज़ किए गए हैं. वर्शन 1.2.1 में ये कमिट शामिल हैं.

वर्शन 1.2.0

27 जुलाई, 2022

androidx.compose.animation:animation:1.2.0, androidx.compose.animation:animation-core:1.2.0, और androidx.compose.animation:animation-graphics:1.2.0 रिलीज़ किए गए हैं. वर्शन 1.2.0 में ये कमिट शामिल हैं.

1.1.0 के बाद हुए अहम बदलाव

  • Compose ऐनिमेशन अब डेवलपर विकल्पों में मौजूद 'ऐनिमेटर अवधि स्केल' सेटिंग के साथ काम करता है.
  • एक्सपेरिमेंट के तौर पर, ईज़िंग कर्व के कई नए विकल्प उपलब्ध हैं.
  • AnimatedImageVector अब repeatCount और repeatMode के साथ काम करता है

वर्शन 1.2.0-rc03

29 जून, 2022

androidx.compose.animation:animation:1.2.0-rc03, androidx.compose.animation:animation-core:1.2.0-rc03, और androidx.compose.animation:animation-graphics:1.2.0-rc03 रिलीज़ किए गए हैं. वर्शन 1.2.0-rc03 में ये कमिट शामिल हैं.

  • 1.2.0-rc02 के बाद से कोई बदलाव नहीं किया गया है.

वर्शन 1.2.0-rc02

22 जून, 2022

androidx.compose.animation:animation:1.2.0-rc02, androidx.compose.animation:animation-core:1.2.0-rc02, और androidx.compose.animation:animation-graphics:1.2.0-rc02 रिलीज़ किए गए हैं. वर्शन 1.2.0-rc02 में ये कमिट शामिल हैं.

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

  • ईज़िंग फ़ंक्शन (Ied441) पर ExperimentalEasingApi एनोटेशन हटाया गया

वर्शन 1.2.0-rc01

15 जून, 2022

androidx.compose.animation:animation:1.2.0-rc01, androidx.compose.animation:animation-core:1.2.0-rc01, और androidx.compose.animation:animation-graphics:1.2.0-rc01 रिलीज़ किए गए हैं. वर्शन 1.2.0-rc01 में ये कमिट शामिल हैं.

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

  • Compose लाइब्रेरी में इंटरफ़ेस अब jdk8 के डिफ़ॉल्ट इंटरफ़ेस के तरीकों (I5bcf1) का इस्तेमाल करके बनाए जाते हैं

वर्शन 1.2.0-beta03

1 जून, 2022

androidx.compose.animation:animation:1.2.0-beta03, androidx.compose.animation:animation-core:1.2.0-beta03, और androidx.compose.animation:animation-graphics:1.2.0-beta03 रिलीज़ किए गए हैं. वर्शन 1.2.0-beta03 में ये कमिट शामिल हैं.

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

  • ऐनिमेशन के लिए, एक्सपेरिमेंट के तौर पर ईज़िंग कर्व जोड़े गए (I64a38)

वर्शन 1.2.0-beta02

18 मई, 2022

androidx.compose.animation:animation:1.2.0-beta02, androidx.compose.animation:animation-core:1.2.0-beta02, और androidx.compose.animation:animation-graphics:1.2.0-beta02 रिलीज़ किए गए हैं. वर्शन 1.2.0-beta02 में ये कमिट शामिल हैं.

वर्शन 1.2.0-beta01

11 मई, 2022

androidx.compose.animation:animation:1.2.0-beta01, androidx.compose.animation:animation-core:1.2.0-beta01, और androidx.compose.animation:animation-graphics:1.2.0-beta01 रिलीज़ किए गए हैं. वर्शन 1.2.0-beta01 में ये कमिट शामिल हैं.

  • यह 1.2 का पहला बीटा वर्शन है! पिछले ऐल्फ़ा वर्शन के बाद से कोई बदलाव नहीं हुआ है.

वर्शन 1.2.0-alpha08

20 अप्रैल, 2022

androidx.compose.animation:animation:1.2.0-alpha08, androidx.compose.animation:animation-core:1.2.0-alpha08, और androidx.compose.animation:animation-graphics:1.2.0-alpha08 रिलीज़ किए गए हैं. वर्शन 1.2.0-alpha08 में ये कमिट शामिल हैं.

वर्शन 1.2.0-alpha07

6 अप्रैल, 2022

androidx.compose.animation:animation:1.2.0-alpha07, androidx.compose.animation:animation-core:1.2.0-alpha07, और androidx.compose.animation:animation-graphics:1.2.0-alpha07 रिलीज़ किए गए हैं. वर्शन 1.2.0-alpha07 में ये कमिट शामिल हैं.

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

  • AnimatedImageVector अब repeatCount और repeatMode के साथ काम करता है (Ia3e75, b/199304067)

वर्शन 1.2.0-alpha06

23 मार्च, 2022

androidx.compose.animation:animation:1.2.0-alpha06, androidx.compose.animation:animation-core:1.2.0-alpha06, और androidx.compose.animation:animation-graphics:1.2.0-alpha06 रिलीज़ किए गए हैं. वर्शन 1.2.0-alpha06 में ये कमिट शामिल हैं.

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

  • वेक्टर ड्रॉएबल को पार्स करने की सुविधा को अपडेट किया गया है. इससे, VectorPainter के कॉन्टेंट को अपने-आप फ़्लिप करने की सुविधा मिलती है. ऐसा तब होता है, जब मौजूदा लेआउट की दिशा RTL होती है. (I79cd9, b/185760237)

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

  • वेक्टर ग्राफ़िक्स एपीआई को अपडेट किया गया है, ताकि @UiComposable के बजाय सही कंपोज़ेबल एनोटेशन @VectorComposable का इस्तेमाल किया जा सके (I942bc)

वर्शन 1.2.0-alpha05

9 मार्च, 2022

androidx.compose.animation:animation:1.2.0-alpha05, androidx.compose.animation:animation-core:1.2.0-alpha05, और androidx.compose.animation:animation-graphics:1.2.0-alpha05 रिलीज़ किए गए हैं. वर्शन 1.2.0-alpha05 में ये कमिट शामिल हैं.

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

  • हुर्रे! Compose ऐनिमेशन अब डेवलपर विकल्पों में मौजूद, 'ऐनिमेटर अवधि स्केल' सेटिंग के साथ काम करता है. (I5a4fc, b/161675988)

वर्शन 1.2.0-alpha04

23 फ़रवरी, 2022

androidx.compose.animation:animation:1.2.0-alpha04, androidx.compose.animation:animation-core:1.2.0-alpha04, और androidx.compose.animation:animation-graphics:1.2.0-alpha04 रिलीज़ किए गए हैं. वर्शन 1.2.0-alpha04 में ये कमिट शामिल हैं.

वर्शन 1.2.0-alpha03

9 फ़रवरी, 2022

androidx.compose.animation:animation:1.2.0-alpha03, androidx.compose.animation:animation-core:1.2.0-alpha03, और androidx.compose.animation:animation-graphics:1.2.0-alpha03 रिलीज़ किए गए हैं. वर्शन 1.2.0-alpha03 में ये कमिट शामिल हैं.

वर्शन 1.2.0-alpha02

26 जनवरी, 2022

androidx.compose.animation:animation:1.2.0-alpha02, androidx.compose.animation:animation-core:1.2.0-alpha02, और androidx.compose.animation:animation-graphics:1.2.0-alpha02 रिलीज़ किए गए हैं. वर्शन 1.2.0-alpha02 में ये कमिट शामिल हैं.

वर्शन 1.2.0-alpha01

12 जनवरी, 2022

androidx.compose.animation:animation:1.2.0-alpha01, androidx.compose.animation:animation-core:1.2.0-alpha01, और androidx.compose.animation:animation-graphics:1.2.0-alpha01 रिलीज़ किए गए हैं. वर्शन 1.2.0-alpha01 में ये कमिट शामिल हैं.

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

  • <animated-vector> रिसॉर्स फ़ाइल लोड करने के लिए, animatedVectorResource के बजाय AnimatedImageVector.animatedVectorResource का इस्तेमाल करें.
    • AnimatedImageVector को रेंडर करने के लिए, AnimatedImageVector#painterFor के बजाय rememberAnimatedVectorResource का इस्तेमाल करें. (I9c300)

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

  • Animatable और AnimationResult में toString तरीके जोड़ें. (Icd3a6)

डिपेंडेंसी से जुड़े अपडेट

  • अब Kotlin 1.6.10 पर निर्भर करता है.

वर्शन 1.1

वर्शन 1.1.1

23 फ़रवरी, 2022

androidx.compose.animation:animation:1.1.1, androidx.compose.animation:animation-core:1.1.1, और androidx.compose.animation:animation-graphics:1.1.1 रिलीज़ किए गए हैं. वर्शन 1.1.1 में ये कमिट शामिल हैं.

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

  • NullPointerException को androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList पर ठीक किया गया (aosp/1947059, b/206677462)
  • Android पर क्लिपबोर्ड से कॉन्टेंट पढ़ते समय, क्लिपबोर्ड में मौजूद कॉन्टेंट की वजह से ऐप्लिकेशन क्रैश होने की समस्या को ठीक किया गया है. (I06020, b/197769306)
  • LazyVerticalGrid में दाएं से बाएं की ओर लिखे जाने वाले टेक्स्ट की समस्या ठीक की गई (aosp/1931080, b/207510535)

वर्शन 1.1.0

9 फ़रवरी, 2022

androidx.compose.animation:animation:1.1.0, androidx.compose.animation:animation-core:1.1.0, और androidx.compose.animation:animation-graphics:1.1.0 रिलीज़ किए गए हैं. वर्शन 1.1.0 में ये कमिट शामिल हैं.

1.0.0 के बाद हुए अहम बदलाव

  • Android 12 के ओवरस्क्रॉल इफ़ेक्ट के लिए स्टेबल सपोर्ट
  • टच टारगेट के साइज़ में सुधार
  • ध्यान दें कि Compose 1.0 के हिसाब से, मटीरियल कॉम्पोनेंट अपने लेआउट स्पेस को बढ़ाएंगे, ताकि टच टारगेट साइज़ के लिए, मटीरियल सुलभता के दिशा-निर्देशों का पालन किया जा सके. उदाहरण के लिए, अगर आपने बटन का साइज़ छोटा सेट किया है, तब भी बटन का टच टारगेट कम से कम 48x48dp तक बढ़ जाएगा. इससे Compose Material, Material Design Components के जैसा ही काम करता है. साथ ही, Views और Compose को एक साथ इस्तेमाल करने पर, दोनों एक जैसा काम करते हैं. इस बदलाव से यह भी पक्का होता है कि Compose Material कॉम्पोनेंट का इस्तेमाल करके यूज़र इंटरफ़ेस (यूआई) बनाते समय, टच टारगेट की पहुंच से जुड़ी ज़रूरी शर्तें पूरी हों.
  • नेविगेशन रेल के लिए स्टेबल सपोर्ट
  • एक्सपेरिमेंट के तौर पर उपलब्ध कई एपीआई को स्टेबल वर्शन में अपग्रेड किया गया है
  • Kotlin के नए वर्शन के लिए सहायता

वर्शन 1.1.0-rc03

26 जनवरी, 2022

androidx.compose.animation:animation:1.1.0-rc03, androidx.compose.animation:animation-core:1.1.0-rc03, और androidx.compose.animation:animation-graphics:1.1.0-rc03 रिलीज़ किए गए हैं. वर्शन 1.1.0-rc03 में ये कमिट शामिल हैं.

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

  • Compose Material 1.1.0-rc03 के साथ काम करने के लिए अपडेट किया गया

वर्शन 1.1.0-rc01

15 दिसंबर, 2021

androidx.compose.animation:animation:1.1.0-rc01 और androidx.compose.animation:animation-core:1.1.0-rc01 रिलीज़ हो गए हैं. वर्शन 1.1.0-rc01 में ये कमिट शामिल हैं.

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

  • <animated-vector> रिसॉर्स फ़ाइल लोड करने के लिए, animatedVectorResource के बजाय AnimatedImageVector.animatedVectorResource का इस्तेमाल करें.
    • AnimatedImageVector को रेंडर करने के लिए, AnimatedImageVector#painterFor के बजाय rememberAnimatedVectorResource का इस्तेमाल करें. (I9c300)

वर्शन 1.1.0-beta04

1 दिसंबर, 2021

androidx.compose.animation:animation:1.1.0-beta04, androidx.compose.animation:animation-core:1.1.0-beta04, और androidx.compose.animation:animation-graphics:1.1.0-beta04 रिलीज़ किए गए हैं. वर्शन 1.1.0-beta04 में ये कमिट शामिल हैं.

नई सुविधाएं

  • Kotlin 1.6.0 के साथ काम करने के लिए अपडेट किया गया

वर्शन 1.1.0-beta03

17 नवंबर, 2021

androidx.compose.animation:animation:1.1.0-beta03, androidx.compose.animation:animation-core:1.1.0-beta03, और androidx.compose.animation:animation-graphics:1.1.0-beta03 रिलीज़ किए गए हैं. वर्शन 1.1.0-beta03 में ये कमिट शामिल हैं.

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

  • प्लेसमेंट में बदलाव को मॉनिटर करने के लिए, नया मॉडिफ़ायर Modifier.onPlaced जोड़ा गया. इसलिए, प्लेसमेंट में हुए बदलाव के आधार पर, चाइल्ड मॉडिफ़ायर के ऑफ़सेट में अन्य बदलाव किए जा सकते हैं. (I558fd)
  • क्रॉसफ़ेड में contentKey के लिए नया सपोर्ट. ContentKey का इस्तेमाल, ऐनिमेशन सिस्टम यह जांचने के लिए करेगा कि दोनों कॉन्टेंट एक जैसे हैं या नहीं. इसलिए, अलग-अलग स्थितियों के लिए सही contentKey तय करके, स्थितियों के बीच कस्टम अंतर किया जा सकता है.

    ContentKey का इस्तेमाल, कॉन्टेंट को सेव और वापस लाने के लिए भी किया जाएगा. (I2e055, b/197907070)

वर्शन 1.1.0-beta02

3 नवंबर, 2021

androidx.compose.animation:animation:1.1.0-beta02, androidx.compose.animation:animation-core:1.1.0-beta02, और androidx.compose.animation:animation-graphics:1.1.0-beta02 रिलीज़ किए गए हैं. वर्शन 1.1.0-beta02 में ये कमिट शामिल हैं.

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

  • टूलिंग के लिए नए ऐनिमेशन एपीआई. खास तौर पर, ये टूल को ट्रांज़िशन में ऐनिमेशन और उनके कॉन्फ़िगरेशन की जांच करने की अनुमति देते हैं. (I4116e)

वर्शन 1.1.0-beta01

27 अक्टूबर, 2021

androidx.compose.animation:animation:1.1.0-beta01, androidx.compose.animation:animation-core:1.1.0-beta01, और androidx.compose.animation:animation-graphics:1.1.0-beta01 रिलीज़ किए गए हैं. वर्शन 1.1.0-beta01 में ये कमिट शामिल हैं.

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

  • टूलिंग के लिए नए ऐनिमेशन एपीआई. खास तौर पर, ये टूल को ट्रांज़िशन में ऐनिमेशन और उनके कॉन्फ़िगरेशन की जांच करने की अनुमति देते हैं. (I4116e)

वर्शन 1.1.0-alpha06

13 अक्टूबर, 2021

androidx.compose.animation:animation:1.1.0-alpha06, androidx.compose.animation:animation-core:1.1.0-alpha06, और androidx.compose.animation:animation-graphics:1.1.0-alpha06 रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha06 में ये कमिट शामिल हैं.

वर्शन 1.1.0-alpha05

29 सितंबर, 2021

androidx.compose.animation:animation:1.1.0-alpha05, androidx.compose.animation:animation-core:1.1.0-alpha05, और androidx.compose.animation:animation-graphics:1.1.0-alpha05 रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha05 में ये कमिट शामिल हैं.

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

  • EnterTransition, ExitTransition, और AnimatedVisibility एपीआई के कुछ वर्शन को स्टेबल बना दिया गया है. MutableTransitionState.isIdle अब एक्सपेरिमेंट के तौर पर उपलब्ध नहीं है. (I5072d)

  • बदलाव: Enter/ExitTransition फ़ैक्ट्रियों में लैम्ब्डा को पैरामीटर की सूची में आखिरी पोज़िशन पर ले जाया गया है. (I5072d)

वर्शन 1.1.0-alpha04

15 सितंबर, 2021

androidx.compose.animation:animation:1.1.0-alpha04, androidx.compose.animation:animation-core:1.1.0-alpha04, और androidx.compose.animation:animation-graphics:1.1.0-alpha04 रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha04 में ये कमिट शामिल हैं.

वर्शन 1.1.0-alpha03

1 सितंबर, 2021

androidx.compose.animation:animation:1.1.0-alpha03, androidx.compose.animation:animation-core:1.1.0-alpha03, और androidx.compose.animation:animation-graphics:1.1.0-alpha03 रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha03 में ये कमिट शामिल हैं.

नई सुविधाएं

  • Compose 1.1.0-alpha03 को Kotlin 1.5.30 पर निर्भर रहने के लिए अपडेट किया गया. (I74545)

वर्शन 1.1.0-alpha02

18 अगस्त, 2021

androidx.compose.animation:animation:1.1.0-alpha02, androidx.compose.animation:animation-core:1.1.0-alpha02, और androidx.compose.animation:animation-graphics:1.1.0-alpha02 रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha02 में ये कमिट शामिल हैं.

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

  • StartOffset को अब repeatable और infiniteRepeatable में इस्तेमाल किया जा सकता है. इससे, ऐनिमेशन शुरू होने के समय को बदला जा सकता है या ऐनिमेशन शुरू होने से पहले उसे फ़ास्ट फ़ॉरवर्ड किया जा सकता है. यह स्टार्ट ऑफ़सेट दोहराया नहीं जाएगा (Ic679f, b/195079908)
  • स्केल के लिए, नई एंटर/एग्ज़िट ट्रांज़िशन सुविधा. इसका इस्तेमाल, एंटर/एग्ज़िट ट्रांज़िशन के अन्य टाइप के साथ किया जा सकता है. (I372da, b/191325593)

वर्शन 1.1.0-alpha01

4 अगस्त, 2021

androidx.compose.animation:animation:1.1.0-alpha01, androidx.compose.animation:animation-core:1.1.0-alpha01, और androidx.compose.animation:animation-graphics:1.1.0-alpha01 रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha01 में ये कमिट शामिल हैं.

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

  • AnimatedImageVector और इससे जुड़े एपीआई अब नए androidx.compose.animation:animation-graphics मॉड्यूल में हैं. (I60873)

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

  • InfiniteAnimationPolicy को :compose:ui (I5eb09, b/160602714) पर ले जाया गया

वर्शन 1.0

वर्शन 1.0.5

3 नवंबर, 2021

androidx.compose.animation:animation:1.0.5 और androidx.compose.animation:animation-core:1.0.5 रिलीज़ हो गए हैं. वर्शन 1.0.5 में ये कमिट शामिल हैं.

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

  • derivedStateOf इंस्टेंस को ट्रैक करने के दौरान क्रैश होने की समस्या ठीक की गई. (aosp/1792247)

वर्शन 1.0.4

13 अक्टूबर, 2021

androidx.compose.animation:animation:1.0.4 और androidx.compose.animation:animation-core:1.0.4 रिलीज़ हो गए हैं. वर्शन 1.0.4 में ये कमिट शामिल हैं.

डिपेंडेंसी से जुड़े अपडेट

  • Kotlin 1.5.31 पर निर्भर रहने के लिए अपडेट किया गया

वर्शन 1.0.3

29 सितंबर, 2021

androidx.compose.animation:animation:1.0.3 और androidx.compose.animation:animation-core:1.0.3 रिलीज़ हो गए हैं. वर्शन 1.0.3 में ये कमिट शामिल हैं.

डिपेंडेंसी से जुड़े अपडेट

  • Kotlin 1.5.30 पर निर्भर रहने के लिए अपडेट किया गया

वर्शन 1.0.2

1 सितंबर, 2021

androidx.compose.animation:animation:1.0.2 और androidx.compose.animation:animation-core:1.0.2 रिलीज़ हो गए हैं. वर्शन 1.0.2 में ये कमिट शामिल हैं.

Compose 1.0.2 की रिलीज़ के साथ काम करने के लिए अपडेट किया गया. Compose 1.0.2 अब भी Kotlin 1.5.21 के साथ काम करता है.

वर्शन 1.0.1

4 अगस्त, 2021

androidx.compose.animation:animation:1.0.1 और androidx.compose.animation:animation-core:1.0.1 रिलीज़ हो गए हैं. वर्शन 1.0.1 में ये कमिट शामिल हैं.

डिपेंडेंसी से जुड़े अपडेट

  • Kotlin 1.5.21 पर निर्भर रहने के लिए अपडेट किया गया.

वर्शन 1.0.0

28 जुलाई, 2021

androidx.compose.animation:animation:1.0.0 और androidx.compose.animation:animation-core:1.0.0 रिलीज़ हो गए हैं. वर्शन 1.0.0 में ये कमिट शामिल हैं.

1.0.0 वर्शन की मुख्य सुविधाएं

यह Compose का पहला स्टेबल वर्शन है. ज़्यादा जानकारी के लिए, कृपया Compose रिलीज़ का आधिकारिक ब्लॉग देखें!

ऐसी समस्याएं जिनके बारे में जानकारी पहले से है

  • अगर Android Studio Bumblebee Canary 4 या AGP 7.1.0-alpha04/7.1.0-alpha05 का इस्तेमाल किया जा रहा है, तो आपको यह क्रैश दिख सकता है:

      java.lang.AbstractMethodError: abstract method "void androidx.lifecycle.DefaultLifecycleObserver.onCreate(androidx.lifecycle.LifecycleOwner)"
    

    इस समस्या को ठीक करने के लिए, अपनी build.gradle फ़ाइल में minSdkVersion को कुछ समय के लिए 24 या उससे ज़्यादा पर सेट करें. इस समस्या को Android Studio Bumblebee और AGP 7.1 के अगले वर्शन में ठीक कर दिया जाएगा. (b/194289155)

वर्शन 1.0.0-rc02

14 जुलाई, 2021

androidx.compose.animation:animation:1.0.0-rc02 और androidx.compose.animation:animation-core:1.0.0-rc02 रिलीज़ हो गए हैं. वर्शन 1.0.0-rc02 में ये कमिट शामिल हैं.

वर्शन 1.0.0-rc01

1 जुलाई, 2021

androidx.compose.animation:animation:1.0.0-rc01 और androidx.compose.animation:animation-core:1.0.0-rc01 रिलीज़ हो गए हैं. वर्शन 1.0.0-rc01 में ये कमिट शामिल हैं.

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

  • InfiniteAnimationPolicy को androidx.compose.ui:ui में ले जाया गया (I5eb09, b/160602714)

वर्शन 1.0.0-beta09

16 जून, 2021

androidx.compose.animation:animation:1.0.0-beta09 और androidx.compose.animation:animation-core:1.0.0-beta09 रिलीज़ हो गए हैं. वर्शन 1.0.0-beta09 में ये कमिट शामिल हैं.

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

  • नया AnimatedContent कंपोज़ेबल. यह अपने कॉन्टेंट में बदलावों को मैनेज करता है. इसके लिए, यह ContentTransform को पसंद के मुताबिक बनाता है. ऐसा तब होता है, जब नया टारगेट कॉन्टेंट दिखता है और शुरुआती कॉन्टेंट हट जाता है. एंटर और एग्ज़िट ट्रांज़िशन के अलग-अलग कॉम्बिनेशन का इस्तेमाल करके, स्लाइड को पसंद के मुताबिक बनाया जा सकता है. कॉन्टेंट ट्रांसफ़ॉर्म के तौर पर, AnimatedContent आने वाले कॉन्टेंट के हिसाब से अपने साइज़ को अपने-आप ऐनिमेट करता है. (I2c3df)
  • ManualFrameClock को हटा दिया गया है. अगर आपको ऐनिमेशन कंट्रोल करने हैं, तो composeTestRule.mainClock का इस्तेमाल करें. (I3c3e8, b/189951065)

प्रोफ़ाइल के नियम जोड़े गए

इस रिलीज़ में, कंपोज़ मॉड्यूल (I14ed6) में प्रोफ़ाइल के नियम जोड़े गए हैं:

  • androidx.compose.animation
  • androidx.compose.animation-core
  • androidx.compose.foundation
  • androidx.compose.foundation-layout
  • androidx.compose.material
  • androidx.compose.material-ripple
  • androidx.compose.runtime
  • androidx.compose.ui
  • androidx.compose.ui.geometry
  • androidx.compose.ui.graphics
  • androidx.compose.ui.text
  • androidx.compose.ui.text
  • androidx.compose.ui.unit
  • androidx.compose.ui.util

प्रोफ़ाइल के नियम क्या हैं?

  • किसी लाइब्रेरी के लिए प्रोफ़ाइल के नियम, src/main या उससे मिलती-जुलती डायरेक्ट्री में मौजूद टेक्स्ट फ़ाइल baseline-prof.txt में दिए जाते हैं. फ़ाइल में हर लाइन के लिए एक नियम तय किया जाता है. इस मामले में, नियम एक ऐसा पैटर्न होता है जिसका इस्तेमाल लाइब्रेरी में मौजूद तरीकों या क्लास से मिलान करने के लिए किया जाता है. इन नियमों का सिंटैक्स, एआरटी प्रोफ़ाइल के ऐसे फ़ॉर्मैट का सुपरसेट है जिसे आसानी से पढ़ा जा सकता है. इसका इस्तेमाल adb shell profman --dump-classes-and-methods ... का इस्तेमाल करते समय किया जाता है. ये नियम, तरीकों या क्लास को टारगेट करने के लिए दो में से किसी एक फ़ॉर्म में होते हैं.

  • तरीके के नियम का पैटर्न इस तरह होगा:

    <FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>
    
  • क्लास के नियम का पैटर्न इस तरह होगा:

    <CLASS_DESCRIPTOR>
    
  • यहां <FLAGS>, H, S, और P में से एक या उससे ज़्यादा वर्ण हैं. इनसे यह पता चलता है कि इस तरीके को "हॉट", "स्टार्टअप" या "पोस्ट स्टार्टअप" के तौर पर फ़्लैग किया जाना चाहिए या नहीं.

  • <CLASS_DESCRIPTOR> उस क्लास का डिस्क्रिप्टर है जिससे टारगेट किया गया तरीका जुड़ा है. उदाहरण के लिए, क्लास androidx.compose.runtime.SlotTable का डिस्क्रिप्टर Landroidx/compose/runtime/SlotTable; होगा.

  • <METHOD_SIGNATURE>, मेथड का सिग्नेचर होता है. इसमें मेथड का नाम, पैरामीटर टाइप, और रिटर्न टाइप शामिल होते हैं. उदाहरण के लिए, LayoutNode पर मौजूद fun isPlaced(): Boolean तरीके का सिग्नेचर isPlaced()Z है.

  • इन पैटर्न में वाइल्डकार्ड (**, *, और ?) हो सकते हैं, ताकि एक ही नियम में कई तरीकों या क्लास को शामिल किया जा सके.

नियमों से क्या होता है?

  • जिस तरीके में H फ़्लैग होता है वह "हॉट" तरीका होता है. इसे पहले से ही कंपाइल कर लेना चाहिए.

  • S फ़्लैग वाली किसी भी विधि का मतलब है कि इसे स्टार्टअप के समय कॉल किया जाता है. इसलिए, इसे पहले से कंपाइल किया जाना चाहिए, ताकि स्टार्टअप के समय कंपाइल करने और समझने में लगने वाले समय को बचाया जा सके.

  • P फ़्लैग वाली किसी भी विधि से पता चलता है कि यह एक ऐसी विधि है जिसे स्टार्टअप के बाद कॉल किया जाता है.

  • इस फ़ाइल में मौजूद क्लास से पता चलता है कि इसका इस्तेमाल स्टार्टअप के दौरान किया जाता है. इसलिए, इसे हीप में पहले से ही असाइन कर दिया जाना चाहिए, ताकि क्लास लोडिंग की लागत से बचा जा सके.

यह कैसे काम करता है?

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

वर्शन 1.0.0-beta08

2 जून, 2021

androidx.compose.animation:animation:1.0.0-beta08 और androidx.compose.animation:animation-core:1.0.0-beta08 रिलीज़ हो गए हैं. वर्शन 1.0.0-beta08 में ये कमिट शामिल हैं.

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

  • अब detectDragGesures, detectVerticalGestures, और detectHorizontalGestures, अपने-आप पोज़िशन में हुए बदलाव को इस्तेमाल करेंगे. इसलिए, onDrag कॉलबैक (I42fc4, b/185096350, b/187320697) में change.consumePositionChange को कॉल करने की ज़रूरत नहीं है
  • Modifier.onGloballyPositioned() को बदलकर, इस मॉडिफ़ायर के कोऑर्डिनेट को मॉडिफ़ायर चेन में रिपोर्ट करने के लिए इस्तेमाल किया गया. इससे सभी मॉडिफ़ायर लागू करने के बाद लेआउट के कोऑर्डिनेट रिपोर्ट नहीं किए जाते. इसका मतलब है कि अब मॉडिफ़ायर के क्रम से यह तय होगा कि कौनसे कोऑर्डिनेट रिपोर्ट किए जाएंगे. (Ieb67d, b/177926591)

वर्शन 1.0.0-beta07

18 मई, 2021

androidx.compose.animation:animation:1.0.0-beta07 और androidx.compose.animation:animation-core:1.0.0-beta07 रिलीज़ हो गए हैं. वर्शन 1.0.0-beta07 में ये कमिट शामिल हैं.

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

  • नया AnimatedVisibility एपीआई, जो MutableTransitionState में दिखने की स्थिति तय करने की सुविधा देता है. इससे, currentState और isIdle के ज़रिए, AnimatedVisibility से बाहर की ऐनिमेशन स्थितियों को भी देखा जा सकता है.
    • Transition में बच्चे के नए ट्रांज़िशन के लिए सहायता
    • AnimationScope.transition का इस्तेमाल करके, AnimatedVisibility में कस्टम एग्ज़िट/एंटर ट्रांज़िशन ऐनिमेशन की सुविधा जोड़ी गई
    • AnimatedVisibility के सभी बच्चों के लिए, नया animateEnterExit मॉडिफ़ायर ऐक्सेस किया जा सकता है
    • AnimatedVisibility एपीआई को बंद कर दिया गया है. ये एपीआई, initiallyVisible पैरामीटर का इस्तेमाल करते हैं (I702f3)

वर्शन 1.0.0-beta06

5 मई, 2021

androidx.compose.animation:animation:1.0.0-beta06 और androidx.compose.animation:animation-core:1.0.0-beta06 रिलीज़ हो गए हैं. वर्शन 1.0.0-beta06 में ये कमिट शामिल हैं.

वर्शन 1.0.0-beta05

21 अप्रैल, 2021

androidx.compose.animation:animation:1.0.0-beta05 और androidx.compose.animation:animation-core:1.0.0-beta05 रिलीज़ हो गए हैं. वर्शन 1.0.0-beta05 में ये कमिट शामिल हैं.

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

  • ui-test-manifest और ui-tooling-data की AndroidManifest फ़ाइलें अब Android 12 के साथ काम करती हैं (I6f9de, b/184718994)

वर्शन 1.0.0-beta04

7 अप्रैल, 2021

androidx.compose.animation:animation:1.0.0-beta04 और androidx.compose.animation:animation-core:1.0.0-beta04 रिलीज़ हो गए हैं. वर्शन 1.0.0-beta04 में ये कमिट शामिल हैं.

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

  • RowScope, ColumnScope, BoxScope, BoxWithConstraintsScope के सार्वजनिक इंस्टेंस हटा दिए गए हैं. (I4e83e, b/181869067)

वर्शन 1.0.0-beta03

24 मार्च, 2021

androidx.compose.animation:animation:1.0.0-beta03 और androidx.compose.animation:animation-core:1.0.0-beta03 रिलीज़ हो गए हैं. वर्शन 1.0.0-beta03 में ये कमिट शामिल हैं.

वर्शन 1.0.0-beta02

10 मार्च, 2021

androidx.compose.animation:animation:1.0.0-beta02 और androidx.compose.animation:animation-core:1.0.0-beta02 रिलीज़ हो गए हैं. वर्शन 1.0.0-beta02 में ये कमिट शामिल हैं.

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

  • एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई (I6aa29, b/174531520) के सार्वजनिक इस्तेमाल पर पाबंदियां लागू करें

वर्शन 1.0.0-beta01

24 फ़रवरी, 2021

androidx.compose.animation:animation:1.0.0-beta01 और androidx.compose.animation:animation-core:1.0.0-beta01 रिलीज़ हो गए हैं. वर्शन 1.0.0-beta01 में ये कमिट शामिल हैं.

यह Compose 1.0.0 Beta का पहला वर्शन है.

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

  • InteractionState को [Mutable]InteractionSource से बदल दिया गया है
    • इंटरफ़ेस, इंटरैक्शन इवेंट को भेजने / इकट्ठा करने के लिए ज़िम्मेदार होते हैं.
    • Button और Modifier.clickable() जैसे कॉम्पोनेंट को interactionState = remember { InteractionState() } पास करने के बजाय, interactionSource = remember { MutableInteractionSource() } का इस्तेमाल करें.
    • इसके बजाय: Interaction.Pressed in interactionState आपको InteractionSource पर एक्सटेंशन फ़ंक्शन का इस्तेमाल करना चाहिए. जैसे, InteractionSource.collectIsPressedAsState().
    • इस्तेमाल के जटिल उदाहरणों के लिए, InteractionSource.interactions का इस्तेमाल करके इंटरैक्शन की स्ट्रीम को देखा जा सकता है. ज़्यादा जानकारी के लिए, InteractionSource का दस्तावेज़ और सैंपल देखें.
    • (I85965, b/152525426, b/171913923, b/171710801, b/174852378)
  • smoothScrollBy और scrollBy तरीकों के पैकेज को androidx.compose.foundation.gestures.* (I3f7c1, b/175294473) में बदला गया
  • साइज़ मॉडिफ़ायर के नाम बदल दिए गए हैं. Modifier.width/height/size का नाम बदलकर requiredWidth/requiredHeight/requiredSize कर दिया गया है. Modifier.preferredWidth/preferredHeight/preferredSize का नाम बदलकर width/height/size कर दिया गया है. (I5b414)
  • ओरिएंटेशन को फ़ाउंडेशन पैकेज में ले जाया गया है. VelocirtTracker को ui.gesture से ui.input.pointer में ले जाया गया. (Iff4a8, b/175294473)
  • AnimationClockObservable और इसकी सबक्लास हटा दी गई हैं. AnimatedFloat को हटा दिया गया है. (Icde52, b/177457083)
  • Modifier.draggable अब एक सामान्य लैम्ब्डा के बजाय DraggableState स्वीकार करता है. rememberDraggableState { delta -> } की मदद से, पहले जैसा व्यवहार पाने के लिए स्टेट बनाई जा सकती है (Ica70f, b/175294473)
  • animate, animatedValue, और AnimatedValue API हटा दिए गए हैं (If27bc, b/177457083)
  • AnimationEndReason.Interrupted को हटा दिया गया है. अगर ऐनिमेशन में रुकावट आती है, तो CancellationException थ्रो किया जाएगा. (I2cbbc, b/179695417)
  • TargetAnimation API को हटा दिया गया है. (If47d1, b/177457083)

वर्शन 1.0.0-alpha12

10 फ़रवरी, 2021

androidx.compose.animation:animation:1.0.0-alpha12 और androidx.compose.animation:animation-core:1.0.0-alpha12 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha12 में ये कमिट शामिल हैं.

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

  • Modifier.pointerInput को अब याद रखने वाली कुंजियों की ज़रूरत होती है. इनसे यह पता चलता है कि नई डिपेंडेंसी के लिए, पॉइंटर इनपुट का पता लगाने वाली कोराउटीन को कब रीस्टार्ट करना चाहिए. (I849cd)
  • Bounds का नाम बदलकर DpRect (I4b32a) कर दिया गया है
  • ऐनिमेशन सिस्टम में, AnimationSpec के लिए param नाम को animationSpec पर सेट किया गया है. साथ ही, Enter/ExitTransition को भी सीमित करें, ताकि वह FiniteAnimationSpec को स्वीकार कर सके. (Ie47c5, b/177457083)
  • Animatable.snapTo और Animatable.stop अब सस्पेंड फ़ंक्शन हैं (If4288)
  • जिस तरह हमने पहले state { 0 } कंपोज़ेबल को हटाया था और अब remember { mutableStateOf(0) } के इस्तेमाल को बढ़ावा दे रहे हैं उसी तरह हम savedInstanceState { 0 } कंपोज़ेबल को हटाने जा रहे हैं. आपको rememberSaveable { mutableStateOf(0) } का इस्तेमाल करना चाहिए. अगर MutableState में इस्तेमाल किया गया टाइप, बंडल में सेव किया जा सकता है, तो यह अपने-आप सेव और रीस्टोर हो जाएगा. अगर पहले कस्टम सेवर ऑब्जेक्ट पास किया जा रहा था, तो अब आपको rememberSaveable के नए ओवरलोड का इस्तेमाल करना होगा. इसमें stateSaver पैरामीटर होता है. इसका इस्तेमाल इस तरह दिखेगा: val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) } (Ib4c26, b/177338004)
  • Crossfade के तरीके के सिग्नेचर को अपडेट किया गया है, ताकि यह ऐनिमेशन सिस्टम के बाकी हिस्सों के साथ ज़्यादा मेल खाए. (Ib05ed, b/177457083)
  • rememberSavedInstanceState() का नाम बदलकर rememberSaveable() कर दिया गया है. साथ ही, इसे androidx.compose.runtime.saveable पैकेज में ले जाया गया है. (I1366e, b/177338004)
  • RestorableStateHolder का नाम बदलकर SaveableStateHolder कर दिया गया है. साथ ही, इसे androidx.compose.runtime.saveable पैकेज में ले जाया गया है. Inner method RestorableStateProvider का नाम बदलकर SaveableStateProvider कर दिया गया है. जेनेरिक टाइप को हटा दिया गया है, ताकि आप सिर्फ़ Any को कुंजी के तौर पर पास कर सकें. अब एक्सपेरिमेंट के तौर पर एनोटेशन की ज़रूरत नहीं है. (I0902e, b/174598702)
  • Modifier.animateContentSize एपीआई को अपडेट किया गया है, ताकि यह ऐनिमेशन सिस्टम के बाकी हिस्सों के साथ काम कर सके. (I0bf75, b/177457083)
  • AnimatedValue/Float अब सेवा में नहीं है. इसके बजाय, कृपया Animatable का इस्तेमाल करें. (I71345, b/177457083)
  • tapGestureFilter, doubleTapGestureFilter, longPressGestureFilter, और pressIndicaitonGestureFilter अब काम नहीं करते. इसके बजाय, Modifier.clickable या Modifier.pointerInput के साथ detectTapGestures फ़ंक्शन का इस्तेमाल करें. (I6baf9, b/175294473)
  • InfiniteAnimationPolicy को-रूटीन कॉन्टेक्स्ट एलिमेंट जोड़ा गया है. इसका इस्तेमाल हमेशा लूप में चलने वाले ऐनिमेशन में किया जाएगा. डिफ़ॉल्ट रूप से कोई नीति इंस्टॉल नहीं की जाती. हालांकि, ComposeTestRule के साथ टेस्ट चलाने पर ऐसा होता है. (I50ec4, b/151940543)
  • डिस्ट्रक्चरिंग और copy() तरीकों को उन क्लास से हटा दिया गया है जहां इनका इस्तेमाल कभी-कभार ही किया जाता था. (I26702, b/178659281)
  • ऐनिमेशन में चलने का समय अब नैनोसेकंड में बदल गया है (If776a)
  • compose:runtime-dispatch आर्टफ़ैक्ट अब काम नहीं करता. MonotonicFrameClock को अब compose:runtime में देखा जा सकता है. साथ ही, AndroidUiDispatcher को compose:ui में देखा जा सकता है. (Ib5c36)
  • Animation.isInfinite और VectorizedAnimationSpec.isInfinite जोड़े गए हैं. इनसे यह पता चलता है कि ऐनिमेशन हमेशा चलता रहेगा या नहीं. इसका इस्तेमाल ऐनिमेशन लागू करने के लिए किया जा सकता है, ताकि ऐसे ऐनिमेशन को खास तरीके से हैंडल किया जा सके. उदाहरण के लिए, "बचा हुआ समय" का खास मैसेज दिखाया जा सकता है. इसके अलावा, टेस्ट के दौरान ऐनिमेशन को रद्द किया जा सकता है, ताकि लंबे समय तक इंतज़ार न करना पड़े. (Iebb05, b/151940543)
  • ऐनिमेशन के समय के टाइप के तौर पर, Uptime के बजाय Long का इस्तेमाल करें (Ie3aa7, b/177420019)

वर्शन 1.0.0-alpha11

28 जनवरी, 2021

androidx.compose.animation:animation:1.0.0-alpha11 और androidx.compose.animation:animation-core:1.0.0-alpha11 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha11 में ये कमिट शामिल हैं.

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

  • TransitionDefinition पर आधारित ट्रांज़िशन को बंद कर दिया गया है (I0ac57)
  • टूल (I619fb) में ट्रांज़िशन और चाइल्ड ऐनिमेशन दिखाने के लिए, एक लेबल फ़ील्ड जोड़ा गया है
  • animateAsState को अब animateFooAsState कर दिया गया है. यहां Foo, ऐनिमेट किए जा रहे वैरिएबल का टाइप है. जैसे, फ़्लोट, डीपी, ऑफ़सेट वगैरह (Ie7e25)
  • नया InfiniteTransition, जो किसी भी संख्या में चाइल्ड ऐनिमेशन चलाता है. (I1da81)
  • यह फ़ंक्शन, Material के स्टेटफ़ुल पैरामीटर इंटरफ़ेस में बदलाव करता है, ताकि उनमें @Composable फ़ंक्शन शामिल किए जा सकें. ये फ़ंक्शन, State<T> वैल्यू दिखाते हैं. Animatable.asState() को जोड़ा गया है, ताकि Animatable को State में आसानी से बदला जा सके. साथ ही, यह Animatable पर animateElevation को suspend एक्सटेंशन में बदलता है. (If613c)

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

  • SideEffect और DisposableEffect API के पक्ष में onCommit, onDispose, और onActive को बंद कर दिया गया है (If760e)
  • updateTransition में Initial State का इस्तेमाल किया जा सकता है (Ifd51d)
  • इमेज और आइकॉन में, कॉन्टेंट का ब्यौरा देने वाला पैरामीटर जोड़ा गया है. इसका इस्तेमाल, सुलभता सेवाओं (I2ac4c) को जानकारी देने के लिए किया जाता है
  • invalidate और compositionReference() को अब बंद कर दिया गया है. इनके बजाय, currentRecomposeScope और rememberCompositionReference का इस्तेमाल करें. (I583a8)
  • अवधि और अपटाइम को लंबे मिलीसेकंड से बदल दिया जाएगा. साथ ही, यह चरण उन क्लास पर पॉइंटर इनपुट की निर्भरता को हटा देता है. (Ia33b2, b/175142755, b/177420019)
  • अब क्लिक किए जा सकने वाले, टॉगल किए जा सकने वाले, और चुने जा सकने वाले कॉम्पोनेंट को कंपोज़िशन के बाहर बनाया जा सकता है (I0a130, b/172938345, b/175294473)
  • ईज़िंग को फ़ंक्शनल इंटरफ़ेस (Ib14e5) में बदल दिया गया है
  • LazyColumn/LazyRow/LazyVerticalGrid के स्कोप के लिए नई items(count: Int) फ़ैक्ट्री मेथड. items(items: List) और itemsIndexed(items: List) अब एक्सटेंशन फ़ंक्शन हैं. इसलिए, इनका इस्तेमाल करते समय आपको इन्हें मैन्युअल तरीके से इंपोर्ट करना होगा. ऐरे के लिए नए एक्सटेंशन ओवरलोड: items(items: Array) और itemsIndexed(Array) (I803fc, b/175562574)
  • टेस्टिंग में TestCoroutineDispatcher का इस्तेमाल करें (I532b6)
  • PointerInputData को हटा दिया गया है. साथ ही, PointerInputChange में बदलाव किया गया है, ताकि इसमें PointerInputData के सभी फ़ील्ड शामिल किए जा सकें. PointerInputEvent और PointerInputEventData को इंटरनल बना दिया गया है, क्योंकि इनका इस्तेमाल किसी भी सार्वजनिक एपीआई में नहीं किया जाता है. (Ifff97, b/175142755)

वर्शन 1.0.0-alpha10

13 जनवरी, 2021

androidx.compose.animation:animation:1.0.0-alpha10 और androidx.compose.animation:animation-core:1.0.0-alpha10 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha10 में ये कमिट शामिल हैं.

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

  • वेग में बदलाव करके, उसके कॉम्पोनेंट और गणितीय संक्रियाएं शामिल की गई हैं. (Ib0447)
  • @ExperimentalTesting का नाम बदलकर @ExperimentalTestApi कर दिया गया है, ताकि यह इसी तरह के एक्सपेरिमेंटल एपीआई एनोटेशन (Ia4502, b/171464963) के साथ काम कर सके
  • DpOffset के लिए, पोज़िशन का नाम बदला गया और getDistance() को हटाया गया (Ib2dfd)
  • Any.identityHashCode() पब्लिक एपीआई (I025d7) हटाया गया

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

  • कोरूटीन पर आधारित नया एपीआई Animatable, जो यह पक्का करता है कि इसके ऐनिमेशन एक-दूसरे से अलग हों. मल्टी-डाइमेंशनल डेके ऐनिमेशन के लिए, नया DecayAnimationSpec (I820f2, b/168014930)
  • animate() को अब animateAsState() से बदल दिया गया है. यह T के बजाय State<T> दिखाता है. इससे परफ़ॉर्मेंस बेहतर होती है, क्योंकि अमान्य होने के दायरे को उस जगह तक सीमित किया जा सकता है जहां State वैल्यू पढ़ी जाती है. (Ib179e)

वर्शन 1.0.0-alpha09

16 दिसंबर, 2020

androidx.compose.animation:animation:1.0.0-alpha09 और androidx.compose.animation:animation-core:1.0.0-alpha09 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha09 में ये कमिट शामिल हैं.

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

  • Dp.VectorConverter, Position.VectorConverter वगैरह को animation-core में ले जाया गया है. साथ ही, पुराने VectorConveters (If0c4b) को बंद कर दिया गया है
  • ट्रांज़िशन एपीआई का एक नया सेट लॉन्च किया गया है. इसे इस्तेमाल करना पहले से ज़्यादा आसान है. साथ ही, इसमें डाइनैमिक तरीके से जोड़े गए ऐनिमेशन और डाइनैमिक तरीके से कैलकुलेट किए गए ऐनिमेशन टारगेट की सुविधा है. इन एपीआई को एक्सपेरिमेंट के तौर पर मार्क किया गया है, ताकि इन्हें TransitionDefinition पर आधारित एपीआई से आसानी से अलग किया जा सके. (Ia7fe3)

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

  • ऑफ़सेट मॉडिफ़ायर में लैम्ब्डा अब फ़्लोट के बजाय IntOffset दिखाता है. (Ic9ee5, b/174137212, b/174146755)
  • LazyColumnFor, LazyRowFor, LazyColumnForIndexed, और LazyRowForIndexed को बंद कर दिया गया है. इसके बजाय, LazyColumn और LazyRow का इस्तेमाल करें (I5b48c)
  • पॉइंटर इनपुट एपीआई को निलंबित करने के लिए, HandlePointerInputScope का नाम बदलकर AwaitPointerEventScope और handlePointerInput() का नाम बदलकर awaitPointerEventScope() कर दिया गया है. (Idf0a1, b/175142755)
  • InfiniteRepeatableSpec बनाने के लिए, नया infiniteRepeatable फ़ंक्शन (I668e5)
  • ExperimentalPointerInput एनोटेशन (Ia7a24) हटाया गया

वर्शन 1.0.0-alpha08

2 दिसंबर, 2020

androidx.compose.animation:animation:1.0.0-alpha08 और androidx.compose.animation:animation-core:1.0.0-alpha08 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha08 में ये कमिट शामिल हैं.

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

  • कंपोज़ेबल लैम्डा पैरामीटर के नाम और पोज़िशन के लिए, लिंट चेक जोड़ा गया है. इससे यह जांच की जा सकेगी कि यह Compose के दिशा-निर्देशों के मुताबिक है या नहीं. इसके अलावा, कुछ एपीआई को माइग्रेट किया गया है. इनमें से कुछ में, ट्रेलिंग लैम्डा के लिए children का इस्तेमाल किया गया था. इन्हें content में माइग्रेट किया गया है. ऐसा, लिंट चेक और दिशा-निर्देशों के मुताबिक किया गया है. (Iec48e)
  • पहले से पाबंदी वाले एपीआई हटा दिए गए हैं:
    • Modifier.onPositioned को हटा दिया गया है. Modifier.onGloballyPositioned का इस्तेमाल करें.
    • Modifier.onDraw को हटा दिया गया है. Modifier.onDrawBehind का इस्तेमाल करें.
    • Modifier.plus को हटा दिया गया है. Modifier.then का इस्तेमाल करें.
    • Color.Unset को हटा दिया गया है. Color.Unspecified का इस्तेमाल करें.
    • PxBounds क्लास को हटा दिया गया है. इसके बजाय, Rect का इस्तेमाल करें.
    • (Ie9d02, b/172562222)
  • TestAnimationClock को MonotonicFrameClock से कंट्रोल करने का विकल्प कुछ समय के लिए जोड़ा गया (I1403b, b/173402197)

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

  • Modifier.drawLayer का नाम बदलकर Modifier.graphicsLayer कर दिया गया है साथ ही, एपीआई काउंसिल के सुझाव के मुताबिक, इससे जुड़ी क्लास को भी GraphicsLayer में अपडेट कर दिया गया है. (I0bd29, b/173834241)
  • drawLayer के लिए, Modifier.scale/rotate API जोड़े गए.
    • Modifier.drawOpacity का नाम बदलकर Modifier.alpha कर दिया गया है
    • Modifier.drawShadow का नाम बदलकर Modifier.shadow कर दिया गया है (I264ca, b/173208140)
  • PointerInputData के अपटाइम और पोजीशन फ़ील्ड को नॉन-नलेबल बनाया गया. (Id468a)
  • offsetPx मॉडिफ़ायर का नाम बदलकर offset कर दिया गया है. अब ये State के बजाय लैम्डा पैरामीटर ले रहे हैं. (Ic3021, b/173594846)
  • कोरूटीन में ऐनिमेशन चलाने के लिए नए एपीआई (Ied662)
  • Ambient सफ़िक्स वाले, बंद किए गए ऐंबिएंट के नाम बदले गए हैं. साथ ही, उन्हें ऐंबिएंट से शुरू होने वाली नई प्रॉपर्टी से बदल दिया गया है. इसके लिए, अन्य ऐंबिएंट और Compose API के दिशा-निर्देशों का पालन किया गया है. (I33440)
  • जांच में समय को कंट्रोल करने की सुविधा (TestAnimationClock और इसके इस्तेमाल) अब एक्सपेरिमेंट के तौर पर उपलब्ध है (I6ef86, b/171378521)
  • ui-test मॉड्यूल और उसके स्टब (I3a7cb) हटाएं
  • RestorableStateHolder.withRestorableState फ़ंक्शन का नाम बदलकर RestorableStateProvider कर दिया गया है (I66640)
  • अलाइनमेंट इंटरफ़ेस को अपडेट किया गया है और अब यह काम कर रहा है. (I46a07, b/172311734)

वर्शन 1.0.0-alpha07

11 नवंबर, 2020

androidx.compose.animation:animation:1.0.0-alpha07 और androidx.compose.animation:animation-core:1.0.0-alpha07 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha07 में ये कमिट शामिल हैं.

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

  • AmbientTextStyle, ProvideTextStyle, और AmbientContentColor अब काम नहीं करते हैं. इसके बजाय, Material लाइब्रेरी में उपलब्ध नए वर्शन का इस्तेमाल करें. नॉन-मटीरियल ऐप्लिकेशन के लिए, आपको अपने हिसाब से डिज़ाइन सिस्टम बनाना चाहिए. इसमें थीम के हिसाब से एंबिएंट स्टाइल होनी चाहिए, ताकि उन्हें अपने कॉम्पोनेंट में इस्तेमाल किया जा सके. (I74acc, b/172067770)
  • foundation.Text को बंद कर दिया गया है और इसे material.Text से बदल दिया गया है. किसी थीम से वैल्यू का इस्तेमाल न करने वाले सामान्य टेक्स्ट एपीआई के लिए, androidx.compose.foundation.BasicText देखें. (If64cb)
  • MeasureResult को MeasureScope से बाहर ले जाया गया. (Ibf96d, b/171184002)
  • लेआउट से जुड़े कई सिंबल को androidx.compose.ui से androidx.compose.layout.ui में ले जाया गया है. (I0fa98, b/170475424)

वर्शन 1.0.0-alpha06

28 अक्टूबर, 2020

androidx.compose.animation:animation:1.0.0-alpha06 और androidx.compose.animation:animation-core:1.0.0-alpha06 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha06 में ये कमिट शामिल हैं.

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

  • ComposeTestRule में ट्रांज़िशन चालू करें; ComposeTestRule से ब्लिंक करने वाले कर्सर को चालू करने का विकल्प हटाएं. (If0de3)

वर्शन 1.0.0-alpha05

14 अक्टूबर, 2020

androidx.compose.animation:animation:1.0.0-alpha05 और androidx.compose.animation:animation-core:1.0.0-alpha05 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha05 में ये कमिट शामिल हैं.

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

  • नया ऐनिमेशन इंटरफ़ेस और सबक्लास: ये क्लास, ऐनिमेशन के शुरू और खत्म होने की स्थितियों को सेव करती हैं. इसलिए, ये सिर्फ़ प्लेटाइम (Ie95bd, b/163329867) के ज़रिए वैल्यू और वेलोसिटी को क्वेरी करने की अनुमति देती हैं

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

  • OnPositionedModifier का नाम बदलकर OnGloballyPositionedModifier कर दिया गया है. साथ ही, onPositioned() का नाम बदलकर onGloballyPositioned() कर दिया गया है. (I587e8, b/169083903)
  • contentColor() और currentTextStyle() एपीआई को बंद कर देता है. साथ ही, इनकी जगह AmbientContentColor और AmbientTextStyle ambients का इस्तेमाल करता है. किसी भी अन्य परिवेश की तरह, परिवेश की प्रॉपर्टी पर .current का इस्तेमाल करके, मौजूदा वैल्यू को ऐक्सेस किया जा सकता है. यह बदलाव इसलिए किया गया है, ताकि सभी प्लैटफ़ॉर्म पर एक जैसा अनुभव मिले. साथ ही, एक ही काम को पूरा करने के लिए कई तरीके न हों. इसके अलावा, कुछ ऐंबियंट प्रॉपर्टी के नाम बदले गए हैं, ताकि उनके मकसद के बारे में बेहतर तरीके से बताया जा सके. जैसे:

    • ContentColorAmbient -> AmbientContentColor
    • TextStyleAmbient -> AmbientTextStyle
    • IndicationAmbient -> AmbientIndication
    • EmphasisAmbient -> AmbientEmphasisLevels
    • RippleThemeAmbient -> AmbientRippleTheme (I37b6d)

वर्शन 1.0.0-alpha04

1 अक्टूबर, 2020

androidx.compose.animation:animation:1.0.0-alpha04 और androidx.compose.animation:animation-core:1.0.0-alpha04 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha04 में ये कमिट शामिल हैं.

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

  • @VisibleForTesting के साथ एनोटेट किए गए rootAnimationClockFactory, transitionsEnabled, blinkingCursorEnabled, और textInputServiceFactory को इंटरनल एपीआई बनाएं और उनके kdoc को छिपाएं (I554eb, b/168308412)

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

  • कई ग्राफ़िक्स एपीआई अपडेट किए गए
    • स्केल और रोटेशन के लिए अपडेट किए गए ट्रांसफ़ॉर्मेशन एपीआई, DrawScope और DrawTransform में x/y कोऑर्डिनेट के लिए अलग-अलग फ़्लोट पैरामीटर के बजाय, पिवट कोऑर्डिनेट को दिखाने के लिए एक ही ऑफ़सेट पैरामीटर का इस्तेमाल करते हैं
    • Rect.expandToInclude और Rect.join तरीकों को हटाया गया
    • रेडियस के दस्तावेज़ को अपडेट किया गया है. इसमें एलिप्टिकल के साथ-साथ ओवल भी शामिल किया गया है
    • दस्तावेज़ जोड़ा गया है. इससे पता चलता है कि इनलाइन रेडियस क्लास के लिए, सार्वजनिक कंस्ट्रक्टर को सीधे तौर पर कॉल नहीं किया जाना चाहिए. इसके बजाय, रेडियस ऑब्जेक्ट को उनके फ़ंक्शन कंस्ट्रक्टर के ज़रिए इंस्टैंटिएट किया जाना चाहिए
    • RoundRect API हटा दिए गए हैं, ताकि topRight, bottomRight, bottomCenter वगैरह के बारे में क्वेरी की जा सके
    • Rect.shift को Rect.translate के पक्ष में बंद कर दिया गया है
    • RoundRect.grow और Rect.shrink एपीआई हटा दिए गए हैं
    • RoundRect.outerRect का नाम बदलकर Rect.boundingRect किया गया
    • RoundRect.middleRect/tallMiddleRect/wideMiddleRect और Rect.isStadium तरीके हटा दिए गए हैं
    • RoundRect.longestSide का नाम बदलकर RoundRect.maxDimension कर दिया गया है
    • RoundRect.shortestSide का नाम बदलकर RoundRect.minDimension कर दिया गया है
    • RoundRect.center को फ़ंक्शन के बजाय प्रॉपर्टी के तौर पर बदला गया
    • RoundRect कंस्ट्रक्टर को अपडेट किया गया है, ताकि वह x/y रेडियस वैल्यू के लिए अलग-अलग पैरामीटर के बजाय, रेडियस प्रॉपर्टी का इस्तेमाल कर सके
    • ऐसे साइज़ एपीआई हटा दिए गए हैं जो यह मानते थे कि यह एक आयत है और इसका मूल 0,0 पर है
    • Radius में डिस्ट्रक्टिंग एपीआई जोड़ा गया
    • RoundRect एक्सटेंशन फ़ंक्शन को प्रॉपर्टी में माइग्रेट किया गया
    • (I8f5c7, b/168762961)
  • foundation.Box अब काम नहीं करता. इसके बजाय, कृपया foundation.layout.Box का इस्तेमाल करें. (Ie5950, b/167680279)
  • स्टैक का नाम बदलकर Box कर दिया गया है. compose.foundation.layout में मौजूद नए Box के पक्ष में, पहले से मौजूद Box को बंद कर दिया जाएगा. नए बॉक्स में, एक से ज़्यादा आइटम होने पर उन्हें एक के ऊपर एक रखा जाता है. यह पिछले बॉक्स से अलग है, जो कॉलम की तरह काम करता था. (I94893, b/167680279)
  • बॉक्स डेकोरेशन पैरामीटर अब काम नहीं करते. अगर आपको अपने बॉक्स में डेकोरेशन/पैडिंग चाहिए, तो इसके बजाय मॉडिफ़ायर का इस्तेमाल करें (Modifier.background, Modifier.border, Modifier.padding) (Ibae92, b/167680279)
  • हमने लेआउट स्कोप के कॉन्टेंट के स्टैटिक इंपोर्ट को रोका है. उदाहरण के लिए, RowScope में alignWithSiblings. इसके बजाय, स्कोप के लिए इस विकल्प का इस्तेमाल करें: with(RowScope) { Modifier.alignWithSiblings(FirstBaseline) }. (I216be, b/166760797)

वर्शन 1.0.0-alpha03

16 सितंबर, 2020

androidx.compose.animation:animation:1.0.0-alpha03 और androidx.compose.animation:animation-core:1.0.0-alpha03 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha03 में ये कमिट शामिल हैं.

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

  • लेआउट एपीआई में, ग्रेविटी के इस्तेमाल को अलाइन या अलाइनमेंट के तौर पर लगातार रीनेम किया गया. (I2421a, b/164077038)

वर्शन 1.0.0-alpha02

2 सितंबर, 2020

androidx.compose.animation:animation:1.0.0-alpha02 और androidx.compose.animation:animation-core:1.0.0-alpha02 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha02 में ये कमिट शामिल हैं.

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

  • ManualFrameClock.hasAwaiters को इसलिए जोड़ा गया है, ताकि यह देखा जा सके कि उस क्लॉक से किसी फ़्रेम का इंतज़ार तो नहीं किया जा रहा है; runWithManualClock को runBlocking के बदले इसलिए जोड़ा गया है, ताकि ManualFrameClock की ज़रूरत वाली जांचों को चलाया जा सके; TestUiDispatcher.Main को इसलिए जोड़ा गया है, ताकि आपकी जांचों में मुख्य यूज़र इंटरफ़ेस (यूआई) डिस्पैचर को आसानी से ऐक्सेस किया जा सके.

    उदाहरण के लिए:

    @Test
    fun myTest() = runWithManualClock { clock ->
        // set some compose content
        withContext(TestUiDispatcher.Main) {
            clock.advanceClock(1000L)
        }
        if (clock.hasAwaiters) {
            println("The clock has awaiters")
        } else {
            println("The clock has no more awaiters")
        }
    }
    

    (I0a85b, b/161247083)

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

  • onPreCommit का इस्तेमाल अब नहीं किया जा सकता. onCommit में अब onPreCommit की तरह काम करने की सुविधा है.

    onCommit और onActive अब एक ही कोरियोग्राफ़र फ़्रेम में चलते हैं. इससे कंपोज़िशन में किए गए बदलाव, अगले कोरियोग्राफ़र फ़्रेम की शुरुआत में लागू होने के बजाय, उसी फ़्रेम में लागू हो जाते हैं. (I70403)

वर्शन 1.0.0-alpha01

26 अगस्त, 2020

androidx.compose.animation:animation:1.0.0-alpha01 और androidx.compose.animation:animation-core:1.0.0-alpha01 रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha01 में ये कमिट शामिल हैं.

वर्शन 0.1.0-dev

वर्शन 0.1.0-dev17

19 अगस्त, 2020

androidx.compose.animation:animation:0.1.0-dev17 और androidx.compose.animation:animation-core:0.1.0-dev17 रिलीज़ हो गए हैं. वर्शन 0.1.0-dev17 में ये कमिट शामिल हैं.

नई सुविधाएं

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

  • ऑफ़सेट को इनलाइन क्लास (Iaec70) बना दिया गया है
  • IntOffset अब एक इनलाइन क्लास (Iac0bf) है
  • IntSize अब एक इनलाइन क्लास (I2bf42) है
  • AnimatedVisibilty कंपोज़ेबल, चाइल्ड कॉन्टेंट के दिखने और गायब होने की प्रोसेस को ऐनिमेट करता है.

    EnterTransition और ExitTransition को AnimatedVisibilty कंपोज़ेबल के साथ काम करने के लिए पेश किया गया है. इससे कॉन्टेंट को दिखाने और छिपाने के लिए तीन तरह के ऐनिमेशन मिलते हैं: फ़ेड, स्लाइड, और कॉन्टेंट को बड़ा/छोटा करना. ज़्यादा बेहतर लुक और फ़ील पाने के लिए, अलग-अलग तरह के ऐनिमेशन को एक साथ इस्तेमाल किया जा सकता है. (Idda11)

  • Rect के पक्ष में PxBounds को बंद कर दिया गया है. PxBounds के सभी इस्तेमाल को rect से अपडेट किया गया है. साथ ही, माइग्रेशन में मदद करने के लिए, प्रॉपर डेप्रिकेट/रिप्लेस के साथ एनोटेशन जोड़े गए हैं. (I37038, b/162627058)

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

  • PlacementScope.placeAbsolute() का नाम बदलकर PlacementScope.place() कर दिया गया है. साथ ही, पिछले PlacementScope.place() का नाम बदलकर PlacementScope.placeRelative() कर दिया गया है. इस वजह से, PlacementScope.place() तरीके से अब दाएं से बाएं लिखे जाने वाले कॉन्टेक्स्ट में, अपने-आप पोज़िशन नहीं दिखेगी. अगर आपको ऐसा करना है, तो इसके बजाय PlacementScope.placeRelative() का इस्तेमाल करें. (I873ac, b/162916675)
  • state { ... } कंपोज़ेबल को अब बंद कर दिया गया है. इसके बजाय, remember { mutableStateOf(...) } को साफ़ तौर पर कॉल करने की सुविधा उपलब्ध है. इससे, एपीआई के कुल सर्फ़ेस और स्टेट मैनेजमेंट के लिए कॉन्सेप्ट की संख्या कम हो जाती है. साथ ही, यह क्लास प्रॉपर्टी डेलिगेशन के लिए by mutableStateOf() पैटर्न से मेल खाता है. (Ia5727)

वर्शन 0.1.0-dev16

5 अगस्त, 2020

androidx.compose.animation:animation:0.1.0-dev16 और androidx.compose.animation:animation-core:0.1.0-dev16 रिलीज़ हो गए हैं. वर्शन 0.1.0-dev16 में ये कमिट शामिल हैं.

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

  • बिल्ट-इन यूनिट को बदलने के लिए, बिल्ट-इन वेक्टर कन्वर्टर अब Foo.VectorConverter के ज़रिए ऐक्सेस किए जा सकते हैं. उदाहरण के लिए, Dp.VectorConverter, Color.VectorConverter, Float.VectorConverter वगैरह (I3e273)
  • Modifier.animateContentSize() में एंड लिसनर की सुविधा उपलब्ध है. इससे साइज़ बदलने का ऐनिमेशन खत्म होने पर, लिसनर को सूचना मिल जाएगी. साथ ही, ऐनिमेशन के शुरू और खत्म होने के साइज़ की जानकारी भी मिल जाएगी. (I277b2)
  • नया animateContentSize मॉडिफ़ायर, जो अपने चाइल्ड मॉडिफ़ायर (Ieffdc) के लेआउट के साइज़ में होने वाले बदलाव को ऐनिमेट करता है
  • MonotonicFrameAnimationClock जोड़ा गया है. इसकी मदद से, AnimationClockObservable के तौर पर MonotonicFrameClock का इस्तेमाल किया जा सकता है. इससे, कॉलबैक पर आधारित पुरानी क्लॉक का इस्तेमाल करने वाले एपीआई और नई को-रूटीन पर आधारित क्लॉक के बीच के अंतर को कम किया जा सकता है.

    ManualAnimationClock के बराबर MonotonicFrameClock अब ManualFrameClock है. (I111c7, b/161247083)

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

  • दाएं से बाएं की ओर लिखे जाने वाले टेक्स्ट के लिए, एपीआई अपडेट कर दिए गए हैं. LayoutDirectionAmbient को जोड़ा गया है. इसका इस्तेमाल लेआउट की दिशा को पढ़ने और बदलने के लिए किया जा सकता है. Modifier.rtl और Modifier.ltr को हटा दिया गया है. (I080b3)
  • transitionDefinition के लिए, टाइप T को साफ़ तौर पर तय करना ज़रूरी है. (I1aded)
  • foundation.shape.corner पैकेज को foundation.share (I46491, b/161887429) में बदल दिया गया है
  • Modifier.plus का इस्तेमाल अब नहीं किया जा सकता. इसके बजाय, Modifier.then का इस्तेमाल करें. 'फिर' शब्द से क्रम का ज़्यादा मज़बूत सिग्नल मिलता है. साथ ही, इसमें Modifier.padding().background() + anotherModifier टाइप करने की अनुमति नहीं है. इससे चेन टूट जाती है और इसे पढ़ना मुश्किल हो जाता है (Iedd58, b/161529964)
  • Modifier.drawBackground का नाम बदलकर Modifier.background कर दिया गया है (I13677)

वर्शन 0.1.0-dev15

22 जुलाई, 2020

androidx.compose.animation:animation:0.1.0-dev15 और androidx.compose.animation:animation-core:0.1.0-dev15 रिलीज़ हो गए हैं. वर्शन 0.1.0-dev15 में ये कमिट शामिल हैं.

डिपेंडेंसी अपडेट

  • Compose के 0.1.0-dev15 वर्शन का इस्तेमाल करने के लिए, आपको अपनी डिपेंडेंसी अपडेट करनी होंगी. इसके लिए, डिपेंडेंसी तय करना सेक्शन में ऊपर दिखाए गए नए कोड स्निपेट का इस्तेमाल करें.

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

  • Transition API को बदल दिया गया है. अब यह TransitionState को बच्चों को पास करने के बजाय, TransitionState दिखाता है. इससे एपीआई, animate() एपीआई के साथ ज़्यादा बेहतर तरीके से काम करता है. (I24e38)
  • क्रॉसफ़ेड (I87cfe, b/159706180) के लिए मॉडिफ़ायर पैरामीटर जोड़ा गया
  • स्टैटिक ऐनिमेशन स्पेसिफ़िकेशन के कॉन्सेप्ट को समझने के लिए, टॉप लेवल के एपीआई में AnimationBuilder के बजाय AnimationSpec का इस्तेमाल करें
    • ट्रांज़िशन डीएसएल को बेहतर बनाया गया है. इसके लिए, ट्विन और स्प्रिंग जैसे AnimationSpec बनाने के लिए, लैम्ब्डा की ज़रूरत को हटाया गया है. इसके बजाय, वे सीधे तौर पर कंस्ट्रक्टर पैरामीटर लेते हैं.
    • AnimationSpec को इस्तेमाल करने में आसानी हो, इसके लिए बिल्डर पर भरोसा करने के बजाय कंस्ट्रक्टर का इस्तेमाल करना
    • KeyFrames और Tween के लिए, अवधि और देरी को Int में बदलें. इससे, टाइप कास्ट और तरीके के ओवरलोडिंग (Long और Int, दोनों के साथ काम करने के लिए) को हटाया जा सकता है. (Ica0b4)
  • IntPx की जगह Int का इस्तेमाल किया गया. IntPxPosition की जगह IntOffset का इस्तेमाल किया गया. IntPxSize को IntSize से बदल दिया गया है. (Ib7b44)
  • साइज़ की जानकारी दिखाने के लिए इस्तेमाल की गई क्लास की संख्या को कम करने के लिए, PxSize के बजाय Size क्लास के इस्तेमाल को स्टैंडर्ड बनाएं. इससे इनलाइन क्लास के फ़ायदे मिलते हैं. जैसे, दो फ़्लोट वैल्यू को एक साथ पैक करने के लिए, long का इस्तेमाल किया जा सकता है. इससे फ़्लोट के तौर पर दिखाई गई चौड़ाई और ऊंचाई को दिखाया जा सकता है. (Ic0191)
  • पोजीशनिंग की जानकारी दिखाने के लिए इस्तेमाल की गई क्लास की संख्या को कम करने के लिए, PxPosition के बजाय Offset क्लास का इस्तेमाल करें. इससे इनलाइन क्लास के फ़ायदे मिलते हैं. जैसे, x और y ऑफ़सेट को फ़्लोट के तौर पर दिखाने के लिए, दो फ़्लोट वैल्यू को पैक करने के लिए long का इस्तेमाल करना. (I3ad98)
  • पिक्सल पैरामीटर के लिए सिर्फ़ Dp और प्रिमिटिव टाइप पर भरोसा करने के लिए, बड़े पैमाने पर रीफ़ैक्टरिंग के तहत, अलग-अलग कंपोज़ क्लास में Px क्लास के इस्तेमाल को बदल दिया गया है (I086f4)
  • Dp, Px, Size, Position, Bounds, PxPosition, PxSize, PxBounds, IntPx, IntPxSize, IntPxPosition, IntPxBounds, और AnimationVector के लिए animate() फ़ंक्शन का इस्तेमाल करने की सुविधा जोड़ी गई (Ib7518)
  • Crossfade अब AnimationBuilder पैरामीटर को स्वीकार करता है. इससे ऐनिमेशन को कॉन्फ़िगर किया जा सकता है (I6d6e0)
  • एपीआई में, Color के सभी ऐसे इस्तेमाल को बदला गया है जिनमें null वैल्यू इस्तेमाल की जा सकती थी. अब null वैल्यू इस्तेमाल नहीं की जा सकती. साथ ही, null की जगह Color.Unset का इस्तेमाल किया गया है (Iabaa7)
  • ValueHolder क्लास हटा दी गई है. AnimatedValue और AnimatedFloat क्लास को फिर से स्ट्रक्चर किया गया है, ताकि ऐनिमेशन वैल्यू फ़ील्ड को ऐब्स्ट्रैक्ट बनाया जा सके. इससे सबक्लास, वैल्यू अपडेट को देख सकते हैं.
    • AnimatedValue, AnimatedFloat वगैरह के लिए मॉडल क्लास जोड़ी गईं.
    • वैल्यू के बीच ऐनिमेशन के लिए, @Composable एपीआई का नया सेट जोड़ा गया. (I79530)
  • ambients API में बड़े बदलाव. ज़्यादा जानकारी के लिए, लॉग और Ambient<T> दस्तावेज़ देखें (I4c7ee, b/143769776)
  • दोहराने का नया मोड: रिवर्स. इस मोड में, पिछली इटरेशन को उलट दिया जाता है, क्योंकि ऐनिमेशन, RepeatableSpec या VectorizedRepeatableSpec में दोहराया जाता है. (Ibe0f5)
  • ManualAnimationClock में जोड़े गए एपीआई: hasObservers: Boolean और कंस्ट्रक्टर पैरामीटर dispatchOnSubscribe: Boolean (Iaa134)
  • AnimatedFloat (Icd9cc) में कम से कम/ज़्यादा से ज़्यादा बाउंड पाने के लिए एपीआई जोड़े गए

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

  • runOnIdleCompose का नाम बदलकर runOnIdle कर दिया गया (I83607)
  • टेस्टिंग के कई एपीआई के नाम बदलकर, उन्हें ज़्यादा आसान बना दिया गया है. findXYZ नाम वाले सभी एपीआई का नाम बदलकर onNodeXYZ कर दिया गया है. सभी doXYZ एपीआई का नाम बदलकर performXYZ कर दिया गया है. (I7f164)
  • स्टेटलेस ऐनिमेशन के लिए, कम लेवल वाले एपीआई जोड़े गए. ये एपीआई (I63bf7)
  • Recompose कंपोज़ेबल अब काम का ऐब्स्ट्रैक्शन नहीं है. MutableState असाइनमेंट की वजह से, ज़्यादातर रीकंपोज़िशन होने चाहिए. इससे ज़्यादा के लिए, हमारा सुझाव है कि आप invalidate फ़ंक्शन का इस्तेमाल करके, मौजूदा स्कोप को फिर से कंपोज़ करें. (Ifc992)
  • पिक्सल पैरामीटर के लिए, सिर्फ़ Dp और प्रिमिटिव टाइप पर भरोसा करने के लिए, बड़े पैमाने पर रीफ़ैक्टरिंग के तहत, अलग-अलग कंपोज़ क्लास में Px क्लास के इस्तेमाल को बदल दिया गया है. Px क्लास को पूरी तरह से मिटा दिया गया है (I3ff33)
  • पिक्सल पैरामीटर (Id3434) के लिए, सिर्फ़ Dp और प्रिमिटिव टाइप पर भरोसा करने के लिए, बड़े पैमाने पर रीफ़ैक्टरिंग के तहत, अलग-अलग कंपोज़ क्लास में Px क्लास के इस्तेमाल को बदल दिया गया है
  • क्रॉसफ़ेड अब शुरुआती वैल्यू के तौर पर शून्य के साथ काम कर सकता है (Iad6a4, b/155947711)
  • पिक्सल पैरामीटर के लिए, सिर्फ़ Dp और प्रिमिटिव टाइप पर भरोसा करने के लिए, बड़े पैमाने पर रीफ़ैक्टरिंग के तहत, अलग-अलग कंपोज़ क्लास में Px क्लास के इस्तेमाल को बदल दिया गया है (I19d02)
  • CanvasScope को लागू करने के तरीके को एक साथ कर दिया गया है, इसलिए अब सिर्फ़ DrawScope और ContentDrawScope उपलब्ध हैं CanvasScope का नाम बदलकर DrawScope कर दिया गया है. Density इंटरफ़ेस लागू करने और LayoutDirection उपलब्ध कराने के लिए, DrawScope को अपडेट किया गया ContentDrawScope में DrawScope सबक्लास को मिटाया गया Painter और PainterModifier को अपडेट किया गया है, ताकि वे अब खुद RTL प्रॉपर्टी को बनाए न रखें, क्योंकि DrawScope इसे पहले से ही उपलब्ध कराता है. इसके लिए, इसे मैन्युअल तरीके से उपलब्ध कराने की ज़रूरत नहीं होती (I1798e)
  • ज़्यादा लेवल वाले Compose API अपडेट किए गए हैं. ये Canvas को CanvasScope के बजाय Canvas को दिखाते हैं. इससे उपभोक्ताओं को अपने पेंट ऑब्जेक्ट बनाए रखने की ज़रूरत नहीं पड़ती. जिन उपभोक्ताओं को अब भी Canvas का ऐक्सेस चाहिए वे drawCanvas एक्सटेंशन का इस्तेमाल कर सकते हैं. यह तरीका, Canvas के साथ ड्राइंग कमांड जारी करने के लिए कॉलबैक उपलब्ध कराता है. (I80afd)
  • Row और Column में, verticalGravity और horizontalGravity पैरामीटर जोड़े गए. (I7dc5a)
  • ui-text मॉड्यूल का नाम बदलकर ui-text-core (I57dec) कर दिया गया है
  • DrawModifier API को बेहतर बनाएं:
    • draw() के लिए रिसीवर स्कोप को ContentDrawScope बनाया गया
    • draw() पर मौजूद सभी पैरामीटर हटा दिए गए हैं
    • DrawScope का इंटरफ़ेस, CanvasScope जैसा ही है
    • ContentDrawScope में drawContent() मेथड होता है (Ibaced, b/152919067)
  • runOnIdleCompose और runOnUiThread अब ComposeTestRule पर उपलब्ध तरीकों के बजाय, ग्लोबल फ़ंक्शन हैं. (Icbe8f)
  • [बदला जा सकता है]स्टेट प्रॉपर्टी डेलिगेट ऑपरेटर को एक्सटेंशन में ले जाया गया है, ताकि Kotlin 1.4 प्रॉपर्टी डेलिगेट ऑप्टिमाइज़ेशन का इस्तेमाल किया जा सके. by state { ... } या by mutableStateOf(...) का इस्तेमाल जारी रखने के लिए, कॉल करने वालों को इंपोर्ट जोड़ने होंगे. (I5312c)
  • ColoredRect को बंद कर दिया गया है. इसके बजाय, Box(Modifier.preferredSize(width, height).drawBackground(color)) का इस्तेमाल करें. (I499fa, b/152753731)
  • मॉडिफ़ायर प्लस ऑपरेटर को फ़ैक्ट्री एक्सटेंशन फ़ंक्शन (I225e4) से बदला गया
  • अब काम नहीं करने वाला Center कंपोज़ेबल. इसे LayoutSize.Fill + LayoutAlign.Center मॉडिफ़ायर से बदला जाना चाहिए. इसके अलावा, इसे Box या Stack कंपोज़ेबल में से किसी एक से भी बदला जा सकता है. हालांकि, इसके लिए ज़रूरी है कि इन पर सही मॉडिफ़ायर लागू किए गए हों (Idf5e0)
  • LayoutFlexible का नाम बदलकर LayoutWeight कर दिया गया है. भरने के लिए टाइट पैरामीटर का नाम बदला गया. (If4738)
  • ओपैसिटी कंपोज़ेबल फ़ंक्शन को drawOpacity मॉडिफ़ायर से बदल दिया गया है. (I5fb62)
  • AndroidComposeTestRule का इस्तेमाल करके किए जाने वाले टेस्ट में, अब कंपोज़िशन के रूट पर एक ऐनिमेशन क्लॉक मिलती है. इसकी मदद से, ऐनिमेशन को रोका जा सकता है, फिर से शुरू किया जा सकता है, और मैन्युअल तरीके से आगे बढ़ाया जा सकता है. (Id54c5)
  • LayoutPadding मॉडिफ़ायर में, दाएं से बाएं की दिशा में लिखने की सुविधा जोड़ी गई (I9e8da)
  • Density और DensityScope को एक ही इंटरफ़ेस में मर्ज कर दिया गया है. ambientDensity() के बजाय, अब DensityAmbient.current का इस्तेमाल किया जा सकता है. withDensity(density) के बजाय सिर्फ़ with(density) (I11cb1)
  • अलग-अलग इनलाइन क्लास टाइप में कॉपी करने के तरीके जोड़े गए हैं. इनमें ये शामिल हैं:
    • ऑफ़सेट
    • साइज़
    • दायरा
    • मोशन
    • TransformOrigin
    • Size.copy कंपैनियन ऑब्जेक्ट मेथड को बंद कर दिया गया है इसके बजाय, इंस्टेंस कॉपी मेथड (Ife290, b/159905651) का इस्तेमाल करें
  • androidx.compose.ViewComposer को androidx.ui.node.UiComposer में ले जाया गया है androidx.compose.Emittable को हटा दिया गया है. यह ComponentNode के साथ काम नहीं करता था. androidx.compose.ViewAdapters को हटा दिया गया है. अब इन्हें इस्तेमाल के उदाहरण के तौर पर स्वीकार नहीं किया जाता. Compose.composeInto का अब इस्तेमाल नहीं किया जा सकता. इसके बजाय, setContent या setViewContent का इस्तेमाल करें. Compose.disposeComposition को बंद कर दिया गया है. इसके बजाय, setContent से मिले Composition पर dispose तरीके का इस्तेमाल करें. androidx.compose.Compose.subcomposeInto को androidx.ui.core.subcomposeInto में ले जाया गया है ComponentNode#emitInsertAt का नाम बदलकर ComponentNode#insertAt कर दिया गया है ComponentNode#emitRemoveAt का नाम बदलकर ComponentNode#removeAt कर दिया गया है ComponentNode#emitMode का नाम बदलकर ComponentNode#move कर दिया गया है (Idef00)