गतिविधि
| नया अपडेट | स्टेबल रिलीज़ | रिलीज़ कैंडिडेट | बीटा रिलीज़ | ऐल्फ़ा रिलीज़ |
|---|---|---|---|---|
| 22 अक्टूबर, 2025 | 1.11.0 | - | 1.12.0-beta01 | - |
डिपेंडेंसी का एलान करना
Activity पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google की Maven रिपॉज़िटरी पढ़ें.
अपने ऐप्लिकेशन या मॉड्यूल के लिए, build.gradle फ़ाइल में उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको ज़रूरत है:
ग्रूवी
dependencies { def activity_version = "1.11.0" // Java language implementation implementation "androidx.activity:activity:$activity_version" // Kotlin implementation "androidx.activity:activity-ktx:$activity_version" }
Kotlin
dependencies { val activity_version = "1.11.0" // Java language implementation implementation("androidx.activity:activity:$activity_version") // Kotlin implementation("androidx.activity:activity-ktx:$activity_version") }
डिपेंडेंसी के बारे में ज़्यादा जानने के लिए, बिल्ड डिपेंडेंसी जोड़ना लेख पढ़ें.
सुझाव/राय दें या शिकायत करें
आपके सुझाव, शिकायत या राय से Jetpack को बेहतर बनाने में मदद मिलती है. अगर आपको कोई नई समस्या मिलती है या आपके पास इस लाइब्रेरी को बेहतर बनाने के लिए सुझाव हैं, तो हमें बताएं. कृपया नई समस्या सबमिट करने से पहले, इस लाइब्रेरी में शामिल मौजूदा समस्याओं को देखें. स्टार बटन पर क्लिक करके, किसी मौजूदा समस्या के लिए वोट किया जा सकता है.
ज़्यादा जानकारी के लिए, Issue Tracker का दस्तावेज़ देखें.
वर्शन 1.12
वर्शन 1.12.0-beta01
22 अक्टूबर, 2025
androidx.activity:activity:1.12.0-beta01, androidx.activity:activity-compose:1.12.0-beta01, और androidx.activity:activity-ktx:1.12.0-beta01 रिलीज़ किए जाते हैं. वर्शन 1.12.0-beta01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- रनटाइम के दौरान होने वाले व्यवहार में बदलाव और माइग्रेशन को मैनेज करने के लिए, एक्सपेरिमेंट के तौर पर उपलब्ध
ActivityFlagsएपीआई लॉन्च किया गया है. पहले फ़्लैग सेOnBackPressedCallbackके लिए स्टेबल ऑर्डरिंग चालू होती है. इससे लाइफ़साइकल में होने वाले बदलावों के दौरान, बैक नेविगेशन का अनुमान लगाना आसान हो जाता है. डेवलपर,ActivityFlags.isOnBackPressedLifecycleOrderMaintained = falseसेट करके ऑप्ट आउट कर सकते हैं. (I06bdf, Id08bb, I439aa, b/422730945, b/450533622)
डिपेंडेंसी अपडेट
- लाइफ़साइकल की डिपेंडेंसी को 2.9.4 (Ic9fb2) पर अपडेट करें
वर्शन 1.12.0-alpha09
24 सितंबर, 2025
androidx.activity:activity:1.12.0-alpha09, androidx.activity:activity-compose:1.12.0-alpha09, और androidx.activity:activity-ktx:1.12.0-alpha09 रिलीज़ किए जाते हैं. वर्शन 1.12.0-alpha09 में ये बदलाव शामिल हैं.
डिपेंडेंसी में बदलाव
- अब गतिविधि, Navigation Event 1.0.0-alpha08 पर निर्भर करती है.
वर्शन 1.12.0-alpha08
10 सितंबर, 2025
androidx.activity:activity:1.12.0-alpha08, androidx.activity:activity-compose:1.12.0-alpha08, और androidx.activity:activity-ktx:1.12.0-alpha08 रिलीज़ किए जाते हैं. वर्शन 1.12.0-alpha08 में ये बदलाव शामिल हैं.
डिपेंडेंसी अपडेट
- अब गतिविधि, Navigation Event 1.0.0-alpha08 पर निर्भर करती है.
वर्शन 1.12.0-alpha07
27 अगस्त, 2025
androidx.activity:activity:1.12.0-alpha07, androidx.activity:activity-compose:1.12.0-alpha07, और androidx.activity:activity-ktx:1.12.0-alpha07 रिलीज़ किए जाते हैं. वर्शन 1.12.0-alpha07 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- एपीआई 35 में
EdgeToEdgeसे जुड़ी समस्या ठीक की गई है. इसमें अदृश्य व्यू की वजह से, मेज़रमेंट इनसेट में गड़बड़ी हो रही थी. (If49ff)
डिपेंडेंसी अपडेट
- अब ऐक्टिविटी, नेविगेशन इवेंट
1.0.0-alpha07पर निर्भर करती है.
वर्शन 1.12.0-alpha06
13 अगस्त, 2025
androidx.activity:activity:1.12.0-alpha06, androidx.activity:activity-compose:1.12.0-alpha06, और androidx.activity:activity-ktx:1.12.0-alpha06 रिलीज़ किए जाते हैं. वर्शन 1.12.0-alpha06 में ये बदलाव शामिल हैं.
MinSdk अपडेट
- AndroidX के लिए डिफ़ॉल्ट
minSdkको API 21 से API 23 पर ले जाया गया है (Ibdfca, b/380448311, b/435705964, b/435705223)
दस्तावेज़ से जुड़े अपडेट
PredictiveBackHandlerके लिए अपडेट किए गए KDocs. इसमें समय से जुड़ी एक ऐसी समस्या के बारे में बताया गया है जिसमें जेस्चर को उसी फ़्रेम में प्रोसेस किया जा सकता है जिसमें उसे बंद किया गया है. (I5be5c, b/431534103)BackHandlerऔरPredictiveBackHandlerके लिए KDocs अपडेट किए गए हैं. इनमें 'सबसे बाद में कंपोज़ किया गया मैसेज दिखता है' के बारे में साफ़ तौर पर बताया गया है. साथ ही,enabledफ़्लैग के साथ बिना शर्त कंपोज़ करने का सुझाव दिया गया है. (I7ab94)
डिपेंडेंसी अपडेट
- अब ऐक्टिविटी, नेविगेशन इवेंट
1.0.0-alpha06पर निर्भर करती है.
वर्शन 1.12.0-alpha05
30 जुलाई, 2025
androidx.activity:activity:1.12.0-alpha05, androidx.activity:activity-compose:1.12.0-alpha05, और androidx.activity:activity-ktx:1.12.0-alpha05 रिलीज़ किए जाते हैं. वर्शन 1.12.0-alpha05 में ये बदलाव शामिल हैं.
डिपेंडेंसी अपडेट
- अब ऐक्टिविटी, नेविगेशन इवेंट
1.0.0-alpha05पर निर्भर करती है.
वर्शन 1.12.0-alpha04
2 जुलाई, 2025
androidx.activity:activity:1.12.0-alpha04, androidx.activity:activity-compose:1.12.0-alpha04, और androidx.activity:activity-ktx:1.12.0-alpha04 रिलीज़ किए जाते हैं. वर्शन 1.12.0-alpha04 में ये बदलाव शामिल हैं.
डिपेंडेंसी में बदलाव
- अब ऐक्टिविटी, NavigationEvent Alpha04 पर निर्भर करती है
वर्शन 1.12.0-alpha03
18 जून, 2025
androidx.activity:activity:1.12.0-alpha03, androidx.activity:activity-compose:1.12.0-alpha03, और androidx.activity:activity-ktx:1.12.0-alpha03 रिलीज़ किए जाते हैं. वर्शन 1.12.0-alpha03 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
OnBackPressedDispatcherऔरNavigationEventDispatcher, दोनों को अबComponentActivityमें लेज़ी तरीके से शुरू किया जाता है. (I710e6)OnBackPressedDistpatcherसे जुड़ी उन समस्याओं को ठीक किया गया है जिनकी वजह से ये समस्याएं हो रही थीं:- सिर्फ़
OnBackPressedCallbackके सबसे नए डिसपैचर को, चालू होने की स्थिति के बारे में सूचना पाने के लिए जोड़ा गया था (b/418715930) - लाइफ़साइकल का इस्तेमाल करने वाले
addCallbackफ़ंक्शन का इस्तेमाल करते समय,OnBackPressedDispatcherगलत कॉलबैक को हटा देता है. (b/422714753) OnBackPressedDispatcher.remove()से, रजिस्टर किए गएOnBackPressedCallbackके सभी इंस्टेंस नहीं हटाए जाते. (b/423024414)
- सिर्फ़
वर्शन 1.12.0-alpha02
4 जून, 2025
androidx.activity:activity:1.12.0-alpha02, androidx.activity:activity-compose:1.12.0-alpha02, और androidx.activity:activity-ktx:1.12.0-alpha02 रिलीज़ किए जाते हैं. वर्शन 1.12.0-alpha02 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- NavigationEvent
1.0.0-alpha02से:ConcurrentModificationExceptionको ठीक किया गया है. यह तब हो सकता है, जब बंद किए जा सकने वाले आइटम की इंटरनल सूची में एक साथ बदलाव करने की वजह सेNavigationEventCallback.remove()को कॉल किया गया हो. (I63066)
वर्शन 1.12.0-alpha01
20 मई, 2025
androidx.activity:activity:1.12.0-alpha01, androidx.activity:activity-compose:1.12.0-alpha01, और androidx.activity:activity-ktx:1.12.0-alpha01 रिलीज़ किए जाते हैं. वर्शन 1.12.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
NavigationEventDispatcherOwnerएपीआई के ज़रिए,ComponentActivityऔरComponentDialogको NavigationEvent1.0.0-alpha01के साथ इंटिग्रेट किया गया है. अबnavigationEventDispatcherफ़ील्ड के ज़रिए,ComponentActivityसेNavigationEventDispatcherवापस पाया जा सकता है.OnBackPressedDispatcherको नई लाइब्रेरी के आधार पर फिर से लिखा गया है. इसलिए, पहले की तरह ही इसका इस्तेमाल किया जा सकता है. अब से आपकोNavigationEventDispatcherऔरNavigationEventCallbackका इस्तेमाल करना चाहिए. (Ib8eed, I6cc44, Ib7724, I9a0f7,b/412597031, b/415028038, b/412596729, b/412597140, b/412596012)
वर्शन 1.11
वर्शन 1.11.0
10 सितंबर, 2025
androidx.activity:activity:1.11.0, androidx.activity:activity-compose:1.11.0, और androidx.activity:activity-ktx:1.11.0 रिलीज़ किए जाते हैं. वर्शन 1.11.0 में ये बदलाव शामिल हैं.
1.10.0 के बाद हुए अहम बदलाव:
PickVisualMediaRequestमेंMediaCapabilitiesएपीआई जोड़ा गया है, ताकि ऐप्लिकेशन अपनी मीडिया क्षमताओं के बारे में बता सकें. जैसे, एचडीआर के कौनसे टाइप काम करते हैं.- अब ऐक्टिविटी को एपीआई 36 के साथ कंपाइल किया गया है.
वर्शन 1.11.0-rc01
23 अप्रैल, 2025
androidx.activity:activity:1.11.0-rc01, androidx.activity:activity-compose:1.11.0-rc01, और androidx.activity:activity-ktx:1.11.0-rc01 रिलीज़ किए जाते हैं. वर्शन 1.11.0-rc01 में ये बदलाव शामिल हैं.
वर्शन 1.11.0-beta01
9 अप्रैल, 2025
androidx.activity:activity:1.11.0-beta01, androidx.activity:activity-compose:1.11.0-beta01, और androidx.activity:activity-ktx:1.11.0-beta01 रिलीज़ किए जाते हैं. वर्शन 1.11.0-beta01 में ये बदलाव शामिल हैं.
वर्शन 1.11.0-alpha02
26 मार्च, 2025
androidx.activity:activity:1.11.0-alpha02, androidx.activity:activity-compose:1.11.0-alpha02, और androidx.activity:activity-ktx:1.11.0-alpha02 रिलीज़ किए जाते हैं. वर्शन 1.11.0-alpha02 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- Android 16 Beta03 की नई
EDGE_NONEऔरframeTimeMillisको,OnBackPressedCallbackकेhandleOnBackStartedऔरhandleOnBackProgressedफ़ंक्शन से मिलेBackEventCompatमें इंटिग्रेट किया गया है.
डिपेंडेंसी से जुड़े अपडेट
- अब ऐक्टिविटी को एपीआई 36 के साथ कंपाइल किया गया है. (I510e8, b/301910674)
वर्शन 1.11.0-alpha01
12 मार्च, 2025
androidx.activity:activity:1.11.0-alpha01, androidx.activity:activity-compose:1.11.0-alpha01, और androidx.activity:activity-ktx:1.11.0-alpha01 रिलीज़ किए जाते हैं. वर्शन 1.11.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
PickVisualMediaRequestमेंMediaCapabilitiesएपीआई जोड़ा गया है, ताकि ऐप्लिकेशन अपनी मीडिया क्षमताओं के बारे में बता सकें. जैसे, एचडीआर के कौनसे टाइप काम करते हैं. (Ic3ee7)
वर्शन 1.10
वर्शन 1.10.1
26 फ़रवरी, 2025
androidx.activity:activity:1.10.1, androidx.activity:activity-compose:1.10.1, और androidx.activity:activity-ktx:1.10.1 रिलीज़ किए जाते हैं. वर्शन 1.10.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
ViewTreeOnBackPressedDispatcherOwnersऔरFullyDrawnReporterOwnersको अब व्यू के अलग-अलग पैरंट के ज़रिए हल किया जा सकता है. जैसे,ViewOverlay. व्यू के अलग-अलग पैरंट के बारे में ज़्यादा जानने के लिए, कोर के रिलीज़ नोट याViewTree.setViewTreeDisjointParentमें मौजूद दस्तावेज़ देखें. (Ie7750)
वर्शन 1.10.0
15 जनवरी, 2025
androidx.activity:activity:1.10.0, androidx.activity:activity-compose:1.10.0, और androidx.activity:activity-ktx:1.10.0 रिलीज़ किए जाते हैं. वर्शन 1.10.0 में ये बदलाव शामिल हैं.
1.9.0 के बाद हुए अहम बदलाव
PhotoPickerअब इमेज को क्रम से चुनने और यह चुनने की अनुमति देता है कि शुरुआत में कौनसी टैब (एल्बम या इमेज) दिखनी चाहिए.PickVisualMediaऔरPickMultipleVisualMediaगतिविधि के नतीजे वाले ऐसे अनुबंध जो फ़ोटो पिकर को ट्रिगर करते हैं वे अब सीधे तौर पर Google Play services को नहीं सौंपे जाते. ऐसा तब होता है, जब सिस्टम फ़ोटो पिकर उपलब्ध न हो. हालांकि, ये अनुबंध सार्वजनिकACTION_SYSTEM_FALLBACK_PICK_IMAGESकार्रवाई और उससे जुड़े अतिरिक्त आइटम का इस्तेमाल करते हैं, ताकि ओईएम और सिस्टम ऐप्लिकेशन को फ़ोटो पिकर का एक जैसा अनुभव मिल सके.- नया
LocalActivityकंपोज़िशन लोकल, जो मौजूदा स्कोप के लिएActivityउपलब्ध कराता है. इससे डेवलपर कोLocalContextसेActivityपाने की ज़रूरत नहीं पड़ती.
वर्शन 1.10.0-rc01
11 दिसंबर, 2024
androidx.activity:activity:1.10.0-rc01, androidx.activity:activity-compose:1.10.0-rc01, और androidx.activity:activity-ktx:1.10.0-rc01 रिलीज़ किए जाते हैं. वर्शन 1.10.0-rc01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक कर दिया गया है जिसमें
PredictiveBackHandlerके चालू रहने के दौरान, चालू स्थिति को बदलने पर कॉलबैक तुरंत शॉर्ट सर्किट हो जाता था. अब यह चालू किए गए स्टेटस में बदलावों के बावजूद, मौजूदा कॉलबैक को पूरा करेगा. (Ib8719)
वर्शन 1.10.0-beta01
13 नवंबर, 2024
androidx.activity:activity:1.10.0-beta01, androidx.activity:activity-compose:1.10.0-beta01, और androidx.activity:activity-ktx:1.10.0-beta01 को पिछले ऐल्फ़ा वर्शन के बाद से बिना किसी बदलाव के रिलीज़ किया गया है. वर्शन 1.10.0-beta01 में ये बदलाव शामिल हैं.
वर्शन 1.10.0-alpha03
30 अक्टूबर, 2024
androidx.activity:activity:1.10.0-alpha03, androidx.activity:activity-compose:1.10.0-alpha03, और androidx.activity:activity-ktx:1.10.0-alpha03 रिलीज़ किए जाते हैं. वर्शन 1.10.0-alpha03 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- एक नई
LocalActivityकंपोज़िशन लोकल जोड़ी गई है. यह मौजूदा स्कोप के लिएActivityउपलब्ध कराती है. इससे डेवलपर कोLocalContextसेActivityपाने की ज़रूरत नहीं पड़ती. इसमें एक नया लिंट नियम भी शामिल है. यह नियम तब काम करता है, जबLocalContextको गलत तरीके सेActivityमें कास्ट किया जा रहा हो. (I7746a, b/283009666)
गड़बड़ियां ठीक की गईं
- गतिविधि
1.9.3से: हैंडलर बंद होने के बाद,PredictiveBackHandlerअब कॉलबैक ट्रिगर नहीं करेगा. इससे उस समस्या को ठीक किया जा सकेगा जिसमें Navigation Compose सेNavHost,IndexOutOfBoundsExceptionदिखाता था. (I3f75e, b/365027664, b/340202286)
डिपेंडेंसी अपडेट
- Activity Compose अब Compose Runtime 1.7.0 (I7746a, b/283009666) पर निर्भर करता है
वर्शन 1.10.0-alpha02
4 सितंबर, 2024
androidx.activity:activity:1.10.0-alpha02, androidx.activity:activity-compose:1.10.0-alpha02, और androidx.activity:activity-ktx:1.10.0-alpha02 रिलीज़ किए जाते हैं. वर्शन 1.10.0-alpha02 में ये बदलाव शामिल हैं.
व्यवहार में बदलाव
PickVisualMediaऔरPickMultipleVisualMediaगतिविधि के नतीजे वाले ऐसे अनुबंध जो फ़ोटो पिकर को ट्रिगर करते हैं वे अब सीधे तौर पर Google Play services को नहीं सौंपे जाते. ऐसा तब होता है, जब सिस्टम फ़ोटो पिकर उपलब्ध न हो. हालांकि, ये अनुबंध सार्वजनिकACTION_SYSTEM_FALLBACK_PICK_IMAGESकार्रवाई और उससे जुड़े अतिरिक्त आइटम का इस्तेमाल करते हैं, ताकि ओईएम और सिस्टम ऐप्लिकेशन को फ़ोटो पिकर का एक जैसा अनुभव मिल सके. इससे उन डिवाइसों पर उपयोगकर्ता अनुभव पर कोई असर नहीं पड़ेगा जिन पर Google Play services का नया वर्शन है. (I3513d)
गड़बड़ियां ठीक की गईं
- नए प्लैटफ़ॉर्म एपीआई को ऐक्सेस करने के लिए, मैन्युअल तरीके से आउटलाइन बनाने की सुविधा हटा दी गई है. ऐसा इसलिए, क्योंकि AGP 7.3 या इसके बाद के वर्शन (जैसे, R8 वर्शन 3.3) के साथ R8 का इस्तेमाल करने पर, एपीआई मॉडलिंग के ज़रिए यह काम अपने-आप हो जाता है. साथ ही, AGP 8.1 या इसके बाद के वर्शन (जैसे, D8 वर्शन 8.1) का इस्तेमाल करने पर, सभी बिल्ड के लिए यह काम अपने-आप हो जाता है. AGP का इस्तेमाल न करने वाले क्लाइंट को D8 के 8.1 या उसके बाद के वर्शन पर अपडेट करने का सुझाव दिया जाता है. ज़्यादा जानकारी के लिए यह लेख देखें. (I9496c, b/345472586)
- गतिविधि
1.9.2: इस समस्या को ठीक किया गया है. इसमें Activity ComposePredictiveBackHandlerAPI, उस फ़्रेम पर सिस्टम के बैक जेस्चर को हैंडल करता रहता था जिस पर इसे बंद कर दिया गया था. इससे Navigation Compose जैसी लाइब्रेरी, बैक स्टैक खाली होने पर भी बैक जेस्चर को हैंडल कर सकती थीं. इस वजह से,IndexOutOfBoundsExceptionदिखता था. (Ie3301, b/340202286) - गतिविधि
1.9.1:PredictiveBackHandlerसे जुड़ी समस्या को ठीक किया गया है. इस समस्या में, सिस्टम बैक करने के बादOnBackPressedDispatcherसेonBackPressedकरने की कोशिश करने पर, ऐसा नहीं हो पाता था. (I5f1f8)
वर्शन 1.10.0-alpha01
26 जून, 2024
androidx.activity:activity:1.10.0-alpha01, androidx.activity:activity-compose:1.10.0-alpha01, और androidx.activity:activity-ktx:1.10.0-alpha01 रिलीज़ किए जाते हैं. इस वर्शन को इंटरनल ब्रांच में डेवलप किया गया है.
नई सुविधाएं
- Android V में जोड़ी गई नई
PhotoPickerसुविधाओं के लिए सहायता जोड़ी गई है. इनमें, क्रम से इमेज चुनने और यह चुनने की सुविधा शामिल है कि शुरुआत में कौनसी टैब (एल्बम या इमेज) दिखनी चाहिए.
वर्शन 1.9
वर्शन 1.9.3
16 अक्टूबर, 2024
androidx.activity:activity:1.9.3, androidx.activity:activity-compose:1.9.3, और androidx.activity:activity-ktx:1.9.3 रिलीज़ किए जाते हैं. वर्शन 1.9.3 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- हैंडलर के बंद होने के बाद,
PredictiveBackHandlerअब कॉलबैक को ट्रिगर नहीं करेगा. इससे उस समस्या को ठीक किया जा सकेगा जिसमें Navigation Compose सेNavHost,IndexOutOfBoundsExceptionदिखाता था. (I3f75e, b/340202286)
वर्शन 1.9.2
4 सितंबर, 2024
androidx.activity:activity:1.9.2, androidx.activity:activity-compose:1.9.2, और androidx.activity:activity-ktx:1.9.2 रिलीज़ किए जाते हैं. वर्शन 1.9.2 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें Activity Compose
PredictiveBackHandlerAPI, उस फ़्रेम पर सिस्टम के बैक जेस्चर को हैंडल करता रहता था जिस पर इसे बंद कर दिया गया था. इससे Navigation Compose जैसी लाइब्रेरी, बैक स्टैक खाली होने पर भी बैक जेस्चर को हैंडल कर सकती हैं. इससेIndexOutOfBoundsExceptionदिखता है. (Ie3301, b/340202286)
वर्शन 1.9.1
24 जुलाई, 2024
androidx.activity:activity:1.9.1, androidx.activity:activity-compose:1.9.1, और androidx.activity:activity-ktx:1.9.1 रिलीज़ किए जाते हैं. वर्शन 1.9.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
PredictiveBackHandlerसे जुड़ी समस्या को ठीक किया गया है. इस समस्या में, सिस्टम बैक करने के बादOnBackPressedDispatcherसेonBackPressedकरने की कोशिश करने पर, ऐसा नहीं हो पाता था. (I5f1f8)
वर्शन 1.9.0
17 अप्रैल, 2024
androidx.activity:activity:1.9.0, androidx.activity:activity-compose:1.9.0, और androidx.activity:activity-ktx:1.9.0 रिलीज़ किए जाते हैं. वर्शन 1.9.0 में ये बदलाव शामिल हैं.
1.8.0 के बाद हुए ज़रूरी बदलाव
ComponentActivityअबOnUserLeaveHintProviderको लागू करता है, ताकि कॉम्पोनेंटonUserLeaveHintइवेंट के लिए कॉलबैक कर सकें.OnBackPressedCallback,BackHandler, औरPredictiveBackHandlerएपीआई अबonBackPressedDispatcher.onBackPressed()को कॉल करने पर चेतावनी देते हैं. ऐसा इसलिए, क्योंकि इससे हमेशा प्रिडिक्टिव बैक ऐनिमेशन काम नहीं करेगा. ज़्यादा जानकारी के लिए, सबसे सही तरीके बताने वाली गाइड देखें.- गतिविधि से जुड़े बाकी एपीआई को Kotlin में फिर से लिखा गया है. साथ ही,
activity-ktxमें पहले से उपलब्ध सभी एक्सटेंशन कोactivityमें ट्रांसफ़र कर दिया गया है.activity-ktxअब पूरी तरह से खाली है.ActivityResultLauncherको Kotlin में बदलने के दौरान,getContractतरीके को अब एक ऐब्स्ट्रैक्ट Kotlin प्रॉपर्टी बना दिया गया है. यह बाइनरी के साथ काम करने वाला बदलाव है. हालांकि, अगरActivityResultLauncherको Kotlin में लागू किया गया है, तो यह सोर्स के साथ काम नहीं करेगा.
वर्शन 1.9.0-rc01
3 अप्रैल, 2024
androidx.activity:activity:1.9.0-rc01, androidx.activity:activity-compose:1.9.0-rc01, और androidx.activity:activity-ktx:1.9.0-rc01 रिलीज़ किए जाते हैं. वर्शन 1.9.0-rc01 में ये बदलाव शामिल हैं.
डिपेंडेंसी अपडेट
- अब ऐक्टिविटी, Profile Installer 1.3.1 पर निर्भर करती है.
वर्शन 1.9.0-beta01
20 मार्च, 2024
androidx.activity:activity:1.9.0-beta01, androidx.activity:activity-compose:1.9.0-beta01, और androidx.activity:activity-ktx:1.9.0-beta01 रिलीज़ किए जाते हैं. वर्शन 1.9.0-beta01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- ऐक्टिविटी शुरू होने की परफ़ॉर्मेंस में हुई गिरावट को ठीक किया गया है. यह गिरावट, ऐक्टिविटी
1.9.0-alpha02में हुई थी. इसकी वजह, ऐक्टिविटी बनाते समयOnBackPressedDispatcherको कॉल करना था. (Ie75e3)
वर्शन 1.9.0-alpha03
7 फ़रवरी, 2024
androidx.activity:activity:1.9.0-alpha03, androidx.activity:activity-compose:1.9.0-alpha03, और androidx.activity:activity-ktx:1.9.0-alpha03 रिलीज़ किए जाते हैं. वर्शन 1.9.0-alpha03 में ये बदलाव शामिल हैं.
लिंट की चेतावनी
OnBackPressedCallback,BackHandler, औरPredictiveBackHandlerएपीआई अबonBackPressedDispatcher.onBackPressed()को कॉल करने पर चेतावनी देते हैं. ऐसा इसलिए, क्योंकि इससे हमेशा प्रिडिक्टिव बैक ऐनिमेशन काम नहीं करेगा. ज़्यादा जानकारी के लिए, सबसे सही तरीके बताने वाली गाइड देखें. (1e4222, 2c950d, b/287505200)
गड़बड़ियां ठीक की गईं
- अगर पहले से चल रहे अनुमानित बैक जेस्चर के दौरान, सिस्टम से कोई बैक इवेंट भेजा जाता है, तो मौजूदा अनुमानित बैक जेस्चर रद्द हो जाता है. इसके बाद, नया बैक इवेंट, अनुमानित बैक जेस्चर शुरू करने के लिए काम करता है. (I3482e)
- बैकग्राउंड थ्रेड से पहली बार
ComponentActivityसेonBackPressedDispatcherको ऐक्सेस करने पर होने वाली क्रैश की समस्या को ठीक किया गया है. अब किसी भी थ्रेड परonBackPressedDispatcherको ऐक्सेस करना सुरक्षित है. (I79955)
वर्शन 1.9.0-alpha02
24 जनवरी, 2024
androidx.activity:activity:1.9.0-alpha02, androidx.activity:activity-compose:1.9.0-alpha02, और androidx.activity:activity-ktx:1.9.0-alpha02 रिलीज़ किए जाते हैं. वर्शन 1.9.0-alpha02 में ये बदलाव शामिल हैं.
Kotlin कन्वर्ज़न
ActivityResultRegistryको Kotlin में फिर से लिखा गया है. इससे यह पक्का होता है किregisterको भेजे गए अनुबंध में मौजूद सामान्य टाइप के लिए, शून्य हो सकने की स्थिति की जानकारी, आपको वापस भेजे गएActivityResultLauncherमें सही तरीके से भेजी जाएगी. (I121f0)ActivityResultको Kotlin में फिर से लिखा गया है.ActivityResultKotlin एक्सटेंशन,resultCodeऔरdataफ़ील्ड में डिस्ट्रक्चरिंग की सुविधा देते हैं. इन्हेंactivity-ktxसेactivityमें ले जाया गया है. (I0565a)ComponentActivityऔरtrackPipAnimationHintViewके लिए,by viewModels()के Kotlin एक्सटेंशन कोactivity-ktxसेactivityमें ले जाया गया है.activity-ktxआर्टफ़ैक्ट अब पूरी तरह से खाली है. (I0a444)
गड़बड़ियां ठीक की गईं
enableEdgeToEdgeएपीआई अब डिसप्ले कटआउट के चारों ओर ड्रॉ करता है. (a3644b, b/311173461)- गतिविधि
1.8.2: Photo Picker Activity Contract केACTION_SYSTEM_FALLBACK_PICK_IMAGESको पास किए गए अतिरिक्त डेटा को ठीक किया गया है, ताकि"com.google.android.gms.provider.extra.PICK_IMAGES_MAX"कुंजी के साथ अतिरिक्त डेटा का इस्तेमाल करने के बजाय, इसेEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAXकुंजी को सही तरीके से पास किया जा सके. अगर आप एक ऐसे ओईएम हैं जो दोनों एक्सट्रा को सपोर्ट करने के लिए, सिस्टम फ़ॉलबैक फ़ोटो पिकर को लागू करता है, तो हमारा सुझाव है कि आप इस सुविधा का इस्तेमाल करें. इससे यह पक्का किया जा सकेगा कि आपका ऐप्लिकेशन ज़्यादा से ज़्यादा डिवाइसों के साथ काम करे. (I96a00)
वर्शन 1.9.0-alpha01
29 नवंबर, 2023
androidx.activity:activity:1.9.0-alpha01, androidx.activity:activity-compose:1.9.0-alpha01, और androidx.activity:activity-ktx:1.9.0-alpha01 रिलीज़ किए जाते हैं. वर्शन 1.9.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
ComponentActivityअबOnUserLeaveHintProviderको लागू करता है, ताकि कॉम्पोनेंटonUserLeaveHintइवेंट के लिए कॉलबैक कर सकें. (I54892)
एपीआई में हुए बदलाव
ComponentActivityको Kotlin में फिर से लिखा गया है. (I14f31)ActivityResultCallerको Kotlin में फिर से लिखा गया है. (Ib02e4)ActivityResultLauncherको Kotlin में फिर से लिखा गया है. इस कन्वर्ज़न के तहत,getContractतरीका अब एक ऐब्स्ट्रैक्ट Kotlin प्रॉपर्टी है. यह बाइनरी के साथ काम करने वाला बदलाव है. हालांकि, अगरActivityResultLauncherको Kotlin में लागू किया गया है, तो यह सोर्स के साथ काम नहीं करेगा. (Id4615)PickVisualMediaRequestका कम से कम एपीआई लेवल अब 19 है. यहPickVisualMediaActivity Result contract के बराबर है. (Id6e21)
डिपेंडेंसी अपडेट
- अब ऐक्टिविटी, कोर
1.13.0-alpha01पर निर्भर करती है. (I14f31)
वर्शन 1.8
वर्शन 1.8.2
13 दिसंबर, 2023
androidx.activity:activity:1.8.2, androidx.activity:activity-compose:1.8.2, और androidx.activity:activity-ktx:1.8.2 रिलीज़ किए जाते हैं. वर्शन 1.8.2 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- फ़ोटो पिकर ऐक्टिविटी कॉन्ट्रैक्ट के
ACTION_SYSTEM_FALLBACK_PICK_IMAGESको पास किए गए अतिरिक्त डेटा को ठीक किया गया है, ताकि"com.google.android.gms.provider.extra.PICK_IMAGES_MAX"कुंजी के साथ अतिरिक्त डेटा का इस्तेमाल करने के बजाय,ACTION_SYSTEM_FALLBACK_PICK_IMAGESकुंजी को सही तरीके से पास किया जा सके.EXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAXअगर आप एक ऐसे ओईएम हैं जो दोनों एक्सट्रा को सपोर्ट करने के लिए, सिस्टम फ़ॉलबैक फ़ोटो पिकर को लागू करता है, तो हमारा सुझाव है कि आप इस सुविधा का इस्तेमाल करें. इससे यह पक्का किया जा सकेगा कि आपका ऐप्लिकेशन ज़्यादा से ज़्यादा डिवाइसों के साथ काम करे. (I96a00)
वर्शन 1.8.1
15 नवंबर, 2023
androidx.activity:activity:1.8.1, androidx.activity:activity-compose:1.8.1, और androidx.activity:activity-ktx:1.8.1 रिलीज़ किए जाते हैं. वर्शन 1.8.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- अब बैक जेस्चर का इस्तेमाल करते समय नया
OnBackPressedCallbackजोड़ने पर भी,OnBackPressedDispatcherसहीOnBackPressedCallbackपर भेजता रहता है. (Id0ff6)
वर्शन 1.8.0
4 अक्टूबर, 2023
androidx.activity:activity:1.8.0, androidx.activity:activity-compose:1.8.0, और androidx.activity:activity-ktx:1.8.0 रिलीज़ किए जाते हैं. वर्शन 1.8.0 में ये बदलाव शामिल हैं.
1.7.0 के बाद हुए ज़रूरी बदलाव
- पीछे जाने पर झलक दिखाने की सुविधा -
OnBackPressedCallbackअब पीछे जाने के जेस्चर को हैंडल करने के लिए, पीछे जाने पर झलक दिखाने की सुविधा वाले नए कॉलबैक उपलब्ध कराता है. इनमें जेस्चर शुरू होने, जेस्चर के दौरान प्रोग्रेस होने, और जेस्चर के रद्द होने के साथ-साथ, पीछे जाने के जेस्चर के पूरा होने पर मिलने वाला पिछलाhandleOnBackPressed()कॉलबैक भी शामिल है. इसमेंPredictiveBackHandlerComposable भी शामिल है, ताकि Activity Compose में बैक जेस्चर के अनुमानित इवेंट को मैनेज किया जा सके. यह BackEventCompat ऑब्जेक्ट का फ़्लो देता है. इसे आपको दिए गए सस्पेंडिंग लैंबडा में इकट्ठा करना होगा:
PredictiveBackHandler { progress: Flow<BackEventCompat> ->
// code for gesture back started
try {
progress.collect { backEvent ->
// code for progress
}
// code for completion
} catch (e: CancellationException) {
// code for cancellation
}
}
ComponentActivity.onBackPressed() को अब बंद कर दिया गया है. इसकी जगह, वापस जाने की सुविधा को मैनेज करने वाले एपीआई का इस्तेमाल किया जा सकता है. डेवलपर को अब इस तरीके को ओवरराइड करने के बजाय, OnBackPressedDispatcher का इस्तेमाल करना चाहिए.
- EdgeToEdge -
ComponentActivity.enableEdgeToEdge()को जोड़ा गया है, ताकि पुराने सिस्टम के साथ काम करने वाले तरीके से एज-टू-एज डिसप्ले को आसानी से सेट अप किया जा सके.
वर्शन 1.8.0-rc01
20 सितंबर, 2023
androidx.activity:activity:1.8.0-rc01, androidx.activity:activity-compose:1.8.0-rc01, और androidx.activity:activity-ktx:1.8.0-rc01 रिलीज़ किए जाते हैं. वर्शन 1.8.0-rc01 में ये बदलाव शामिल हैं.
वर्शन 1.8.0-beta01
6 सितंबर, 2023
androidx.activity:activity:1.8.0-beta01, androidx.activity:activity-compose:1.8.0-beta01, और androidx.activity:activity-ktx:1.8.0-beta01 रिलीज़ किए जाते हैं. वर्शन 1.8.0-beta01 में ये बदलाव शामिल हैं.
दस्तावेज़ में सुधार
BackEventCompatके दस्तावेज़ को बेहतर बनाया गया है. (aosp/2722254)
वर्शन 1.8.0-alpha07
23 अगस्त, 2023
androidx.activity:activity:1.8.0-alpha07, androidx.activity:activity-compose:1.8.0-alpha07, और androidx.activity:activity-ktx:1.8.0-alpha07 रिलीज़ किए जाते हैं. वर्शन 1.8.0-alpha07 में ये बदलाव शामिल हैं.
नई सुविधाएं
Activity Compose में, अनुमानित बैक जेस्चर इवेंट को मैनेज करने के लिए नया
PredictiveBackHandlerComposable जोड़ा गया है. यहBackEventCompatऑब्जेक्ट काFlowदेता है. इन्हें आपको दिए गए सस्पेंडिंग लैम्डा में इकट्ठा करना होगा:PredictiveBackHandler { progress: Flow<BackEventCompat> -> // code for gesture back started try { progress.collect { backEvent -> // code for progress } // code for completion } catch (e: CancellationException) { // code for cancellation } }इसमें कंपाइल टाइम की चेतावनी भी मिलती है. यह चेतावनी, लिंट के नियम के ज़रिए मिलती है. इससे यह पक्का किया जाता है कि
Flowकॉलcollect(). (Id2773, b/294884345)onBackPressedDispatcherमें मौजूदonBackPressedDispatcherको अब लेज़ी तरीके से शुरू किया जाता है, ताकि इसे सिर्फ़ तब बनाया जाए, जब इसकी ज़रूरत हो.ComponentActivity(I0bf8e)
गड़बड़ियां ठीक की गईं
ComponentActivityको Android 13 पर,onBackPressed()कॉलबैक मिलने पर अब NPE नहीं दिखेगा. ऐसा तब होगा, जब गतिविधि पहले हीDESTROYEDहो चुकी हो. (Idb055, b/291869278)- एक्सपेरिमेंट के तौर पर उपलब्ध
isAtLeastU()API (Ie9117, b/289269026) के इस्तेमाल को हटाया गया
वर्शन 1.8.0-alpha06
21 जून, 2023
androidx.activity:activity:1.8.0-alpha06, androidx.activity:activity-compose:1.8.0-alpha06, और androidx.activity:activity-ktx:1.8.0-alpha06 रिलीज़ किए जाते हैं. वर्शन 1.8.0-alpha06 में ये बदलाव शामिल हैं.
नई सुविधाएं
OnBackPressedDispatcherअब अनुमानित बैक जेस्चर के दौरान हटाए गए सभी कॉलबैक को सही तरीके से रद्द करता है. (I3f90f)
एपीआई में हुए बदलाव
enableEdgeToEdgeएपीआई कोSystemBarStyle.autoपास करते समय, अबdetectDarkModeलैम्डा पैरामीटर को बदला जा सकता है. इससे नाइट मोड का पता लगाने के लिए, कस्टम लॉजिक दिया जा सकता है. (aosp/2546393, b/278263793)
वर्शन 1.8.0-alpha05
7 जून, 2023
androidx.activity:activity:1.8.0-alpha05, androidx.activity:activity-compose:1.8.0-alpha05, और androidx.activity:activity-ktx:1.8.0-alpha05 रिलीज़ किए जाते हैं. इस वर्शन को इंटरनल ब्रांच में डेवलप किया गया है.
एपीआई में हुए बदलाव
- Activity अब
BackEventCompatक्लास उपलब्ध कराती है. यहBackEventका ऐसा वर्शन है जो पुराने सिस्टम के साथ काम करता है. इसे फ़्रेमवर्कBackEventक्लास से अलग किया गया है. - बदलाव:
OnBackPressedCallbackकेhandleOnBackStartedऔरhandleOnBackProgressedतरीकों को अब फ़्रेमवर्कandroid.window.BackEventक्लास के बजायandroidx.activity.BackEventCompatइंस्टेंस मिलता है.@VisibleForTestingपर मौजूद@VisibleForTestingएपीआई को भी अपडेट कर दिया गया है.OnBackPressedDispatcher OnBackPressedDispatcherके कंस्ट्रक्टर में अब एक वैकल्पिकConsumer<Boolean>इंस्टेंस होता है. इससे डिस्पैचर के मालिकों को कॉलबैक मिलता है. ऐसा तब होता है, जब चालू किए गए कॉलबैक की संख्या शून्य से बदलकर कोई अन्य संख्या हो जाती है या इसके उलट होता है.
गड़बड़ियां ठीक की गईं
- गतिविधि
1.7.2से:reportको कॉल किए जाने से पहले, किसी स्क्रीन से नेविगेट करने परReportDrawnक्रैश होने की समस्या ठीक की गई. (Ic46f1, b/260506820)
वर्शन 1.8.0-alpha04
10 मई, 2023
androidx.activity:activity:1.8.0-alpha04, androidx.activity:activity-compose:1.8.0-alpha04, और androidx.activity:activity-ktx:1.8.0-alpha04 रिलीज़ किए जाते हैं. इसे इंटरनल ब्रांच से रिलीज़ किया गया था.
गड़बड़ियां ठीक की गईं
- गतिविधि 1.7.1: -
ActivityScenarioके साथComponentActivityका इस्तेमाल करने पर, अबReportFullyDrawExecuterलीक नहीं होता. (Id2ff2, b/277434271)
वर्शन 1.8.0-alpha03
12 अप्रैल, 2023
androidx.activity:activity:1.8.0-alpha03, androidx.activity:activity-compose:1.8.0-alpha03, और androidx.activity:activity-ktx:1.8.0-alpha03 रिलीज़ किए जाते हैं. इसे इंटरनल ब्रांच से रिलीज़ किया गया था.
नई सुविधाएं
ComponentActivity.setUpEdgeToEdge()जोड़ा गया है, ताकि पुराने सिस्टम के साथ काम करने की सुविधा के साथ, एज-टू-एज डिसप्ले को आसानी से सेट अप किया जा सके.
एपीआई में हुए बदलाव
ComponentActivity.onBackPressed()को अब बैक बटन को मैनेज करने वाले एपीआई के पक्ष में बंद कर दिया गया है. डेवलपर को अब इस तरीके को ओवरराइड करने के बजाय,OnBackPressedDispatcherका इस्तेमाल करना चाहिए. (Ibce2f, b/271596918)ComponentDialogऔरComponentActivityमें अब सार्वजनिक एपीआईinitViewTreeOwners()शामिल है. इसका इस्तेमाल, कॉन्टेंट व्यू सेट करने से पहले सभी व्यू ट्री के मालिकों को शुरू करने के लिए किया जाता है. (Ibdce0, b/261314581)
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें फ़्रैगमेंट, MenuHost को गलत तरीके से अमान्य कर रहे थे. साथ ही, इसकी वजह से गतिविधि में मौजूद अन्य मेन्यू में अनचाहा व्यवहार हो रहा था. (I9404e, b/244336571)
अन्य बदलाव
ActivityResultRegisterअब Java के बजाय KotlinRandomका इस्तेमाल करता है. (I4d98f, b/272096025)
वर्शन 1.8.0-alpha02
8 मार्च, 2023
androidx.activity:activity:1.8.0-alpha02, androidx.activity:activity-compose:1.8.0-alpha02, और androidx.activity:activity-ktx:1.8.0-alpha02 रिलीज़ किए जाते हैं. इसे किसी इंटरनल ब्रांच से बनाया गया है.
डिपेंडेंसी अपडेट
- ऐक्टिविटी
1.7.0-rc01से: अब ऐक्टिविटीLifecycle 2.6.0पर निर्भर है.
वर्शन 1.8.0-alpha01
8 फ़रवरी, 2023
androidx.activity:activity:1.8.0-alpha01, androidx.activity:activity-compose:1.8.0-alpha01, और androidx.activity:activity-ktx:1.8.0-alpha01 रिलीज़ किए जाते हैं. इसे किसी इंटरनल ब्रांच से बनाया गया था.
नई सुविधाएं
OnBackPressedCallbackक्लास में अब पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर की प्रोग्रेस के लिए नए कॉलबैक शामिल हैं. इनकी मदद से, पीछे जाने के जेस्चर को शुरू किया जा सकता है, जेस्चर की प्रोग्रेस को मैनेज किया जा सकता है, और पीछे जाने के जेस्चर को रद्द किया जा सकता है. इसके अलावा, इसमें पीछे जाने के जेस्चर के लिए पिछलाhandleOnBackPressed()कॉलबैक भी शामिल है.
वर्शन 1.7
वर्शन 1.7.2
24 मई, 2023
androidx.activity:activity:1.7.2, androidx.activity:activity-compose:1.7.2, और androidx.activity:activity-ktx:1.7.2 रिलीज़ किए जाते हैं. वर्शन 1.7.2 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
reportको कॉल करने से पहले, स्क्रीन से बाहर निकलने परReportDrawnके क्रैश होने की समस्या ठीक की गई. (Ic46f1, b/260506820)
वर्शन 1.7.1
19 अप्रैल, 2023
androidx.activity:activity:1.7.1, androidx.activity:activity-compose:1.7.1, और androidx.activity:activity-ktx:1.7.1 रिलीज़ किए जाते हैं. वर्शन 1.7.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
ActivityScenarioके साथComponentActivityका इस्तेमाल करने पर, अबReportFullyDrawExecuterलीक नहीं होता. (Id2ff2, b/277434271)
वर्शन 1.7.0
22 मार्च, 2023
androidx.activity:activity:1.7.0, androidx.activity:activity-compose:1.7.0, और androidx.activity:activity-ktx:1.7.0 रिलीज़ किए जाते हैं. वर्शन 1.7.0 में ये बदलाव शामिल हैं.
1.6.0 के बाद हुए अहम बदलाव
PickVisualMediaऔरPickMultipleVisualMediaमें फ़ोटो पिकर ऐक्टिविटी कॉन्ट्रैक्ट को अपडेट किया गया है. इससेMediaStore.ACTION_PICK_IMAGESके उपलब्ध न होने पर, फ़ोटो पिकर का एक और फ़ॉलबैक उपलब्ध होगा. इससे ओईएम और Google Play services जैसे सिस्टम ऐप्लिकेशन, फ़ॉलबैक ऐक्शन लागू करके, Android डिवाइसों और एपीआई लेवल की ज़्यादा रेंज पर फ़ोटो पिकर का एक जैसा अनुभव दे पाएंगे. अगर यह फ़ॉलबैक उपलब्ध है, तो फ़ोटो पिकर इसका इस्तेमाल करेगा. इसके बाद,Intent.ACTION_OPEN_DOCUMENTका इस्तेमाल किया जाएगा.Intent.ACTION_OPEN_DOCUMENT, एपीआई 19 और उसके बाद के वर्शन वाले सभी डिवाइसों के साथ काम करता है.ComponentDialogअबSavedStateRegistryOwnerको लागू करता है और उसके पास अपनेSavedStateRegistryका ऐक्सेस होता है. साथ ही, वह अपनेViewTreeके लिएSavedStateRegistryOwnerसेट करता है. अबComponentDialogमें Jetpack Compose का इस्तेमाल किया जा सकता है, क्योंकि यहViewTreeएपीआई की ज़रूरी शर्तों के ज़रिए Window से जुड़ेLifecycleOwnerऔरSavedStateRegistryOwner, दोनों को पूरा करता है.IntentSenderRequest.Builder.setFlags()अब आपको सिर्फ़ एक फ़्लैग के बजाय,Intentसे कई फ़्लैग सेट करने की सुविधा देता है.
Kotlin कन्वर्ज़न
गतिविधि की कई क्लास को Kotlin में बदल दिया गया है. बदली गई सभी क्लास, पिछले वर्शन के साथ बाइनरी कंपैटिबिलिटी बनाए रखती हैं. Kotlin में लागू की गई क्लास के लिए, यहां दी गई क्लास में सोर्स के साथ काम न करने वाले बदलाव किए गए हैं: ActivityResultRegistryOwner, OnBackPressedDispatcherOwner.
नीचे दी गई टेबल में, Activity के नए वर्शन के लिए सोर्स कन्वर्ज़न की जानकारी दी गई है:
| गतिविधि 1.5 | गतिविधि 1.6 |
|---|---|
override fun getActivityResultRegistry() = activityResultRegistry |
override val activityResultRegistry = activityResultRegistry |
override fun getOnBackPressedDispatcher() = onBackPressedDispatcher |
override val onBackPressedDispatcher = onBackPressedDispatcher |
इन क्लास को भी Kotlin में बदल दिया गया है, लेकिन ये सोर्स के साथ काम करती हैं: ContextAware, ContextAwareHelper, OnContextAvailableListener, IntentSenderRequest, और OnBackPressedDispatcher
FullyDrawnReporter API
ComponentActivity अब FullyDrawnReporter इंस्टेंस उपलब्ध कराता है. इससे कई कॉम्पोनेंट, इंटरैक्शन के लिए तैयार होने पर रिपोर्ट कर सकते हैं. ComponentActivity, सभी कॉम्पोनेंट के पूरा होने का इंतज़ार करेगा. इसके बाद, वह आपकी ओर से reportFullyDrawn() को कॉल करेगा. ये एपीआई, समय से जुड़ी ज़रूरी शर्तों का ध्यान रखते हैं. इसलिए, इन्हें onDraw कॉल के हिस्से के तौर पर कॉल करने की ज़रूरत नहीं होती.
इन एपीआई को चालू करने का सुझाव दिया जाता है:
- स्टार्टअप पूरा होने पर Android Runtime को सूचना देना, ताकि यह पक्का किया जा सके कि मल्टी-फ़्रेम स्टार्टअप सीक्वेंस के दौरान चलने वाला सारा कोड शामिल हो और बैकग्राउंड कंपाइलेशन के लिए उसे प्राथमिकता दी जाए.
- सिग्नलिंग मैक्रोबेंचमार्क और Play Vitals, जब आपके ऐप्लिकेशन को स्टार्टअप मेट्रिक के लिए पूरी तरह से ड्रॉ किया जाना चाहिए, ताकि परफ़ॉर्मेंस को ट्रैक किया जा सके.
FullyDrawnReporter को अलग-अलग कंपोज़ेबल से इस्तेमाल करना ज़्यादा आसान बनाने के लिए, तीन Activity Compose API जोड़े गए हैं:
ReportDrawnसे पता चलता है कि आपका कंपोज़ेबल, इंटरैक्शन के लिए तुरंत तैयार है.ReportDrawnWhenएक प्रेडिकेट लेता है (यानी,list.count > 0) का इस्तेमाल करें. इससे यह पता चलता है कि आपका कंपोज़ेबल, इंटरैक्शन के लिए कब तैयार है.ReportDrawnAfterएक सस्पेंडिंग तरीके का इस्तेमाल करता है. जब यह पूरा हो जाता है, तो इसका मतलब है कि अब इंटरैक्शन किया जा सकता है.
डिपेंडेंसी से जुड़े अपडेट
- अब ऐक्टिविटी, लाइफ़साइकल
2.6.1पर निर्भर करती है. (8fc31d) - अब ऐक्टिविटी, ProfileInstaller
1.3.0पर निर्भर करती है. (83d3b1)
वर्शन 1.7.0-rc01
8 मार्च, 2023
androidx.activity:activity:1.7.0-rc01, androidx.activity:activity-compose:1.7.0-rc01, और androidx.activity:activity-ktx:1.7.0-rc01 रिलीज़ किए जाते हैं. वर्शन 1.7.0-rc01 में ये बदलाव शामिल हैं.
डिपेंडेंसी अपडेट
- अब ऐक्टिविटी,
Lifecycle 2.6.0पर निर्भर करती है.
वर्शन 1.7.0-beta02
22 फ़रवरी, 2023
androidx.activity:activity:1.7.0-beta02, androidx.activity:activity-compose:1.7.0-beta02, और androidx.activity:activity-ktx:1.7.0-beta02 रिलीज़ किए जाते हैं. वर्शन 1.7.0-beta02 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
PickVisualMediaऔरPickMultipleVisualMediaके अनुबंधों में इस्तेमाल होने वाला ऐक्शन और अतिरिक्त डेटा, अब सार्वजनिक कॉन्स्टेंट है. इसका इस्तेमाल तब किया जाता है, जबMediaStore.ACTION_PICK_IMAGESउपलब्ध नहीं होता है. इससे ओईएम और सिस्टम ऐप्लिकेशन को एपीआई की स्थिरता मिलती है. ये ऐप्लिकेशन, एक जैसा फ़ोटो पिकर अनुभव देना चाहते हैं. इस फ़ॉलबैक को लागू करने की सुविधा, अब भी सिर्फ़ सिस्टम ऐप्लिकेशन के लिए उपलब्ध है. (Icd320)
वर्शन 1.7.0-beta01
8 फ़रवरी, 2023
androidx.activity:activity:1.7.0-beta01, androidx.activity:activity-compose:1.7.0-beta01, और androidx.activity:activity-ktx:1.7.0-beta01 रिलीज़ किए जाते हैं. वर्शन 1.7.0-beta01 में ये बदलाव शामिल हैं.
नई सुविधाएं
IntentSenderRequest.Builder.setFlags()अब आपको सिर्फ़ एक फ़्लैग के बजाय,Intentसे कई फ़्लैग सेट करने की सुविधा देता है. (Iac04c)
गड़बड़ियां ठीक की गईं
- फ़्रेमवर्क फ़ोटो पिकर के उपलब्ध न होने पर,
PickVisualMediaके लिए फ़ॉलबैक अब डिवाइस की सिस्टम इमेज में इंस्टॉल किए गए ऐप्लिकेशन के लिए, फ़ोटो चुनने की सुविधा को सही तरीके से सीमित करता है. (If8ae6)
Kotlin कन्वर्ज़न
ActivityResultRegistryOwnerको अब Kotlin में लिखा गया है. Kotlin में लागू की गई क्लास के लिए यह सोर्स के साथ काम न करने वाला बदलाव है. अब आपको पिछलेgetActivityResultRegistry()फ़ंक्शन को लागू करने के बजाय,activityResultRegistryप्रॉपर्टी को बदलना होगा. (I0b00e)OnBackPressedDispatcherOwnerको अब Kotlin में लिखा गया है. Kotlin में लागू की गई क्लास के लिए यह सोर्स के साथ काम न करने वाला बदलाव है. अब आपको पिछलेgetOnBackPressedDispatcherफ़ंक्शन को लागू करने के बजाय,onBackPressedDispatcherप्रॉपर्टी को बदलना होगा. (Ia277d)ContextAware,ContextAwareHelper,OnContextAvailableListener,IntentSenderRequest, औरOnBackPressedDispatcherको अब Kotlin में लिखा गया है. (I1a73e, Iada92, aosp/2410754, I18ac7, b/257291701)
वर्शन 1.7.0-alpha04
25 जनवरी, 2023
androidx.activity:activity:1.7.0-alpha04, androidx.activity:activity-compose:1.7.0-alpha04, और androidx.activity:activity-ktx:1.7.0-alpha04 रिलीज़ किए जाते हैं. वर्शन 1.7.0-alpha04 में ये बदलाव शामिल हैं.
नई सुविधाएं
PickVisualMediaऔरPickMultipleVisualMediaगतिविधि के नतीजे के अनुबंध, अब Google Play services की ओर से उपलब्ध कराए गए फ़ोटो पिकर का इस्तेमाल करेंगे. ऐसा उन मामलों में किया जाएगा जहां Android सिस्टम की ओर से उपलब्ध कराया गया फ़ोटो पिकर (जैसे,MediaStore.ACTION_PICK_IMAGES) उपलब्ध नहीं है.isPhotoPickerAvailable()एपीआई को बंद कर दिया गया है. यह एपीआई, सिर्फ़ Android सिस्टम में मौजूद फ़ोटो पिकर का पता लगाता था. हमारा सुझाव है कि आप नएisPhotoPickerAvailable(Context)एपीआई का इस्तेमाल करें. इससे यह पता चलेगा कि फ़ोटो पिकर उपलब्ध है या नहीं. (I55be6)
वर्शन 1.7.0-alpha03
11 जनवरी, 2023
androidx.activity:activity:1.7.0-alpha03, androidx.activity:activity-compose:1.7.0-alpha03, और androidx.activity:activity-ktx:1.7.0-alpha03 रिलीज़ किए जाते हैं. वर्शन 1.7.0-alpha03 में ये बदलाव शामिल हैं.
नई सुविधाएं
ComponentDialogअबSavedStateRegistryOwnerको लागू करता है और इसके पास अपनेSavedStateRegistryका ऐक्सेस होता है. साथ ही, यह अपने ViewTree के लिएSavedStateRegistryOwnerसेट करता है. अबComponentDialogमें Jetpack Compose का इस्तेमाल किया जा सकता है, क्योंकि यह ViewTree API के ज़रिए Window से अटैच किए गएLifecycleOwnerऔरSavedStateRegistryOwner, दोनों की ज़रूरी शर्तों को पूरा करता है. (Idca17, I73468 b/261162296)
एपीआई में हुए बदलाव
- एक
ReportDrawnकंपोज़ेबल जोड़ा गया है, जो गतिविधि को तुरंत 'कॉल करने के लिए तैयार'reportFullyDrawnके तौर पर मार्क करता है. (Ic5b14, b/259687964)
Kotlin कन्वर्ज़न
ActvitiyResultCallbackऔरOnBackPressedCallbackक्लास, दोनों को Kotlin में बदल दिया गया है. हालांकि, सोर्स और बाइनरी के साथ काम करने की सुविधा को बरकरार रखा गया है. (Ifc5e5, Ide1b0, b/257291701)
वर्शन 1.7.0-alpha02
24 अक्टूबर, 2022
androidx.activity:activity:1.7.0-alpha02, androidx.activity:activity-compose:1.7.0-alpha02, और androidx.activity:activity-ktx:1.7.0-alpha02 रिलीज़ किए जाते हैं. वर्शन 1.7.0-alpha02 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- गतिविधि
1.6.1:PickMultipleVisualMediaगतिविधि के नतीजे वाले अनुबंध से जुड़ी समस्या को ठीक किया गया है. इस समस्या में,maxItemsके लिए डिफ़ॉल्ट वैल्यू का इस्तेमाल करने पर, Android R डिवाइसों परPickMultipleVisualMediaगतिविधि के नतीजे वाला अनुबंध लॉन्च नहीं हो रहा था. (Ie2776, b/249182130)
वर्शन 1.7.0-alpha01
5 अक्टूबर, 2022
androidx.activity:activity:1.7.0-alpha01, androidx.activity:activity-compose:1.7.0-alpha01, और androidx.activity:activity-ktx:1.7.0-alpha01 रिलीज़ किए जाते हैं. वर्शन 1.7.0-alpha01 में ये बदलाव शामिल हैं.
FullyDrawnReporter API
ComponentActivity अब FullyDrawnReporter इंस्टेंस उपलब्ध कराता है. इससे कई कॉम्पोनेंट, इंटरैक्शन के लिए तैयार होने पर रिपोर्ट कर सकते हैं. ComponentActivity, सभी कॉम्पोनेंट के पूरा होने का इंतज़ार करेगा. इसके बाद, वह आपकी ओर से reportFullyDrawn() को कॉल करेगा. ये एपीआई, समय से जुड़ी ज़रूरी शर्तों का ध्यान रखते हैं. इसलिए, इन्हें onDraw कॉल के हिस्से के तौर पर कॉल करने की ज़रूरत नहीं होती.
इन एपीआई को चालू करने का सुझाव दिया जाता है:
- स्टार्टअप पूरा होने पर Android Runtime को सूचना देना, ताकि यह पक्का किया जा सके कि मल्टी-फ़्रेम स्टार्टअप सीक्वेंस के दौरान चलने वाला सारा कोड शामिल हो और बैकग्राउंड कंपाइलेशन के लिए उसे प्राथमिकता दी जाए.
- सिग्नलिंग मैक्रोबेंचमार्क और Play Vitals, जब आपके ऐप्लिकेशन को स्टार्टअप मेट्रिक के लिए पूरी तरह से ड्रॉ किया जाना चाहिए, ताकि परफ़ॉर्मेंस को ट्रैक किया जा सके.
FullyDrawnReporter को अलग-अलग कंपोज़ेबल से इस्तेमाल करना आसान बनाने के लिए, दो Activity Compose API जोड़े गए हैं:
ReportDrawnWhenएक प्रेडिकेट लेता है (यानी,list.count > 0) का इस्तेमाल करें. इससे यह पता चलता है कि आपका कंपोज़ेबल, इंटरैक्शन के लिए कब तैयार है.ReportDrawnAfterएक सस्पेंडिंग तरीके का इस्तेमाल करता है. जब यह पूरा हो जाता है, तो इसका मतलब है कि अब इंटरैक्शन किया जा सकता है.
वर्शन 1.6.1
वर्शन 1.6.1
24 अक्टूबर, 2022
androidx.activity:activity:1.6.1, androidx.activity:activity-compose:1.6.1, और androidx.activity:activity-ktx:1.6.1 रिलीज़ किए जाते हैं. वर्शन 1.6.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
PickMultipleVisualMediaके लिए डिफ़ॉल्ट वैल्यू का इस्तेमाल करने पर, Android R डिवाइसों परPickMultipleVisualMediaगतिविधि के नतीजे का अनुबंध लॉन्च न होने की समस्या को ठीक किया गया है.maxItems(Ie2776, b/249182130)
वर्शन 1.6.0
वर्शन 1.6.0
21 सितंबर, 2022
androidx.activity:activity:1.6.0, androidx.activity:activity-compose:1.6.0, और androidx.activity:activity-ktx:1.6.0 रिलीज़ किए जाते हैं. वर्शन 1.6.0 में ये बदलाव शामिल हैं.
1.5.0 के बाद हुए अहम बदलाव
ActivityResultContracts.PickVisualMediaऔरActivityResultContracts.PickMultipleVisualMediaको जोड़ा गया है. इससे पुराने सिस्टम के साथ काम करने वाला ऐसा कानूनी समझौता उपलब्ध कराया जा सकेगा जो फ़ोटो पिकर उपलब्ध होने परMediaStore.ACTION_PICK_IMAGESका इस्तेमाल करता है और उपलब्ध न होने परIntent.ACTION_OPEN_DOCUMENTका इस्तेमाल करता है.- Android 13 में मौजूद
OnBackInvokedCallbackकोComponentActivityऔरComponentDialogकी ओर से उपलब्ध कराए गएOnBackPressedDispatchersमें इंटिग्रेट किया गया है. इससे यह पक्का होता है कि अनुमानित बैक जेस्चर की सुविधा चालू करने पर,OnBackPressedDispatcherपर बनाए गए सभी एपीआई काम करते हैं.
वर्शन 1.6.0-rc02
7 सितंबर, 2022
androidx.activity:activity:1.6.0-rc02, androidx.activity:activity-compose:1.6.0-rc02, और androidx.activity:activity-ktx:1.6.0-rc02 रिलीज़ किए जाते हैं. वर्शन 1.6.0-rc02 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
OnBackPressedDispatcherअबPRIORITY_OVERLAYके बजायPRIORITY_DEFAULTके साथOnBackInvokedCallbackको रजिस्टर करता है. (I3901f)- जिन क्लास में
ComponentActivityका इस्तेमाल किया जाता है उनमें अब हमेशा दोनोंonMultiWindowModeChanged()कॉलबैक भेजे जाएंगे. (Ic4d85) launchकॉल में कोईExceptionहोने पर,ActivityResultRegistryअबActivityResultCallbackको कोई नतीजा नहीं दिखाएगा. साथ ही, अगर कॉलबैक कोLifecycleOwnerके बिना रजिस्टर किया गया था, तो भी ऐसा होगा. (Ia7ff7, b/238350794)ComponentActivityअब मेन्यू कॉल को सही तरीके से डिस्पैच करेगा. इसके लिए, आपको अपनी गतिविधि में सुपर फ़ंक्शन को कॉल करने की ज़रूरत नहीं होगी. (Ie33c5, b/238057118)
डिपेंडेंसी अपडेट
Activityलाइब्रेरी अब लाइफ़साइकल2.5.1पर निर्भर करती है. (If6697)
वर्शन 1.6.0-rc01
24 अगस्त, 2022
androidx.activity:activity:1.6.0-rc01, androidx.activity:activity-compose:1.6.0-rc01, और androidx.activity:activity-ktx:1.6.0-rc01 रिलीज़ किए जाते हैं. वर्शन 1.6.0-rc01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- एसडीके के 33 से पहले के वर्शन का इस्तेमाल करने पर,
OnBackPressedDispatcherको शुरू करने से अबClassVerificationErrorनहीं दिखेंगे. (Ic32e1) - जिन क्लास के लिए
ComponentActivityकेonPictureInPictureModeChanged()कॉलबैक को अनदेखा किया जाता है उनके लिए अब हमेशा कॉलबैक भेजे जाएंगे. (Ib7fdb)
वर्शन 1.6.0-beta01
10 अगस्त, 2022
androidx.activity:activity:1.6.0-beta01, androidx.activity:activity-compose:1.6.0-beta01, और androidx.activity:activity-ktx:1.6.0-beta01 रिलीज़ किए जाते हैं. वर्शन 1.6.0-beta01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
ComponentActivityपर, बंद किए गएstartActivityForResultऔरstartIntentSenderForResultतरीकों को@NonNullके साथ मार्क किया गया है, क्योंकिnullपास करने पर हमेशा क्रैश होता है. (Id2a25, b/231476082)
गड़बड़ियां ठीक की गईं
- गतिविधि
1.5.1से: जबlaunchकॉल कोईExceptionथ्रो करता है और कॉलबैक कोLifecycleOwnerके बिना रजिस्टर किया जाता है, तबActivityResultRegistry,ActivityResultCallbackको कोई नतीजा नहीं देगा. (Ia7ff7, b/238350794) - गतिविधि
1.5.1से:ComponentActivityअब मेन्यू कॉल कोonPrepareOptionMenu(),onCreateOptionsMenu(), औरonOptionsItemSelected()ओवरराइड को सही तरीके से डिसपैच करेगा. इसके लिए, सुपर फ़ंक्शन को कॉल करने की ज़रूरत नहीं होगी. (Ie33c5, b/238057118)
डिपेंडेंसी अपडेट
- गतिविधि
1.5.1से:Activityलाइब्रेरी अबLifecycleवर्शन2.5.1पर निर्भर करती है. (If6697)
वर्शन 1.6.0-alpha05
15 जून, 2022
androidx.activity:activity:1.6.0-alpha05, androidx.activity:activity-compose:1.6.0-alpha05, और androidx.activity:activity-ktx:1.6.0-alpha05 रिलीज़ किए जाते हैं. वर्शन 1.6.0-alpha05 को रिलीज़ से पहले की निजी ब्रांच में डेवलप किया गया था. इसमें कोई भी सार्वजनिक कमिट नहीं है.
एपीआई में हुए बदलाव
minCompileSdkअब 33 है, ताकि इसे Tiramisu Beta 3 SDK के साथ अलाइन किया जा सके
गड़बड़ियां ठीक की गईं
PickVisualMediaActivityResultContractके लिए एसडीके एक्सटेंशन की जांच करते समय, पुराने डिवाइसों पर क्रैश होने की समस्या ठीक की गई है. अब यह Android 10 और इससे पहले के वर्शन पर काम करने वाले डिवाइसों पर,ACTION_OPEN_DOCUMENTके साथ काम करेगा.
वर्शन 1.6.0-alpha04
18 मई, 2022
androidx.activity:activity:1.6.0-alpha04 और androidx.activity:activity-ktx:1.6.0-alpha04 रिलीज़ हो गए हैं.
गड़बड़ियां ठीक की गईं
PickVisualMediaRequestमें हुई एक गड़बड़ी को ठीक किया गया है. इस गड़बड़ी की वजह से, बिल्डर या टॉप लेवल के Kotlin फ़ंक्शन के ज़रिए अनुरोध बनाने की कोशिश करने पर स्टैक ओवरफ़्लो हो जाता था.- Android 13 के डेवलपर बीटा 2 वर्शन में मौजूद
OnBackInvokedCallbackकोComponentDialogकेOnBackPressedDispatcherमें इंटिग्रेट किया गया है. इससे यह पक्का होता है किOnBackPressedDispatcherपर बनाए गए सभी एपीआई, अनुमानित बैक जेस्चर की सुविधा चालू करने पर काम करते हैं.
वर्शन 1.6.0-alpha03
27 अप्रैल, 2022
androidx.activity:activity:1.6.0-alpha03, androidx.activity:activity-compose:1.6.0-alpha03, और androidx.activity:activity-ktx:1.6.0-alpha03 रिलीज़ किए जाते हैं.
- ध्यान दें: यह वर्शन सिर्फ़ Android 13 Developer Beta 1 SDK के साथ कंपाइल होगा.
नई सुविधाएं
ActivityResultContracts.PickVisualMediaऔरActivityResultContracts.PickMultipleVisualMediaको जोड़ा गया है. इससे पुराने सिस्टम के साथ काम करने वाला ऐसा कानूनी समझौता उपलब्ध कराया जा सकेगा जो फ़ोटो पिकर उपलब्ध होने परMediaStore.ACTION_PICK_IMAGESका इस्तेमाल करता है और उपलब्ध न होने परIntent.ACTION_OPEN_DOCUMENTका इस्तेमाल करता है.- Android 13 के डेवलपर बीटा 1 वर्शन में,
OnBackInvokedCallbackकोComponentActivityकी ओर से उपलब्ध कराए गएOnBackPressedDispatcherमें इंटिग्रेट किया गया है. इससे यह पक्का होता है किOnBackPressedDispatcherपर बनाए गए सभी एपीआई, अनुमानित बैक जेस्चर की सुविधा चालू करने पर काम करते हैं.
वर्शन 1.6.0-alpha01
23 मार्च, 2022
androidx.activity:activity:1.6.0-alpha01, androidx.activity:activity-compose:1.6.0-alpha01, और androidx.activity:activity-ktx:1.6.0-alpha01 रिलीज़ किए जाते हैं.
- ध्यान दें: यह वर्शन, सिर्फ़ Android 13 Developer Preview 2 SDK के साथ कंपाइल होगा.
नई सुविधाएं
- Android 13 Dev Preview 2 में किए गए बदलावों को
ComponentActivityमें इंटिग्रेट किया गया है.
संस्करण 1.5.1
संस्करण 1.5.1
27 जुलाई, 2022
androidx.activity:activity:1.5.1, androidx.activity:activity-compose:1.5.1, और androidx.activity:activity-ktx:1.5.1 रिलीज़ किए जाते हैं. वर्शन 1.5.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
अगर
launch()कॉल से कोईExceptionमिलता है और कॉलबैक कोLifecycleOwnerके बिना रजिस्टर किया गया है, तोActivityResultRegistryअबActivityResultCallbackको कोई नतीजा नहीं देगा. (Ia7ff7, b/238350794)ComponentActivityअब मेन्यू कॉल कोonPrepareOptionMenu(),onCreateOptionsMenu(), औरonOptionsItemSelected()ओवरराइड में सही तरीके से भेज देगा. इसके लिए, सुपर फ़ंक्शन को कॉल करने की ज़रूरत नहीं होगी. (Ie33c5, b/238057118)
डिपेंडेंसी अपडेट
Activityलाइब्रेरी अब लाइफ़साइकल2.5.1पर निर्भर करती है. (If6697)
वर्शन 1.5.0
वर्शन 1.5.0
29 जून, 2022
androidx.activity:activity:1.5.0, androidx.activity:activity-compose:1.5.0, और androidx.activity:activity-ktx:1.5.0 रिलीज़ किए जाते हैं. वर्शन 1.5.0 में ये बदलाव शामिल हैं.
1.4.0 के बाद हुए ज़रूरी बदलाव
- ComponentDialog -
ComponentDialog,Dialogका सबक्लास है. इसमें एकOnBackPressedDispatcherशामिल होता है, जिसे तब कॉल किया जाएगा, जब सिस्टम के बैक बटन को दबाया जाएगा और डायलॉग दिखेगा. सबसे अहम बात यह है कि यह सबक्लास,ViewTreeOnBackPressedDispatcherOwnerको भी सेट करता है. इससे व्यू को सही डिस्पैचर को सामान्य तरीके से वापस पाने की अनुमति मिलती है. भले ही, वहComponentActivityयाComponentDialogमें मौजूद हो. - कॉलबैक इंटरफ़ेस -
ComponentActivityअब मॉड्यूलर कॉलबैक इंटरफ़ेस का एक सेट लागू करता है. इसका इस्तेमालActivityकॉलबैक के बजाय किया जा सकता है. इन इंटरफ़ेस में ये शामिल हैं:OnNewIntentProvider,OnConfigurationChangedProvider,OnTrimMemoryProvider,OnPictureInPictureModeChangedProvider,OnMultiWindowModeChangedProvider - CreationExtras इंटिग्रेशन -
ComponentActivityअब Lifecycle2.5.0केCreationExtrasके ज़रिए, बिना किसी स्टेटस केViewModelProvider.Factoryउपलब्ध करा सकता है.
दूसरे बदलाव
ActivityResultContracts.CreateDocumentके लिए, नो पैरामीटर कंस्ट्रक्टर को बंद कर दिया गया है.इसे एक नए कंस्ट्रक्टर से बदल दिया गया है, जो एक खास माइम टाइप लेता है. जैसे, "image/png") के तौर पर सेव करें. ऐसाIntent.ACTION_CREATE_DOCUMENTके लिए ज़रूरी है.
वर्शन 1.5.0-rc01
11 मई, 2022
androidx.activity:activity:1.5.0-rc01, androidx.activity:activity-compose:1.5.0-rc01, और androidx.activity:activity-ktx:1.5.0-rc01 को 1.5.0-beta01 वर्शन में बिना किसी बदलाव के रिलीज़ किया गया है. वर्शन 1.5.0-rc01 में ये बदलाव शामिल हैं.
वर्शन 1.5.0-beta01
20 अप्रैल, 2022
androidx.activity:activity:1.5.0-beta01, androidx.activity:activity-compose:1.5.0-beta01, और androidx.activity:activity-ktx:1.5.0-beta01 रिलीज़ किए जाते हैं. वर्शन 1.5.0-beta01 में ये बदलाव शामिल हैं.
डिपेंडेंसी से जुड़े अपडेट
- अब ऐक्टिविटी, लाइफ़साइकल
2.4.0-beta01पर निर्भर करती है.
वर्शन 1.5.0-alpha05
6 अप्रैल, 2022
androidx.activity:activity:1.5.0-alpha05, androidx.activity:activity-compose:1.5.0-alpha05, और androidx.activity:activity-ktx:1.5.0-alpha05 रिलीज़ किए जाते हैं. वर्शन 1.5.0-alpha05 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
ComponentActivityकाonPanelClosed()अब सुपरonPanelClosed()को भी कॉल करता है. इससे उस समस्या को ठीक किया गया है जिसमेंonContextMenuClosedतरीके को कॉल नहीं किया जाता था. (Ib6f77)
वर्शन 1.5.0-alpha04
23 मार्च, 2022
androidx.activity:activity:1.5.0-alpha04, androidx.activity:activity-compose:1.5.0-alpha04, और androidx.activity:activity-ktx:1.5.0-alpha04 रिलीज़ किए जाते हैं. वर्शन 1.5.0-alpha04 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
SavedStateViewFactoryअबCreationExtrasका इस्तेमाल करने की सुविधा देता है. भले ही, इसेSavedStateRegistryOwnerके साथ शुरू किया गया हो. अगर एक्सट्रा दिए जाते हैं, तो शुरू किए गए आर्ग्युमेंट को अनदेखा कर दिया जाता है. (I6c43b, b/224844583)
वर्शन 1.5.0-alpha03
23 फ़रवरी, 2022
androidx.activity:activity:1.5.0-alpha03, androidx.activity:activity-compose:1.5.0-alpha03, और androidx.activity:activity-ktx:1.5.0-alpha03 रिलीज़ किए जाते हैं. वर्शन 1.5.0-alpha03 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- अब गतिविधि
by viewModels()फ़ंक्शन (I6a3e6, b/217600303) कोCreationExtrasपास किया जा सकता है
वर्शन 1.5.0-alpha02
9 फ़रवरी, 2022
androidx.activity:activity:1.5.0-alpha02, androidx.activity:activity-compose:1.5.0-alpha02, और androidx.activity:activity-ktx:1.5.0-alpha02 रिलीज़ किए जाते हैं. वर्शन 1.5.0-alpha02 में ये बदलाव शामिल हैं.
नई सुविधाएं
ComponentActivityअबOnPictureInPictureModeChangedProviderइंटरफ़ेस लागू करता है, ताकि कोई भी कॉम्पोनेंट, पिक्चर में पिक्चर मोड बदलने से जुड़ी इवेंट सूचनाएं पा सके. (I9f567)ComponentActivityअबOnMultiWindowModeChangedProviderइंटरफ़ेस लागू करता है, ताकि कोई भी कॉम्पोनेंट मल्टी-विंडो मोड में बदलाव से जुड़े इवेंट पा सके. (I62d91)
वर्शन 1.5.0-alpha01
26 जनवरी, 2022
androidx.activity:activity:1.5.0-alpha01, androidx.activity:activity-compose:1.5.0-alpha01, और androidx.activity:activity-ktx:1.5.0-alpha01 रिलीज़ किए जाते हैं. वर्शन 1.5.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
ComponentActivityको अब ViewModel CreationExtras के साथ इंटिग्रेट किया गया है. इसे Lifecycle2.5.0-alpha01के हिस्से के तौर पर पेश किया गया था. (Ie7e00, b/207012584)ComponentDialogजोड़ा गया है, जोDialogका सबक्लास है. इसमें एकOnBackPressedDispatcherशामिल है. जब डायलॉग दिखता है, तब सिस्टम के बैक बटन को दबाने पर इसे कॉल किया जाएगा. अहम बात यह है कि यह सबक्लास,ViewTreeOnBackPressedDispatcherOwnerको भी सेट करता है. इससे व्यू को सही डिस्पैचर को वापस पाने का सामान्य तरीका मिलता है. इससे यह पता चलता है कि यहComponentActivityयाComponentDialogमें मौजूद है या नहीं. (I8a1bc)ComponentActivityअब नएOnNewIntentProviderइंटरफ़ेस को लागू करता है, ताकि कोई भी कॉम्पोनेंट इन इवेंट को पा सके. (If1f8b)ComponentActivityअब नएOnConfigurationChangedProviderइंटरफ़ेस को लागू करता है, ताकि कोई भी कॉम्पोनेंट इन इवेंट को पा सके. (If623b)ComponentActivityअब नएOnTrimMemoryProviderइंटरफ़ेस को लागू करता है, ताकि कोई भी कॉम्पोनेंट इन इवेंट को पा सके. (Ia9295)
एपीआई में हुए बदलाव
ActivityResultContracts.CreateDocumentके लिए नो पैरामीटर कंस्ट्रक्टर को बंद कर दिया गया है और इसे एक नए कंस्ट्रक्टर से बदल दिया गया है. यह कंस्ट्रक्टर, कॉन्क्रीट माइम टाइप (जैसे,"image/png") कोIntent.ACTION_CREATE_DOCUMENTकी ज़रूरी शर्तों के मुताबिक सेट किया गया है. (I2bec6)- अब व्यू से जुड़े
OnBackPressedDispatcherOwnerकोViewTreeOnBackPressedDispatcherOwnerके ज़रिए वापस लाया जा सकता है. इसके लिए,Contextको कास्ट करने की ज़रूरत नहीं है. (I74685)
गड़बड़ियां ठीक की गईं
ViewModelको पहली बारregisterForActivityResult()कॉलबैक से याComponentActivityकेinitके हिस्से के तौर पर जोड़े गएLifecycleObserverके कॉलबैक से ऐक्सेस करने पर होने वाली क्रैश की समस्या को ठीक किया गया है. (Ife83f)
वर्शन 1.4.0
वर्शन 1.4.0
27 अक्टूबर, 2021
androidx.activity:activity:1.4.0, androidx.activity:activity-compose:1.4.0, और androidx.activity:activity-ktx:1.4.0 रिलीज़ किए जाते हैं. वर्शन 1.4.0 में ये बदलाव शामिल हैं.
1.3.0 के बाद हुए अहम बदलाव
- AndroidX
ComponentActivityअबMenuHostइंटरफ़ेस लागू करता है. इससे कोई भी कॉम्पोनेंट, गतिविधि मेंMenuProviderइंस्टेंस जोड़करActionBarमें मेन्यू आइटम जोड़ सकता है. हरMenuProviderकोLifecycleके साथ जोड़ा जा सकता है. इससे, मेन्यू आइटम की दृश्यता अपने-आप कंट्रोल हो जाएगी. यह कंट्रोल,Lifecycleकी स्थिति के आधार पर काम करेगा. साथ ही,Lifecycleके बंद होने पर,MenuProviderको हटाने का काम भी करेगा. ActivityResultContractक्लास को Kotlin में फिर से लिखा गया है, ताकि Kotlin में कस्टम कॉन्ट्रैक्ट लिखने वाले डेवलपर, अपनी इनपुट और आउटपुट क्लास के लिए सही नलेबिलिटी तय कर सकें.ActivityResultContractsक्लास और उसके अनुबंधों को Kotlin में फिर से लिखा गया है, ताकि यह पक्का किया जा सके कि वे शून्य हो सकते हैं या नहीं.
वर्शन 1.4.0-rc01
13 अक्टूबर, 2021
androidx.activity:activity:1.4.0-rc01, androidx.activity:activity-compose:1.4.0-rc01, और androidx.activity:activity-ktx:1.4.0-rc01 रिलीज़ किए जाते हैं. वर्शन 1.4.0-rc01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
launchकॉल में कोईExceptionहोने पर,ActivityResultRegistryअबActivityResultCallbackको कोई नतीजा नहीं दिखाएगा. (If4f91, b/200845664)
वर्शन 1.4.0-beta01
29 सितंबर, 2021
androidx.activity:activity:1.4.0-beta01, androidx.activity:activity-compose:1.4.0-beta01, और androidx.activity:activity-ktx:1.4.0-beta01 रिलीज़ किए जाते हैं. वर्शन 1.4.0-beta01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
ActivityResultContracts.OpenMultipleDocumentsऔरActivityResultContracts.GetMultipleContentsके टाइप को ठीक किया गया है. इससे, Java प्रोग्रामिंग भाषा के कोड का इस्तेमाल करते समय, आउटपुट टाइप के तौर परList<? extends Uri>का इस्तेमाल किया जा सकेगा. (If71de)ActivityResultContracts.StartActivityForResult,ActivityResultContracts.StartIntentSenderForResult, औरActivityResultContracts.RequestMultiplePermissionsक्लास में मौजूद सार्वजनिक कॉन्स्टेंट को अब Kotlin का इस्तेमाल करके ऐक्सेस किया जा सकता है. इसके लिए, अब सार्वजनिक तौर पर उपलब्धCompanionऑब्जेक्ट का इस्तेमाल करें. (aosp/1832555)
दस्तावेज़ से जुड़े अपडेट
- Activity Result APIs के ज़रिए मैनेज किए जाने वाले एपीआई के लिए, सुविधा बंद होने से जुड़ा मैसेज अब ज़्यादा जानकारी के साथ उपलब्ध है. ये एपीआई हैं:
startActivityForResult,startIntentSenderForResult,onActivityResult,requestPermissions, औरonRequestPermissionsResult. (cce80f)
वर्शन 1.4.0-alpha02
15 सितंबर, 2021
androidx.activity:activity:1.4.0-alpha02, androidx.activity:activity-compose:1.4.0-alpha02, और androidx.activity:activity-ktx:1.4.0-alpha02 रिलीज़ किए जाते हैं. वर्शन 1.4.0-alpha02 में ये बदलाव शामिल हैं.
नई सुविधाएं
activity-composeआर्टफ़ैक्ट में अबLaunchDuringCompositionलिंट की गड़बड़ी है. इस वजह से, कंपोज़िशन के हिस्से के तौर परActivityResultLauncherकेlaunchतरीके को कॉल नहीं किया जा सकता, क्योंकि कंपोज़िशन में साइड इफ़ेक्ट नहीं होने चाहिए. साइड इफ़ेक्ट को मैनेज करने के लिए एपीआई का इस्तेमाल करें. (7c2bbe, b/191347220)
एपीआई में हुए बदलाव
ActivityResultContractक्लास को Kotlin में फिर से लिखा गया है, ताकि Kotlin में कस्टम कॉन्ट्रैक्ट लिखने वाले डेवलपर, अपनी इनपुट और आउटपुट क्लास के लिए सही नलबिलिटी तय कर सकें. (I8a8f5)ActivityResultContractsक्लास और उसके अनुबंधों को Kotlin में फिर से लिखा गया है, ताकि यह पक्का किया जा सके कि वे शून्य हो सकते हैं या नहीं. (I69802)
वर्शन 1.4.0-alpha01
1 सितंबर, 2021
androidx.activity:activity:1.4.0-alpha01, androidx.activity:activity-compose:1.4.0-alpha01, और androidx.activity:activity-ktx:1.4.0-alpha01 रिलीज़ किए जाते हैं. वर्शन 1.4.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
- AndroidX
ComponentActivityअबMenuHostइंटरफ़ेस लागू करता है.. इससे कोई भी कॉम्पोनेंट, गतिविधि मेंMenuProviderइंस्टेंस जोड़करActionBarमें मेन्यू आइटम जोड़ सकता है. हरMenuProviderकोLifecycleके साथ जोड़ा जा सकता है. इससे, मेन्यू आइटम की दृश्यता अपने-आप कंट्रोल हो जाएगी. यह कंट्रोल,Lifecycleकी स्थिति के आधार पर काम करेगा. साथ ही,Lifecycleके बंद होने पर,MenuProviderको हटाने का काम भी करेगा. (I3b608):
/**
* Using the addMenuProvider() API directly in your Activity
**/
class ExampleActivity : ComponentActivity(R.layout.activity_example) {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// Add menu items without overriding methods in the Activity
addMenuProvider(object : MenuProvider {
override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) {
// Add menu items here
menuInflater.inflate(R.menu.example_menu, menu)
}
override fun onMenuItemSelected(menuItem: MenuItem): Boolean {
// Handle the menu selection
return true
}
})
}
}
/**
* Using the addMenuProvider() API in a Fragment
**/
class ExampleFragment : Fragment(R.layout.fragment_example) {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
// The usage of an interface lets you inject your own implementation
val menuHost: MenuHost = requireActivity()
// Add menu items without using the Fragment Menu APIs
// Note how we can tie the MenuProvider to the viewLifecycleOwner
// and an optional Lifecycle.State (here, RESUMED) to indicate when
// the menu should be visible
menuHost.addMenuProvider(object : MenuProvider {
override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) {
// Add menu items here
menuInflater.inflate(R.menu.example_menu, menu)
}
override fun onMenuItemSelected(menuItem: MenuItem): Boolean {
// Handle the menu selection
return true
}
}, viewLifecycleOwner, Lifecycle.State.RESUMED)
}
व्यवहार में बदलाव
- अब
ActivityResultRegistry,ActivityResultLauncherपरlaunch()को कॉल करने की कोशिश करने परIllegalStateExceptionदिखाएगा. ऐसा तब होगा, जबActivityResultLauncherरजिस्टर नहीं किया गया होगा या उसका रजिस्ट्रेशन रद्द कर दिया गया होगा. (Ida75d, b/192567522)
बाहरी योगदान
वर्शन 1.3.1
वर्शन 1.3.1
4 अगस्त, 2021
androidx.activity:activity:1.3.1, androidx.activity:activity-compose:1.3.1, और androidx.activity:activity-ktx:1.3.1 रिलीज़ किए जाते हैं. वर्शन 1.3.1 में ये बदलाव शामिल हैं.
डिपेंडेंसी से जुड़े अपडेट
- अब ऐक्टिविटी, Kotlin
1.5.21पर निर्भर करती है. - Activity Compose अब Compose
1.0.1पर निर्भर करता है.
वर्शन 1.3.0
वर्शन 1.3.0
28 जुलाई, 2021
androidx.activity:activity:1.3.0, androidx.activity:activity-compose:1.3.0, और androidx.activity:activity-ktx:1.3.0 रिलीज़ किए जाते हैं. वर्शन 1.3.0 में ये बदलाव शामिल हैं.
1.2.0 के बाद हुए ज़रूरी बदलाव
- Activity Compose आर्टफ़ैक्ट -
activity-composeआर्टफ़ैक्ट, किसी गतिविधि में Jetpack Compose यूज़र इंटरफ़ेस (यूआई) को होस्ट करने के लिए,setContentएक्सटेंशन मेथड उपलब्ध कराता है. साथ ही, यह सिस्टम के बैक बटन और Activity Result API को मैनेज करने के लिए,ComponentActivityएपीआई के साथ इंटरैक्ट करने के लिए, Compose के खास रैपर उपलब्ध कराता है. ज़्यादा जानकारी के लिए, दस्तावेज़ देखें. - CaptureVideo contract -
CaptureVideoActivityResultContract, अब इस्तेमाल में नहीं रहेTakeVideocontract की जगह लेता है. साथ ही, यह एक बूलियन वैल्यू दिखाता है, जो कई कैमरा ऐप्लिकेशन पर काम करती है. - पिक्चर में पिक्चर मोड के लिए, हिंट व्यू ट्रैकिंग -
activity-ktxके उपयोगकर्ता अबActivityपरtrackPipAnimationHintViewएक्सटेंशन के तरीके का इस्तेमाल कर सकते हैं. इससे, विंडो के हिसाब से व्यू की पोज़िशन बदलने पर,PictureInPictureParamsअपने-आप फिर से बन जाएगा.
वर्शन 1.3.0-rc02
14 जुलाई, 2021
androidx.activity:activity:1.3.0-rc02, androidx.activity:activity-compose:1.3.0-rc02, और androidx.activity:activity-ktx:1.3.0-rc02 रिलीज़ किए जाते हैं. वर्शन 1.3.0-rc02 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
ActivityResultRegistryकॉलबैक अब सही तरीके से सेव किए जाते हैं और उन्हें वापस लाया जाता है, ताकि savedState में कॉलबैक डुप्लीकेट न हों. (I97816, b/191893160)
वर्शन 1.3.0-rc01
1 जुलाई, 2021
androidx.activity:activity:1.3.0-rc01, androidx.activity:activity-compose:1.3.0-rc01, और androidx.activity:activity-ktx:1.3.0-rc01 को 1.3.0-beta02 के बाद से बिना किसी बदलाव के रिलीज़ किया गया है. वर्शन 1.3.0-rc01 में ये बदलाव शामिल हैं.
वर्शन 1.3.0-beta02
16 जून, 2021
androidx.activity:activity:1.3.0-beta02, androidx.activity:activity-compose:1.3.0-beta02, और androidx.activity:activity-ktx:1.3.0-beta02 रिलीज़ किए जाते हैं. वर्शन 1.3.0-beta02 में ये बदलाव शामिल हैं.
activity-compose को Compose 1.0.0-beta09 पर निर्भर रहने के लिए अपडेट किया गया. अब androidx.compose.ui:ui-test-junit4, कंपाइल टाइम के दौरान activity-compose पर निर्भर करता है.
वर्शन 1.3.0-beta01
2 जून, 2021
androidx.activity:activity:1.3.0-beta01, androidx.activity:activity-compose:1.3.0-beta01, और androidx.activity:activity-ktx:1.3.0-beta01 रिलीज़ किए जाते हैं. वर्शन 1.3.0-beta01 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- पहले बंद की जा चुकी
@Composable registerForActivityResult()विधि को हटा दिया गया है. कृपयाrememberLauncherForActivityResult()का इस्तेमाल करें. (Ic39d3)
वर्शन 1.3.0-alpha08
18 मई, 2021
androidx.activity:activity:1.3.0-alpha08, androidx.activity:activity-compose:1.3.0-alpha08, और androidx.activity:activity-ktx:1.3.0-alpha08 रिलीज़ किए जाते हैं. वर्शन 1.3.0-alpha08 में ये बदलाव शामिल हैं.
नई सुविधाएं
- नया
CaptureVideoActivityResultContractआपकेActivityResultCallbackको एक बूलियन वैल्यू देता है. इससे पता चलता है कि आपका वीडियो दिए गए यूआरआई में सेव हुआ है या नहीं. यह अब काम न करने वालेTakeVideoअनुबंध की जगह लेता है, क्योंकि कैमरा ऐप्लिकेशन बहुत कम ही थंबनेल बिटमैप दिखाते थे. इस वजह से, यह तरीका मददगार नहीं होता था. (Ie21f2, b/185938070) - नया एपीआई
Activity#setPipAnimationHintViewजोड़ा गया है. इससे व्यू के हिलने पर, PipParams के सोर्स रेक्ट हिंट को अपडेट किया जा सकेगा. (I9063d)
एपीआई में हुए बदलाव
rememberLauncherForActivityResultफ़ंक्शन अब एक ऐसा लॉन्चर दिखाता है जोrememberLauncherForActivityResultफ़ंक्शन को बंद कर देता है. लॉन्चर को रजिस्टर और अनरजिस्टर करने का काम,rememberLauncherForActivityResultफ़ंक्शन अपने-आप करता है.unregister()(I2443e)
लिखने की सुविधा
androidx.activity:activity-compose:1.3.0-alpha08सिर्फ़ Compose के1.0.0-beta07और इसके बाद के वर्शन के साथ काम करता है.
वर्शन 1.3.0-alpha07
21 अप्रैल, 2021
androidx.activity:activity:1.3.0-alpha07, androidx.activity:activity-compose:1.3.0-alpha07, और androidx.activity:activity-ktx:1.3.0-alpha07 रिलीज़ किए जाते हैं. वर्शन 1.3.0-alpha07 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
rememberLauncherForActivityResultअब एक हीActivityResultLauncherइंस्टेंस का स्टेबल रेफ़रंस देता है. भले ही, रीकंपोज़िशन की वजह से अनुबंध में बदलाव हो जाए. (Id2d6d)1.3.0से ऊपर के फ़्रैगमेंट के अस्थिर वर्शन का इस्तेमाल करने पर, अब आपको फ़ॉल्स पॉज़िटिव लिंट गड़बड़ी नहीं दिखेगी. इस गड़बड़ी में आपको1.3.0का इस्तेमाल करने के लिए कहा जाता है. (aosp/1670206, b/184847092)
वर्शन 1.3.0-alpha06
7 अप्रैल, 2021
androidx.activity:activity:1.3.0-alpha06, androidx.activity:activity-compose:1.3.0-alpha06, और androidx.activity:activity-ktx:1.3.0-alpha06 रिलीज़ किए जाते हैं. वर्शन 1.3.0-alpha06 में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
registerForActivityResult()एपीआई का नाम बदलकरrememberLauncherForActivityResult()कर दिया गया है. इससे यह बेहतर तरीके से पता चलता है किActivityResultLauncherएक मैनेज किया गया ऑब्जेक्ट है, जिसे आपकी ओर से याद रखा जाता है. अबunregisterको कॉल करने की कोशिश करने पर,ActivityResultLauncherमें गड़बड़ी दिखेगी. (I2bb6d)LocalOnBackPressedDispatcherOwner.currentऔरLocalActivityResultRegistryOwner.currentअब नल वैल्यू दिखाते हैं, ताकि यह बेहतर तरीके से तय किया जा सके कि यह मौजूदा कंपोज़िशन में उपलब्ध है या नहीं. जिन एपीआई को इन एपीआई की ज़रूरत होती है, जैसे किBackHandlerऔरrememberLauncherForActivityResult(), वे अब ज़्यादा जानकारी वाली गड़बड़ी दिखाएंगे. ऐसा तब होगा, जब मालिक का पता नहीं चलेगा.NavHostअब तब भी काम करता है, जबOnBackPressedDispatcherOwnerनहीं मिलता. ऐसा तब होता है, जबNavHostकी झलक देखी जा रही हो. (I7d8b4)
गड़बड़ियां ठीक की गईं
- अगर ऐक्टिविटी
STOPPED, फिरSTARTEDहो जाती है और LifecycleOwner के साथ अन्य कॉलबैक जोड़े जाते हैं, तोBackHandlerअब बैक बटन दबाने की कार्रवाइयों को सही तरीके से इंटरसेप्ट करेगा. (I71de6, b/182284739) launch()इनपुट वाले कस्टमActivityResultContractके साथlaunch()तरीके के एक्सटेंशन का इस्तेमाल करने पर, अबNullPointerException(I76282, b/183837954) नहीं होगाUnit
वर्शन 1.3.0-alpha05
24 मार्च, 2021
androidx.activity:activity:1.3.0-alpha05, androidx.activity:activity-compose:1.3.0-alpha05, और androidx.activity:activity-ktx:1.3.0-alpha05 रिलीज़ किए जाते हैं. वर्शन 1.3.0-alpha05 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- गतिविधि 1.2.2:
InvalidFragmentVersionForActivityResultलिंट चेक में मौजूद समस्या को ठीक किया गया है. इस समस्या की वजह से, Fragment 1.3.1 या उसके बाद के वर्शन का इस्तेमाल करते समय, गलत पॉज़िटिव नतीजे मिलते थे. (I54da1, b/182388985) - Activity 1.2.2 से:
ComponentActivityअबActivityResultContractसेIntentलॉन्च करते समयClassNotFoundExceptionसे बचता है.ActivityResultContractको पहले किसी अन्यIntentमें अतिरिक्त के तौर पर रखा गया था. (Ieff05, b/182906230)
डिपेंडेंसी से जुड़े अपडेट
- ऐक्टिविटी 1.2.2 से: अब ऐक्टिविटी, लाइफ़साइकल
2.3.1पर निर्भर करती है.
वर्शन 1.3.0-alpha04
10 मार्च, 2021
androidx.activity:activity:1.3.0-alpha04, androidx.activity:activity-compose:1.3.0-alpha04, और androidx.activity:activity-ktx:1.3.0-alpha04 रिलीज़ किए जाते हैं. वर्शन 1.3.0-alpha04 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- गतिविधि
1.2.1:RequestMultiplePermissionsअब हमेशा उन सभी अनुमतियों के लिए नतीजे दिखाता है जिनके लिए अनुरोध किया गया है. पहले, यह सिर्फ़ उन अनुमतियों के लिए नतीजे दिखाता था जो पहले नहीं दी गई थीं. (I50bc3, b/180884668) - गतिविधि
1.2.1से:ActivityResultRegistryअब यह पक्का करता है कि प्रोसेस में मौजूदlaunch()अनुरोधों के नतीजे तब भी दिखेंगे, जब आपनेunregister()और फिर उसी कुंजी के साथregister()किया हो. (I9ef34, b/181267562) - Activity Compose अब रनटाइम क्लासपाथ में टेस्ट डिपेंडेंसी नहीं जोड़ता है. (Ifd8b3)
BackHandlerसे जुड़ी समस्या को ठीक किया गया है. इसमें, फिर से कंपोज़ करने के बाद भी, पहले से सेट किए गएonBackलैम्डा का इस्तेमाल किया जा रहा था. (8eb5eb)
वर्शन 1.3.0-alpha03
24 फ़रवरी, 2021
androidx.activity:activity:1.3.0-alpha03, androidx.activity:activity-compose:1.3.0-alpha03, और androidx.activity:activity-ktx:1.3.0-alpha03 रिलीज़ किए जाते हैं. वर्शन 1.3.0-alpha03 में ये बदलाव शामिल हैं.
नई सुविधाएं
- अब कंपोज़ेबल के अंदर की गतिविधियों से नतीजे पाने के लिए, कंपोज़ेबल
registerForActivityResultफ़ंक्शन उपलब्ध है. (Ia7851, b/172690553)
एपीआई में हुए बदलाव
LocalOnBackPressedDispatcherOwnerमें अबprovidesफ़ंक्शन उपलब्ध हैं. इनका इस्तेमालCompositionLocalProviderके साथ किया जा सकता है. येasProvidableCompositionLocal()एपीआई की जगह काम करते हैं. (I45d24)
वर्शन 1.3.0-alpha02
10 फ़रवरी, 2021
androidx.activity:activity:1.3.0-alpha02, androidx.activity:activity-compose:1.3.0-alpha02, और androidx.activity:activity-ktx:1.3.0-alpha02 रिलीज़ किए जाते हैं. वर्शन 1.3.0-alpha02 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- गतिविधि कंपोज़
1.3.0-alpha01में मौजूद उस समस्या को ठीक किया गया है जिसकी वजह से कंपोज़1.0.0-alpha12का इस्तेमाल करते समयNoSuchMethodError: No static method setContentअपवाद होता है. Compose का इस्तेमाल करने वाले सभी लोगों को1.3.0-alpha02या इसके बाद के वर्शन का इस्तेमाल करना चाहिए. (b/179911234)
एपीआई में हुए बदलाव
BackHandlerएपीआई का इस्तेमाल करके, किसी कंपोज़ेबल को सिस्टम के बैक बटन को इंटरसेप्ट करने की अनुमति दी जा सकती है. (I58ed5, b/172154006)
वर्शन 1.3.0-alpha01
10 फ़रवरी, 2021
androidx.activity:activity:1.3.0-alpha01, androidx.activity:activity-compose:1.3.0-alpha01, और androidx.activity:activity-ktx:1.3.0-alpha01 रिलीज़ किए जाते हैं. वर्शन 1.3.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
- नए
activity-composeआर्टफ़ैक्ट में,androidx.activityके खास एपीआई के लिए, Jetpack Compose के खास हेल्पर उपलब्ध होते हैं.ComponentActivity.setContentकोandroidx.compose.ui.platform.setContentसेandroidx.activity.compose.setContentमें ले जाया गया है. (Icf416)
ऐसी समस्याएं जिनके बारे में जानकारी पहले से है
- Activity Compose
1.3.0-alpha01और इस पर निर्भर रहने वाली लाइब्रेरी, जैसे किandroidx.compose.ui:ui-test-junit4:1.0.0-alpha12का इस्तेमाल करने पर,NoSuchMethodError: No static method setContentअपवाद मिलेगा. (b/179911234)
वर्शन 1.2.4
वर्शन 1.2.4
21 जुलाई, 2021
androidx.activity:activity:1.2.4 और androidx.activity:activity-ktx:1.2.4 रिलीज़ हो गए हैं. वर्शन 1.2.4 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- गतिविधि
1.3.0-rc02से: ActivityResultRegistry कॉलबैक अब सही तरीके से सेव किए जाते हैं और उन्हें वापस लाया जाता है, ताकि savedState में कॉलबैक डुप्लीकेट न हों. (I97816, b/191893160)
वर्शन 1.2.3
वर्शन 1.2.3
5 मई, 2021
androidx.activity:activity:1.2.3 और androidx.activity:activity-ktx:1.2.3 रिलीज़ हो गए हैं. वर्शन 1.2.3 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
launch()इनपुट वाले कस्टमActivityResultContractके साथlaunch()तरीके के एक्सटेंशन का इस्तेमाल करने पर, अबNullPointerException(I76282, b/183837954) नहीं होगाUnit- लिंट की गलत पॉज़िटिव गड़बड़ी को ठीक किया गया है. इसमें आपको Fragments के नए वर्शन के स्नैपशॉट, ऐल्फ़ा, बीटा या आरसी बिल्ड का इस्तेमाल करते समय, Fragment
1.3.0का इस्तेमाल करने के लिए कहा जाता था. (f4a57e, b/184847092)
वर्शन 1.2.2
वर्शन 1.2.2
24 मार्च, 2021
androidx.activity:activity:1.2.2 और androidx.activity:activity-ktx:1.2.2 रिलीज़ हो गए हैं. वर्शन 1.2.2 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
InvalidFragmentVersionForActivityResultलिंट चेक में मौजूद उस समस्या को ठीक कर दिया गया है जिसकी वजह से Fragment 1.3.1 या इसके बाद के वर्शन का इस्तेमाल करते समय फ़ॉल्स पॉज़िटिव की समस्या आ रही थी. (I54da1, b/182388985)ComponentActivityअबActivityResultContractसेIntentलॉन्च करते समय,ClassNotFoundExceptionसे बचता है.ActivityResultContractको पहले किसी दूसरेIntentमें अतिरिक्त के तौर पर रखा गया था. (Ieff05, b/182906230)
डिपेंडेंसी से जुड़े अपडेट
- अब ऐक्टिविटी, लाइफ़साइकल
2.3.1पर निर्भर करती है.
वर्शन 1.2.1
वर्शन 1.2.1
10 मार्च, 2021
androidx.activity:activity:1.2.1 और androidx.activity:activity-ktx:1.2.1 रिलीज़ हो गए हैं. वर्शन 1.2.1 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
RequestMultiplePermissionsअब हमेशा उन सभी अनुमतियों के लिए नतीजे दिखाता है जिनके लिए अनुरोध किया गया है. ऐसा सिर्फ़ उन अनुमतियों के लिए नहीं होता जिन्हें पहले अनुमति नहीं दी गई थी. (I50bc3, b/180884668)ActivityResultRegistryअब यह पक्का करता है कि प्रोसेस में मौजूदlaunch()अनुरोधों के नतीजे दिखेंगे. भले ही, आपनेunregister()किया हो और फिर उसी कुंजी के साथregister()किया हो. (I9ef34, b/181267562)
वर्शन 1.2.0
वर्शन 1.2.0
10 फ़रवरी, 2021
androidx.activity:activity:1.2.0 और androidx.activity:activity-ktx:1.2.0 रिलीज़ हो गए हैं. वर्शन 1.2.0 में ये बदलाव शामिल हैं.
1.1.0 के बाद के मुख्य बदलाव
- Activity Result APIs:
ComponentActivityअब एकActivityResultRegistryउपलब्ध कराता है. इसकी मदद से,startActivityForResult()+onActivityResult()के साथ-साथrequestPermissions()+onRequestPermissionsResult()फ़्लो को भी मैनेज किया जा सकता है. इसके लिए, आपको अपनी गतिविधि या फ़्रैगमेंट में मौजूद तरीकों को बदलने की ज़रूरत नहीं होती. साथ ही,ActivityResultContractके ज़रिए टाइप की सुरक्षा को बेहतर बनाया जाता है और इन फ़्लो की जांच करने के लिए हुक उपलब्ध कराए जाते हैं. अपडेट किया गया गतिविधि से नतीजा पाना लेख पढ़ें.
ContextAware:ComponentActivityअबContextAwareको लागू करता है. इससे आपको एक या उससे ज़्यादाOnContextAvailableListenerइंस्टेंस जोड़ने की अनुमति मिलती है. ये इंस्टेंस, बेसActivity.onCreate()से पहले कॉलबैक पाएंगे.- सस्पेंड करने वाले Kotlin एक्सटेंशन
withContextAvailable()की मदद से, Context उपलब्ध होने पर सस्पेंड न करने वाले ब्लॉक को चलाया जा सकता है और नतीजे पाए जा सकते हैं. - इस एपीआई का इस्तेमाल
FragmentActivity, Fragment 1.3.0 मेंFragmentManagerकी स्थिति को वापस लाने के लिए करता है.FragmentActivityकी सबक्लास में जोड़े गए सभी लिसनर, उस लिसनर के बाद चलेंगे. - इस एपीआई का इस्तेमाल
AppCompatActivity, AppCompat 1.3.0-alpha02 या इसके बाद के वर्शन में करता है.AppCompatActivityकी सबक्लास में जोड़े गए सभी लिसनर, उस लिसनर के बाद चलेंगे.
- सस्पेंड करने वाले Kotlin एक्सटेंशन
ViewTreeसहायता:ComponentActivityअब लाइफ़साइकल2.3.0और SavedState1.1.0में जोड़े गएViewTreeLifecycleOwner.get(View),ViewTreeViewModelStoreOwner.get(View), औरViewTreeSavedStateRegistryOwnerएपीआई के साथ काम करता है. इससे,ComponentActivityमें सीधे तौर पर जोड़े गए किसी भी व्यू के लिए, Activity कोLifecycleOwner,ViewModelStoreOwner, औरSavedStateRegistryOwnerके तौर पर दिखाया जाएगा.
- reportFullyDrawn() बैकपोर्ट -
reportFullyDrawn()केActivityतरीके कोComponentActivityमें बैकपोर्ट किया गया है, ताकि यह सभी एपीआई लेवल पर काम कर सके. इससे एपीआई 19 पर क्रैश होने की समस्या ठीक हो गई है. साथ ही, सभी एपीआई लेवल के लिए इस तरीके की ट्रेसिंग की सुविधा जोड़ दी गई है.
वर्शन 1.2.0-rc01
16 दिसंबर, 2020
androidx.activity:activity:1.2.0-rc01 और androidx.activity:activity-ktx:1.2.0-rc01 रिलीज़ हो गए हैं. वर्शन 1.2.0-rc01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
ActivityResultRegistryअब हमेशा उस स्थिति को वापस लाता है जिसे सेव किया गया था. (Idd56b)ComponentActivity.reportFullyDrawnमें ट्रेसिंग जोड़ी गई (Ic7632)
बाहरी योगदान
ComponentActivityअबreportFullyDrawn()को बदल देता है. इससे इसे सभी एपीआई लेवल पर कॉल किया जा सकता है. साथ ही, एपीआई 19 वाले डिवाइसों पर सिस्टम की ज़रूरी अनुमति के बिना इस तरीके को कॉल करने पर होने वाली क्रैश की समस्या को ठीक किया जा सकता है. धन्यवाद, साइमन शिलर! (b/163239764, #103)
वर्शन 1.2.0-beta02
2 दिसंबर, 2020
androidx.activity:activity:1.2.0-beta02 और androidx.activity:activity-ktx:1.2.0-beta02 रिलीज़ हो गए हैं. वर्शन 1.2.0-beta02 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें
Lifecycleके साथ रजिस्टर होने पर, Activity Result API, नतीजे देने से पहले Lifecycle केSTARTEDहोने का इंतज़ार नहीं करता था. (I109ea)
बाहरी योगदान
launch()के दस्तावेज़ को अपडेट किया गया है, ताकि साफ़ तौर पर बताया जा सके कि यहActivityNotFoundExceptionको थ्रो कर सकता है. धन्यवाद, माइकल ज़ेलिंस्की! (aosp/1493580)
वर्शन 1.2.0-beta01
1 अक्टूबर, 2020
androidx.activity:activity:1.2.0-beta01 और androidx.activity:activity-ktx:1.2.0-beta01 रिलीज़ हो गए हैं. वर्शन 1.2.0-beta01 में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
अब
ActivityResultRegistry, पूर्णांकों को रैंडम तरीके से जनरेट करता है. ऐसा तब तक किया जाता है, जब तक उसे ऐसा पूर्णांक नहीं मिल जाता जिसे अनुरोध कोडregister()के तौर पर इस्तेमाल किया जा सके. इससे अनुरोध कोड में बढ़ोतरी की वजह से होने वाले पूर्णांक ओवरफ़्लो को रोका जा सकता है. (b/168779518)LifecycleपरActivityResultLauncherको कॉल करने पर,Lifecycleके साथ जुड़े हुए लोगों को सही तरीके से हटा दिया जाता है.unregister()(b/165608393)
व्यवहार में बदलाव
- अब
ActivityResultRegistry,register()को कॉल करने की कोशिश करते समयIllegalStateExceptionदिखाता है. ऐसा तब होता है, जबLifecycleOwnerकाLifecycleपहले हीSTARTEDतक पहुंच चुका हो. (b/165435866)
दस्तावेज़ अपडेट किया गया
ContextAwareदस्तावेज़ मेंLifecycleOwnerके लिंक दिए गए हैं, ताकिLifecycleकॉलबैक को क्रिएशन और डिस्ट्रक्शन इवेंट के लिए सही जगह के तौर पर हाइलाइट किया जा सके. (aosp/1414152)
वर्शन 1.2.0-alpha08
19 अगस्त, 2020
androidx.activity:activity:1.2.0-alpha08 और androidx.activity:activity-ktx:1.2.0-alpha08 रिलीज़ हो गए हैं. वर्शन 1.2.0-alpha08 में ये बदलाव शामिल हैं.
नई सुविधाएं
ComponentActivityअबContextAwareलागू करता है. इससे आपको एक या उससे ज़्यादाOnContextAvailableListenerइंस्टेंस जोड़ने की सुविधा मिलती है. इन्हें बेसActivity.onCreate()से पहले कॉलबैक मिलेगा. (b/161390636)- सस्पेंड करने वाले Kotlin एक्सटेंशन
withContextAvailable()की मदद से, Context उपलब्ध होने पर सस्पेंड न करने वाले ब्लॉक को चलाया जा सकता है और नतीजे पाए जा सकते हैं. (I8290c) - इस एपीआई का इस्तेमाल
FragmentActivity, Fragment 1.3.0-alpha08 मेंFragmentManagerकी स्थिति को वापस लाने के लिए करता है.FragmentActivityकी सबक्लास में जोड़े गए सभी लिसनर, उस लिसनर के बाद चलेंगे. (I513da) - इस एपीआई का इस्तेमाल
AppCompatActivity, AppCompat 1.3.0-alpha02 में करता है.AppCompatActivityकी सबक्लास में जोड़े गए सभी लिसनर, उस लिसनर के बाद चलेंगे. (I513da)
- सस्पेंड करने वाले Kotlin एक्सटेंशन
गड़बड़ियां ठीक की गईं
ActivityResultFragmentVersionDetectorLint की जांच से जुड़ी समस्या को ठीक किया गया है. इस समस्या की वजह से, Lint 27.1.0 या इसके बाद के वर्शन का इस्तेमाल करते समय, Lint की जांच काम नहीं करती थी. (b/162155191)
वर्शन 1.2.0-alpha07
22 जुलाई, 2020
androidx.activity:activity:1.2.0-alpha07 और androidx.activity:activity-ktx:1.2.0-alpha07 रिलीज़ हो गए हैं. वर्शन 1.2.0-alpha07 में ये बदलाव शामिल हैं.
नई सुविधाएं
- एक नई
InvalidFragmentVersionForActivityResultलिंट जांच जोड़ी गई है. इससे यह पुष्टि की जाती है कि Activity Result API का इस्तेमाल करते समय, Fragment1.3.0-alpha07का इस्तेमाल किया जा रहा है. इससे “अमान्य अनुरोध कोड” की समस्याओं की वजह से रनटाइम क्रैश से बचा जा सकता है. साथ ही, Fragments के पुराने वर्शन का इस्तेमाल करने की वजह से, अनुमति के अनुरोधों के काम न करने की समस्या से भी बचा जा सकता है. (b/152554847)
बाहरी योगदान
RequestPermissionActivityResult कॉन्ट्रैक्ट के नतीजों को पार्स करते समय,ArrayIndexOutOfBoundsExceptionठीक किया गया. (I8f9e3, b/161057605)
वर्शन 1.2.0-alpha06
10 जून, 2020
androidx.activity:activity:1.2.0-alpha06 और androidx.activity:activity-ktx:1.2.0-alpha06 रिलीज़ हो गए हैं. वर्शन 1.2.0-alpha06 में ये बदलाव शामिल हैं.
नई सुविधाएं
- अब Kotlin में
ActivityResultक्लास को डिस्ट्रक्चर किया जा सकता है, ताकिrequestCodeऔरintentको सीधे तौर पर ऐक्सेस किया जा सके. (b/157212935) ActivityResultLauncherअब आपको उसActivityResultContractको पाने की अनुमति देता है जिसका इस्तेमाल लॉन्चर को रजिस्टर करने के लिए किया गया था. (b/156875743)
एपीआई में हुए बदलाव
- बदलाव:
ActivityResultRegistryपर मौजूदinvoke()तरीके का नाम बदलकरonLaunch()कर दिया गया है. (b/157496491) - अगर कोई नतीजा नहीं मिलता है, तो
OpenMultipleDocumentsअनुबंध अब रजिस्टर किए गए कॉलबैक कोnullके बजाय खाली सूची दिखाता है. (b/157348014)
वर्शन 1.2.0-alpha05
20 मई, 2020
androidx.activity:activity:1.2.0-alpha05 और androidx.activity:activity-ktx:1.2.0-alpha05 रिलीज़ हो गए हैं. वर्शन 1.2.0-alpha05 में ये बदलाव शामिल हैं.
नई सुविधाएं
ComponentActivityमेंViewका इस्तेमाल करते समय, लाइफ़साइकल2.3.0-alpha03सेViewTreeViewModelStoreOwnerऔर SavedState1.1.0-alpha01सेViewTreeSavedStateRegistryOwnerके काम करने की सुविधा जोड़ी गई है. (aosp/1297993, aosp/1300264)
एपीआई में हुए बदलाव
TakePictureअनुबंध अब थंबनेलBitmapके बजायbooleanदिखाता है. ऐसा इसलिए है, क्योंकि इमेज को दिए गएUriमें लिखते समय, कैमरा ऐप्लिकेशन में यह सुविधा बहुत कम मिलती थी. (b/154302879)ActivityResultLauncherपर मौजूदinvoke()एक्सटेंशन हटा दिए गए हैं. अबlaunch()का इस्तेमाल किया जाएगा, ताकि यह बेहतर तरीके से बताया जा सके कि ये एसिंक्रोनस ऑपरेशन हैं.ActivityResultLauncher<Void>औरActivityResultLauncher<Unit>के लिए,androidx.activity.resultपैकेज मेंlaunchके लिए Kotlin एक्सटेंशन जोड़े गए हैं. इनसेnullयाUnitको पास करने की ज़रूरत नहीं पड़ती. ये एक्सटेंशन, पहले केinvoke()एक्सटेंशन के जैसा ही काम करते हैं. (aosp/1304674, aosp/1304675)setFlagsMask()औरsetFlagsValues()के लिए,IntentSenderRequest.Builderतरीकों को मिलाकर एक हीsetFlags()तरीका बना दिया गया है. (aosp/1302111)
गड़बड़ियां ठीक की गईं
LifecycleOwnerके साथActivityResultCallbackरजिस्टर करते समय, उस समस्या को ठीक किया गया है जिसमें स्थितिSTARTEDपर पहुंचने से पहले ही कॉलबैक ट्रिगर हो जाता था. (aosp/1309744)
व्यवहार में बदलाव
ActivityResultRegistryअब अनुरोध कोड0के बजाय0xFFFFसे जनरेट करता है. इससे किसी गतिविधि मेंstartActivityForResult()याrequestPermissions()का इस्तेमाल करते समय, कोड के ओवरलैप होने की समस्या नहीं होती. (aosp/1302324)
वर्शन 1.2.0-alpha04
29 अप्रैल, 2020
androidx.activity:activity:1.2.0-alpha04 और androidx.activity:activity-ktx:1.2.0-alpha04 रिलीज़ हो गए हैं. वर्शन 1.2.0-alpha04 में ये बदलाव शामिल हैं.
नई सुविधाएं
- एक ऐसा अनुबंध जोड़ा गया है जो ActivityResult API के लिए, startIntentSenderForResult को कॉल कर सकता है. (b/153007517)
एपीआई में हुए बदलाव
prepareCall()तरीके का नाम बदलकरregisterForActivityResult()कर दिया गया है. यह बदलावComponentActivityऔर फ़्रैगमेंट1.3.0-alpha04, दोनों पर लागू हुआ है. (aosp/1278717)GetContents,OpenDocuments, औरRequestPermissionsअनुबंधों का नाम बदलकर, क्रमशःGetMultipleContents,OpenMultipleDocuments, औरRequestMultiplePermissionsकर दिया गया है. (aosp/1280161)ComponentActivityअबActivityResultRegisteryOwnerइंटरफ़ेस लागू करता है. (aosp/1290888)- -
ComponentActivityपर मौजूदstartActivityForResult()/onActivityResult()औरonRequestPermissionsResult()एपीआई को बंद कर दिया गया है. कृपया Activity Result APIs का इस्तेमाल करें. (b/154751887)
गड़बड़ियां ठीक की गईं
GetMultipleContentsऔरOpenMultipleDocumentsअनुबंधों का इस्तेमाल करते समय, अब एक आइटम चुनने पर उसे आपके कॉलबैक में सही तरीके से वापस कर दिया जाता है. (b/152941153)
वर्शन 1.2.0-alpha03
1 अप्रैल, 2020
androidx.activity:activity:1.2.0-alpha03 और androidx.activity:activity-ktx:1.2.0-alpha03 रिलीज़ हो गए हैं. वर्शन 1.2.0-alpha03 में ये बदलाव शामिल हैं.
नई सुविधाएं
ActivityResultContractsकी ओर से उपलब्ध कराए गए, पहले से बने अनुबंधों के सेट मेंTakeVideo,PickContact,GetContent,GetContents,OpenDocument,OpenDocuments,OpenDocumentTree, औरCreateDocumentअनुबंध जोड़े गए. (aosp/1262482, aosp/1266916, aosp/1268960)- Activity Result API अब
ActivityOptionsCompatके साथ, नतीजे के लिए कोई गतिविधि लॉन्च करने की सुविधा देते हैं. (b/151860054)
एपीआई में हुए बदलाव
TakePictureअनुबंध अबUriइनपुट लेता है, ताकि यह तय किया जा सके कि इमेज को कहां सेव किया जाना चाहिए. पिछले अनुबंध का नाम बदलकरTakePicturePreviewकर दिया गया है. इसमें कोई इनपुट नहीं लिया जाता है. (aosp/1262482)ActivityResultRegistryपर मौजूदregisterActivityResultCallback()तरीके का नाम बदलकरregister()कर दिया गया है. (aosp/1267621)ActivityResultLauncherपर मौजूदdispose()तरीके का नाम बदलकरunregister()कर दिया गया है. साथ ही,ActivityResultRegistryपर मौजूदunregisterResultCallback()को हटा दिया गया है. (aosp/1267621)ActivityResultContactकेcreateIntent()तरीके में अब इनपुट के साथ-साथContextभी लिया जाता है, ताकि साफ़ तौर पर इंटेंट बनाए जा सकें. (aosp/1238800)- अब
ActivityResultContract,startActivityForResultको कॉल किए बिना जवाब देने के लिए,getSynchronousResult()को बदल सकता है. इस कुकी का इस्तेमालRequestPermissionऔरRequestPermissionsअनुबंधों के लिए किया जाता है. इससे यह पक्का किया जाता है कि अगर अनुरोध की गई अनुमतियां पहले से ही दी गई हैं, तो ‘अनुमति दी गई’ स्थिति को सही तरीके से दिखाया जा सके. (b/151110799) - पहले उपलब्ध
Dialअनुबंध को हटा दिया गया है, क्योंकिDialका इस्तेमालstartActivityForResult()के साथ नहीं किया जा सकता.Intent(aosp/1266916) - गतिविधि के नतीजे दिखाने वाले कई ऐसे एपीआई हैं जिन्हें एक्सटेंड नहीं किया जा सकता. अब वे
finalहैं. इसमेंgetActivityResultRegistry(),prepareCall()के तरीके,invoke()को छोड़करActivityResultRegistryके सभी तरीके, और डिफ़ॉल्ट रूप से उपलब्ध कई ऐसे अनुबंध शामिल हैं जिनमें अतिरिक्त सुविधाओं का इस्तेमाल नहीं किया जा सकता. (b/152439361)
गड़बड़ियां ठीक की गईं
- कॉन्फ़िगरेशन में बदलाव के बाद, जब तक कॉलबैक फिर से रजिस्टर नहीं हो जाता, तब तक
ActivityResultRegistryमेंNullPointerExceptionकी समस्या ठीक कर दी गई है. अबActivityResultRegistryइन लंबित नतीजों को सेव करके रखता है और कॉलबैक के फिर से रजिस्टर होने पर उन्हें डिलीवर करता है. (b/152137004)
वर्शन 1.2.0-alpha02
18 मार्च, 2020
androidx.activity:activity:1.2.0-alpha02 और androidx.activity:activity-ktx:1.2.0-alpha02 रिलीज़ हो गए हैं. वर्शन 1.2.0-alpha02 में ये बदलाव शामिल हैं.
नई सुविधाएं
- ActivityResultRegistry:
ComponentActivityअब एकActivityResultRegistryउपलब्ध कराता है. इसकी मदद से,startActivityForResult()+onActivityResult()के साथ-साथrequestPermissions()+onRequestPermissionsResult()फ़्लो को भी हैंडल किया जा सकता है. इसके लिए, आपको अपनी गतिविधि या फ़्रैगमेंट में मौजूद तरीकों को बदलने की ज़रूरत नहीं होती. साथ ही,ActivityResultContractके ज़रिए टाइप की सुरक्षा को बेहतर बनाया जाता है. इसके अलावा, इन फ़्लो को टेस्ट करने के लिए हुक उपलब्ध कराए जाते हैं. अपडेट किया गया गतिविधि से नतीजा पाना लेख पढ़ें. (b/125158199)
वर्शन 1.2.0-alpha01
4 मार्च, 2020
androidx.activity:activity:1.2.0-alpha01 और androidx.activity:activity-ktx:1.2.0-alpha01 रिलीज़ हो गए हैं. वर्शन 1.2.0-alpha01 में ये बदलाव शामिल हैं.
नई सुविधाएं
- लाइफ़साइकल
2.3.0-alpha01में जोड़े गएViewTreeLifecycleOwner.get(View)एपीआई के लिए सहायता जोड़ी गई है, ताकि यह गतिविधि में सीधे तौर पर जोड़े गए किसी भी व्यू के लिए, गतिविधि कोLifecycleOwnerके तौर पर दिखा सके. (aosp/1182955)
गड़बड़ियां ठीक की गईं
- गतिविधि
1.1.0में हुई रिग्रेशन की समस्या को ठीक किया गया है. यह समस्या, प्लैटफ़ॉर्म के पुराने वर्शन पर ऐप्लिकेशन चलाने के दौरान होती थी. इसमेंonBackPressed()की वजह सेIllegalStateExceptionहोता था, क्योंकिandroid.app.FragmentManagerमें गड़बड़ी थी. (b/146290338)
वर्शन 1.1.0
वर्शन 1.1.0
22 जनवरी, 2020
androidx.activity:activity:1.1.0 रिलीज़ हो गया है. वर्शन 1.1.0 में ये बदलाव शामिल हैं.
1.0.0 के बाद हुए अहम बदलाव
- Lifecycle ViewModel SavedState इंटिग्रेशन:
SavedStateViewModelFactoryअब डिफ़ॉल्ट फ़ैक्ट्री है. इसका इस्तेमाल तब किया जाता है, जबby viewModels(),ViewModelProviderकंस्ट्रक्टर याViewModelProviders.of()का इस्तेमालComponentActivityया इसकी सबक्लास के साथ किया जाता है.
वर्शन 1.1.0-rc03
4 दिसंबर, 2019
androidx.activity:activity:1.1.0-rc03 और androidx.activity:activity-ktx:1.1.0-rc03 रिलीज़ हो गए हैं. वर्शन 1.1.0-rc03 में ये बदलाव शामिल हैं.
डिपेंडेंसी में बदलाव
- अब ऐक्टिविटी, लाइफ़साइकल
2.2.0-rc03और लाइफ़साइकल ViewModel SavedState1.0.0-rc03पर निर्भर करती है.
वर्शन 1.1.0-rc02
7 नवंबर, 2019
androidx.activity:activity:1.1.0-rc02 और androidx.activity:activity-ktx:1.1.0-rc02 रिलीज़ हो गए हैं. वर्शन 1.1.0-rc02 में ये बदलाव शामिल हैं.
डिपेंडेंसी में बदलाव
- ऐक्टिविटी अब लाइफ़साइकल
2.2.0-rc02पर निर्भर करती है.
वर्शन 1.1.0-rc01
23 अक्टूबर, 2019
androidx.activity:activity:1.1.0-rc01 और androidx.activity:activity-ktx:1.1.0-rc01 को 1.1.0-beta01 के बाद से बिना किसी बदलाव के रिलीज़ किया गया है. वर्शन 1.1.0-rc01 में ये बदलाव शामिल हैं.
वर्शन 1.1.0-beta01
9 अक्टूबर, 2019
androidx.activity:activity:1.1.0-beta01 और androidx.activity:activity-ktx:1.1.0-beta01 रिलीज़ हो गए हैं. वर्शन 1.1.0-beta01 में ये बदलाव शामिल हैं.
डिपेंडेंसी में बदलाव
- Activity अब SavedState 1.0.0 स्टेबल वर्शन पर निर्भर है.
वर्शन 1.1.0-alpha03
5 सितंबर, 2019
androidx.activity:activity:1.1.0-alpha03 और androidx.activity:activity-ktx:1.1.0-alpha03 रिलीज़ हो गए हैं. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
नई सुविधाएं
- अब ऐक्टिविटी, Core 1.1.0 स्टेबल वर्शन पर निर्भर करती है.
गड़बड़ियां ठीक की गईं
- अब ऐक्टिविटी, लाइफ़साइकल
2.2.0-alpha04पर निर्भर करती है.
वर्शन 1.1.0-alpha02
7 अगस्त, 2019
androidx.activity:activity:1.1.0-alpha02 और androidx.activity:activity-ktx:1.1.0-alpha02 रिलीज़ हो गए हैं. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
नई सुविधाएं
by viewModels(),ViewModelProviderकंस्ट्रक्टर याComponentActivity(b/135716331) के साथViewModelProviders.of()का इस्तेमाल करते समय, अबSavedStateViewModelFactoryका इस्तेमाल डिफ़ॉल्ट फ़ैक्ट्री के तौर पर किया जाता है
वर्शन 1.1.0-alpha01
2 जुलाई, 2019
androidx.activity:activity:1.1.0-alpha01 और androidx.activity:activity-ktx:1.1.0-alpha01 रिलीज़ हो गए हैं. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
नई सुविधाएं
activityअब लाइफ़साइकल2.2.0-alpha02पर निर्भर करता है. (aosp/1007817)activity-ktxनेlifecycle-runtime-ktxपर डिपेंडेंसी जोड़ी है.activity-ktxयाactivity-ktxपर निर्भर रहने वाली लाइब्रेरी (जैसे किfragment-ktx) का इस्तेमाल करते समय, अब आपको इसे अपनी डिपेंडेंसी में साफ़ तौर पर जोड़ने की ज़रूरत नहीं है. (aosp/987162)
वर्शन 1.0.0
वर्शन 1.0.0
5 सितंबर, 2019
androidx.activity:activity:1.0.0 और androidx.activity:activity-ktx:1.0.0 रिलीज़ हो गए हैं. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
1.0.0 वर्शन की मुख्य सुविधाएं
- ComponentActivity:
ComponentActivityFragment1.1.0मेंFragmentActivityके लिए नई बेस क्लास के तौर पर काम करता है. साथ ही, AppCompat1.1.0मेंAppCompatActivityके लिए भी काम करता है. - activity-ktx:
activity-ktxमॉड्यूल में, ViewModels को ऐक्सेस करने के लिएby viewModelsKotlin प्रॉपर्टी एक्सटेंशन शामिल है. Fragment1.1.0सेfragment-ktxको शामिल करने पर, यह मॉड्यूल अपने-आप शामिल हो जाता है. - OnBackPressedDispatcher:
onBackPressed()को बदलने के बजाय, अब किसी भीLifecycleOwner(जैसे कि फ़्रैगमेंट) सेOnBackPressedCallbackरजिस्टर किया जा सकता है, ताकि सिस्टम के बैक बटन के इवेंट को इंटरसेप्ट किया जा सके.activity-ktxमें, रिसीवर वर्शनaddCallbackवाला एक लैम्डा जोड़ा गया है. ज़्यादा जानकारी के लिए, बैक नेविगेशन को पसंद के मुताबिक बनाने से जुड़ा दस्तावेज़ देखें. - onRetainCustomNonConfigurationInstance को बंद किया गया:
onRetainCustomNonConfigurationInstance()और इससे जुड़ेgetLastCustomNonConfigurationInstance()एपीआई को बंद कर दिया गया है. हमारा सुझाव है कि कॉन्फ़िगरेशन के अलावा अन्य स्टेट को सेव करने के लिए, ViewModels का इस्तेमाल करें. ये कंपोज़ेबल समाधान उपलब्ध कराते हैं, जो किसी भीViewModelStoreOwnerके लिए सही होते हैं. इससे सेव किए गए ऑब्जेक्ट का मालिकाना हक साफ़ तौर पर पता चलता है. साथ ही, जब ऐक्टिविटी पूरी तरह से खत्म हो जाती है, तब रिसॉर्स को साफ़ करने के लिएonCleared()कॉलबैक उपलब्ध होता है.
वर्शन 1.0.0-rc01
2 जुलाई, 2019
androidx.activity:activity:1.0.0-rc01 और androidx.activity:activity-ktx:1.0.0-rc01 को 1.0.0-beta01 के बाद से बिना किसी बदलाव के रिलीज़ किया गया है. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
वर्शन 1.0.0-beta01
5 जून, 2019
androidx.activity::activity:1.0.0-beta01 और androidx.activity:activity-ktx:1.0.0-beta01 को 1.0.0-alpha08 के बाद से बिना किसी बदलाव के रिलीज़ किया गया है. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
वर्शन 1.0.0-alpha08
7 मई, 2019
androidx.activity:activity:1.0.0-alpha08 और androidx.activity:activity-ktx:1.0.0-alpha08 रिलीज़ हो गए हैं. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
एपीआई में हुए बदलाव
- बदलाव:
ComponentActivityपर पहले से बंद किए गएaddOnBackPressedCallbackऔरremoveOnBackPressedCallbackतरीकों को हटा दिया गया है. aosp/953857 OnBackPressedCallbackकेsetEnabled()औरisEnabled()तरीके अब फ़ाइनल हो गए हैं. b/131416833OnBackPressedCallbackकेremove()तरीके को अब फ़ाइनल कर दिया गया है. aosp/952720OnBackPressedDispatcherमें अब सार्वजनिक कंस्ट्रक्टर हैं. इनकी मदद से, टेस्टिंग वगैरह के लिए अपने इंस्टेंस बनाए जा सकते हैं. aosp/953431ComponentActivityके लिएonBackPressed()को अब साफ़ तौर पर@MainThreadaosp/952721 के तौर पर मार्क किया गया है
गड़बड़ियां ठीक की गईं
LifecycleOwnerकी मदद से जोड़े गएOnBackPressedCalbackकेhandleOnBackPressed()तरीके सेremove()को कॉल करते समय होने वालीConcurrentModificationExceptionको ठीक किया गया. b/131765095
वर्शन 1.0.0-alpha07
25 अप्रैल, 2019
androidx.activity:activity:1.0.0-alpha07 और androidx.activity:activity-ktx:1.0.0-alpha07 रिलीज़ हो गए हैं. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
एपीआई में हुए बदलाव
इस रिलीज़ में, onBackPressed() को मैनेज करने के तरीके में अहम बदलाव किए गए हैं. ज़्यादा जानकारी के लिए, अपडेट किया गया कस्टम बैक का दस्तावेज़ देखें.
OnBackPressedCallbackऔरOnBackPressedDispatcherके तरीकों को@MainThreadके तौर पर मार्क किया गया है. (aosp/943813)handleOnBackPressed()वाला तरीका अबbooleanनहीं दिखाता. इसके बजाय,OnBackPressedCallbackअब एक ऐब्स्ट्रैक्ट क्लास है. इसे चालू या बंद किया जा सकता है.isEnabled()तरीके के 'सही है' पर सेट होने पर हीhandleOnBackPressed()को कॉल किया जाएगा. इसमें आपको बैक बटन को ज़रूर हैंडल करना होगा. (aosp/944518)OnBackPressedDispatcherकेaddCallbackतरीके अबCancellableइंस्टेंस नहीं दिखाते.OnBackPressedCallbackमें अब एकremove()तरीका शामिल है, जो इस सुविधा को पूरा करता है. इससे आपकोhandleOnBackPressed()के दौरानremove()को कॉल करने की अनुमति मिलती है. (aosp/944519) (aosp/946316)activity-ktxमें अबaddCallbackके लिए, रिसीवर के स्कोप वाला कॉलबैक शामिल है. यहhandleOnBackPressed()को लागू करने वाले लैम्ब्डा को स्वीकार करता है. साथ ही, इसके पासisEnabledऔरremove()का ऐक्सेस होता है (aosp/944520)
वर्शन 1.0.0-alpha06
3 अप्रैल, 2019
androidx.activity:activity:1.0.0-alpha06 और androidx.activity:activity-ktx:1.0.0-alpha06 रिलीज़ हो गए हैं. इस वर्शन में शामिल बदलाव यहां देखे जा सकते हैं.
एपीआई में हुए बदलाव
- ComponentActivity में अब दूसरा कंस्ट्रक्टर शामिल है, जो
@LayoutRes intलेता है. यह आपकी AppCompatActivity क्लास को@ContentViewके साथ एनोटेट करने के पिछले तरीके की जगह लेता है. यह तरीका, ऐप्लिकेशन और लाइब्रेरी मॉड्यूल, दोनों में काम करता है. (b/128352521) - ComponentActivity पर मौजूद
OnBackPressedCallbackसे जुड़े एपीआई को बंद कर दिया गया है. अबOnBackPressedDispatcherका इस्तेमाल किया जा सकता है. इसेgetOnBackPressedDispatcher()के ज़रिए वापस पाया जा सकता है. (aosp/922523) OnBackPressedDispatcherमें नयाOnBackPressedCallbackजोड़ने के तरीके अबCancellableऑब्जेक्ट दिखाते हैं. इससेOnBackPressedDispatcherके लिए साफ़ तौर पर रेफ़रंस दिए बिना, कॉलबैक को हटाया जा सकता है. (aosp/922523)- अब किसी
LifecycleOwnerसे जुड़ेLifecycleOwnerको जोड़ने पर, लाइफ़साइकल शुरू होने परOnBackPressedCallbackजुड़ जाता है और लाइफ़साइकल बंद होने परOnBackPressedCallbackहट जाता है. (aosp/922523)
वर्शन 1.0.0-alpha05
13 मार्च, 2019
androidx.activity:activity:1.0.0-alpha05 और
androidx.activity:activity-ktx:1.0.0-alpha05 रिलीज़ हो गए हैं. इस रिलीज़ में शामिल सभी बदलाव की पूरी सूची यहां देखी जा सकती है.
नई सुविधाएं
@ContentViewएनोटेशन लुकअप अब कैश मेमोरी में सेव किए जाते हैं (b/123709449)
वर्शन 1.0.0-alpha04
30 जनवरी, 2019
androidx.activity:activity 1.0.0-alpha04 और androidx.activity:activity-ktx 1.0.0-alpha04 रिलीज़ हो गए हैं.
नई सुविधाएं
@ContentViewक्लास एनोटेशन के लिए सहायता जोड़ी गई है. इससे यह तय किया जा सकता है किsetContentView()का इस्तेमाल करने के बजाय, किस लेआउट एक्सएमएल फ़ाइल को इनफ़्लेट किया जाना चाहिए. (aosp/837619)
एपीआई में हुए बदलाव
- यह नोट जोड़ा गया है कि
getViewModelStore()को बदला नहीं जाना चाहिए. साथ ही, इसे आने वाले समय में रिलीज़ होने वाले वर्शन में फ़ाइनल कर दिया जाएगा. अगर फ़िलहाल इस तरीके को बदला जा रहा है, तो कृपया सुविधा के लिए अनुरोध सबमिट करें. (aosp/837619)
गड़बड़ियां ठीक की गईं
activityमॉड्यूल अबactivity-ktxमॉड्यूल की डिपेंडेंसी से मेल खाने के लिए, ViewModel के वर्शन 2.1.0-alpha02 पर निर्भर करता है.
वर्शन 1.0.0-alpha03
17 दिसंबर, 2018
androidx.activity 1.0.0-alpha03 रिलीज़ हो गया है.
नई सुविधाएं
- ComponentActivity अब
BundleSavedStateRegistryOwnerको लागू करता है और नई रिलीज़ की गई SavedState लाइब्रेरी [aosp/815133] पर निर्भर करता है - ComponentActivity अब Android फ़्रेमवर्क की उस गड़बड़ी को ठीक करता है जिसकी वजह से InputMethodManager, फ़ोकस किए गए आखिरी व्यू को लीक कर देता था [b/37122102]
वर्शन 1.0.0-alpha02
3 दिसंबर, 2018
एपीआई में हुए बदलाव
- यह नोट जोड़ा गया है कि
getLifecycle()को बदला नहीं जाना चाहिए. साथ ही, इसे आने वाले समय मेंfinalबना दिया जाएगा. अगर आपको इस तरीके को अभी बदलना है, तो कृपया सुविधा के लिए अनुरोध सबमिट करें. (aosp/815834)
वर्शन 1.0.0-alpha01
5 नवंबर, 2018
androidx.activity 1.0.0-alpha01 में ComponentActivity को पेश किया गया है. यह मौजूदा FragmentActivity और AppCompatActivity की नई बेस क्लास है.
नई सुविधाएं
- अब
addOnBackPressedCallbackके ज़रिएOnBackPressedCallbackरजिस्टर किया जा सकता है. इससे आपकोonBackPressed()कॉलबैक मिलेंगे. इसके लिए, आपको अपनी गतिविधि में तरीके को बदलने की ज़रूरत नहीं होगी. ComponentActivityसेViewModels को वापस पाने के लिए, एक नयाby viewModels()Kotlin प्रॉपर्टी डेलिगेट जोड़ा गया है.onStop()में, इनपुट इवेंट (जैसे कि क्लिक) अब रद्द कर दिए जाते हैं.
एपीआई में हुए बदलाव
LifecycleOwnerऔरViewModelStoreOwnerको लागू करने की सुविधा कोFragmentActivityसेComponentActivityमें ले जाया गया है.onRetainCustomNonConfigurationInstanceका अब इस्तेमाल नहीं किया जा सकता. कॉन्फ़िगरेशन में बदलाव होने पर भी जिन ऑब्जेक्ट को सुरक्षित रखना है उन्हें सेव करने के लिए,ViewModelका इस्तेमाल करें.