गतिविधि

गतिविधि के आधार पर बनाए गए, कंपोज किए जा सकने वाले एपीआई ऐक्सेस करें.
नया अपडेट रिलीज़ किया गया जांचा और परखा हुआ वर्शन रिलीज़ कैंडिडेट बीटा रिलीज़ ऐल्फ़ा रिलीज़
30 अक्टूबर, 2024 1.9.3 - - 1.10.0-alpha03

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

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

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

ग्रूवी

dependencies {
    def activity_version = "1.9.2"

    // Java language implementation
    implementation "androidx.activity:activity:$activity_version"
    // Kotlin
    implementation "androidx.activity:activity-ktx:$activity_version"
}

Kotlin

dependencies {
    val activity_version = "1.9.2"

    // Java language implementation
    implementation("androidx.activity:activity:$activity_version")
    // Kotlin
    implementation("androidx.activity:activity-ktx:$activity_version")
}

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

सुझाव

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

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

ज़्यादा जानकारी के लिए, समस्या को ट्रैक करने वाले टूल से जुड़ा दस्तावेज़ देखें.

वर्शन 1.10

वर्शन 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 अपना कॉलबैक ट्रिगर नहीं करेगा. इससे, नेविगेशन कंपोज़ से 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 को नहीं भेजते. हालांकि, वे OEM और सिस्टम ऐप्लिकेशन को फ़ॉलबैक के तौर पर फ़ोटो पिकर का बेहतर अनुभव देने के लिए, सार्वजनिक ACTION_SYSTEM_FALLBACK_PICK_IMAGES कार्रवाई और उससे जुड़ी अन्य सुविधाओं का इस्तेमाल करते हैं. जिन डिवाइसों पर Google Play services का नया वर्शन है उन पर इस बदलाव का कोई असर नहीं पड़ेगा. (I3513d)

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

  • नए प्लैटफ़ॉर्म एपीआई के ऐक्सेस की मैन्युअल आउटलाइन हटाई गई. ऐसा इसलिए, क्योंकि AGP 7.3 या उसके बाद के वर्शन (जैसे कि R8 वर्शन 3.3) के साथ R8 का इस्तेमाल करने पर और एजीपी 8.1 या उसके बाद के वर्शन (जैसे कि D8 वर्शन 8.1) के साथ, R8 का इस्तेमाल करने पर ऐसा अपने-आप होता है. जिन क्लाइंट ने AGP का इस्तेमाल नहीं किया है उन्हें D8 के 8.1 या उसके बाद के वर्शन पर अपडेट करने का सुझाव दिया जाता है. ज़्यादा जानकारी के लिए यह लेख देखें. (I9496c, b/345472586)
  • गतिविधि 1.9.2 से: एक समस्या को ठीक किया गया है. इसमें, Activity Compose PredictiveBackHandler API उस फ़्रेम पर सिस्टम के 'वापस जाएं' जेस्चर को मैनेज करता रहता था जिस पर इसे बंद किया गया था. इसकी वजह से, 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 अपने कॉलबैक को ट्रिगर नहीं करेगा. इससे, नेविगेशन कंपोज़ से 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 में ये lthcocommits शामिल हैं.

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

  • एक समस्या को ठीक किया गया है. इसमें, Activity Compose PredictiveBackHandler API उस फ़्रेम पर सिस्टम के बैक जेस्चर को मैनेज करता रहता था जिस पर इसे बंद किया गया था. इसकी वजह से, 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() को कॉल करने पर चेतावनी देते हैं. ऐसा इसलिए, क्योंकि इससे प्रिडिक्टिव बैक ऐनिमेशन हमेशा बंद हो जाएगा. ज़्यादा जानकारी के लिए, सबसे सही तरीके बताने वाली गाइड देखें.
  • बाकी बचे Activity API को 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 में ये कमिट शामिल हैं.

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

वर्शन 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 वर्शन में ये बदलाव शामिल हैं.

लिंट की चेतावनी

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

  • अगर पहले से चल रहे प्रेडिक्टिव बैक जेस्चर के दौरान शुरू किए गए सिस्टम से कोई पिछला इवेंट भेजा जाता है, तो अभी चल रहा अनुमानित वापस जाने का जेस्चर रद्द कर दिया जाता है और नया बैक इवेंट नया अनुमानित वापस जेस्चर शुरू करने के लिए उसकी जगह ले लेता है. (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 में फिर से लिखा गया है. ActivityResult Kotlin एक्सटेंशन, resultCode और data फ़ील्ड में डेस्ट्रक्चर करने की सुविधा देते हैं. इन्हें activity-ktx से activity में ले जाया गया है. (I0565a)
  • ComponentActivity और trackPipAnimationHintView के लिए, by viewModels() के Kotlin एक्सटेंशन को activity-ktx से activity में ले जाया गया है. activity-ktx आर्टफ़ैक्ट अब पूरी तरह से खाली है. (I0a444)

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

  • enableEdgeToEdge एपीआई को अब किसी भी डिसप्ले कटआउट के आस-पास इस्तेमाल किया जा सकता है. (a3644b, b/311173461)
  • गतिविधि 1.8.2 से: फ़ोटो पिकर गतिविधि अनुबंध के ACTION_SYSTEM_FALLBACK_PICK_IMAGES में दी गई अतिरिक्त जानकारी को ठीक किया गया, ताकि "com.google.android.gms.provider.extra.PICK_IMAGES_MAX" कुंजी के साथ अतिरिक्त का इस्तेमाल करने के बजाय, उसे EXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX की सही तरीके से पास किया जा सके. अगर आप OEM हैं और आपने सिस्टम फ़ॉलबैक फ़ोटो पिकर लागू किया है, तो हमारा सुझाव है कि आप दोनों एक्सट्रा फ़ीचर के साथ काम करने के लिए, सिस्टम फ़ॉलबैक फ़ोटो पिकर लागू करें. इससे, ज़्यादा से ज़्यादा डिवाइसों के साथ काम करने की सुविधा मिलती है. (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 ज़रूरी है. यह वही लेवल है जो PickVisualMedia गतिविधि के नतीजे के लिए कॉन्ट्रैक्ट के लिए ज़रूरी है. (Id6e21)

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

वर्शन 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" कुंजी के साथ अतिरिक्त जानकारी का इस्तेमाल करने के बजाय, EXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX कुंजी को सही तरीके से पास किया जा सकेगा. अगर आप OEM हैं और आपने सिस्टम फ़ॉलबैक फ़ोटो पिकर लागू किया है, तो हमारा सुझाव है कि आप दोनों एक्सट्रा फ़ीचर के साथ काम करने के लिए, सिस्टम फ़ॉलबैक फ़ोटो पिकर लागू करें. इससे, ज़्यादा से ज़्यादा डिवाइसों के साथ काम करने की सुविधा मिलती है. (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() कॉलबैक में, पीछे जाने पर जेस्चर शुरू होने पर मिलने वाले कॉलबैक को भी शामिल किया गया है. यह PredictiveBackHandler Composable के साथ भी आता है, ताकि Activity Compose में, अनुमानित बैक जेस्चर इवेंट को मैनेज किया जा सके. यह BackEventCompat ऑब्जेक्ट का एक फ़्लो उपलब्ध कराता है. आपको दिए गए निलंबित किए गए lamba फ़ंक्शन में, इन ऑब्जेक्ट को इकट्ठा करना होगा:
  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 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

  • गतिविधि कंपोज़ करने की सुविधा में, PredictiveBackHandler Composable जोड़ा गया है. इससे, अनुमानित बैक जेस्चर इवेंट को मैनेज किया जा सकता है. यह BackEventCompat ऑब्जेक्ट का Flow दिखाता है. आपको इन ऑब्जेक्ट को, दिए गए निलंबित किए गए lamba में इकट्ठा करना होगा:

    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)

  • ComponentActivity में मौजूद onBackPressedDispatcher को अब धीरे-धीरे शुरू किया जाता है, ताकि यह सिर्फ़ ज़रूरत पड़ने पर बनाया जाए. (I0bf8e)

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

  • अगर ComponentActivity को onBackPressed() कॉलबैक मिलता है, तो Android 13 पर एनपीई नहीं दिखेगा और गतिविधि पहले से ही 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)

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

  • SystemBarStyle.auto को enableEdgeToEdge एपीआई में पास करते समय, अब 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 इंस्टेंस मिलता है. OnBackPressedDispatcher पर मौजूद, @VisibleForTesting के बराबर के एपीआई भी अपडेट कर दिए गए हैं.
  • 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 रिलीज़ हो गए हैं. इसे किसी इंटरनल शाखा से रिलीज़ किया गया था.

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

  • Activity 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)

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

  • एक समस्या को ठीक किया गया है. इस समस्या की वजह से, फ़्रैगमेंट, मेन्यूहोस्ट को गलत तरीके से अमान्य कर रहे थे. इस वजह से, गतिविधि में मौजूद अन्य मेन्यू का व्यवहार अनचाहा हो रहा था. (I9404e, b/244336571)

अन्य बदलाव

  • ActivityResultRegister में अब Java के बजाय, Kotlin Random का इस्तेमाल किया जाता है. (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.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 के उपलब्ध न होने पर, एक और फ़ॉलबैक शामिल किया जा सके. इससे OEM और Google Play services जैसे सिस्टम ऐप्लिकेशन, फ़ॉलबैक ऐक्शन लागू करके, Android डिवाइसों और एपीआई लेवल की एक बड़ी रेंज पर फ़ोटो पिकर का बेहतर अनुभव दे पाएंगे. अगर यह फ़ॉलबैक उपलब्ध होगा, तो फ़ोटो पिकर इसका इस्तेमाल करेगा. इसके बाद, यह Intent.ACTION_OPEN_DOCUMENT का इस्तेमाल करेगा. Intent.ACTION_OPEN_DOCUMENT, एपीआई 19 और उसके बाद के वर्शन वाले सभी डिवाइसों पर काम करता है.
  • ComponentDialog अब SavedStateRegistryOwner लागू करता है और उसके पास अपने SavedStateRegistry का ऐक्सेस होता है. साथ ही, वह अपने ViewTree के लिए SavedStateRegistryOwner सेट करता है. अब ComponentDialog में Jetpack Compose का इस्तेमाल किया जा सकता है, क्योंकि यह ViewTree एपीआई की ज़रूरी शर्तों के ज़रिए, विंडो से जुड़े LifecycleOwner और SavedStateRegistryOwner, दोनों को पूरा करता है.
  • IntentSenderRequest.Builder.setFlags() की मदद से, अब Intent से एक से ज़्यादा फ़्लैग सेट किए जा सकते हैं.

Kotlin की कन्वर्ज़न

ऐक्टिविटी क्लास को Kotlin में बदल दिया गया है. बदली गई सभी कक्षाएं, अब भी पिछले वर्शन के साथ बाइनरी के तौर पर काम करती हैं. यहां दी गई क्लास में, Kotlin में लिखी गई क्लास के लिए सोर्स के साथ काम न करने वाले बदलाव किए गए हैं: ActivityResultRegistryOwner, OnBackPressedDispatcherOwner.

नीचे दी गई टेबल में, गतिविधि के नए वर्शन के लिए सोर्स कन्वर्ज़न की जानकारी दी गई है:

गतिविधि 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 रनटाइम को सिग्नल करना, ताकि यह पक्का किया जा सके कि मल्टी-फ़्रेम स्टार्टअप क्रम के दौरान चलने वाले सभी कोड को शामिल किया गया है और बैकग्राउंड में कंपाइलेशन के लिए प्राथमिकता दी गई है.
  • जब आपके ऐप्लिकेशन को स्टार्टअप मेट्रिक के लिए पूरी तरह से तैयार माना जाना चाहिए, तब मैक्रोबेंचमार्क और Play की ज़रूरी जानकारी देने वाली सुविधा को सिग्नल भेजना, ताकि परफ़ॉर्मेंस को ट्रैक किया जा सके.

अलग-अलग कंपोज़ेबल में मौजूद FullyDrawnReporter को आसानी से इस्तेमाल करने के लिए, ऐक्टिविटी कंपोज़ की सुविधा के तीन एपीआई जोड़े गए हैं:

  • ReportDrawn से पता चलता है कि आपका कॉम्पोज़ेबल, इंटरैक्शन के लिए तुरंत तैयार है.
  • ReportDrawnWhen एक प्रीडिकेट (यानी, list.count > 0) का इस्तेमाल करें. इससे यह पता चलता है कि आपका कॉम्पोज़ेबल इंटरैक्शन के लिए कब तैयार है.
  • ReportDrawnAfter, निलंबित करने का एक तरीका अपनाता है. यह तरीका पूरा होने पर, यह पता चलता है कि आप इंटरैक्शन के लिए तैयार हैं.

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

वर्शन 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 वर्शन में ये बदलाव शामिल हैं.

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

  • MediaStore.ACTION_PICK_IMAGES के उपलब्ध न होने पर, PickVisualMedia और PickMultipleVisualMedia कॉन्ट्रैक्ट में फ़ॉलबैक के तौर पर इस्तेमाल की जाने वाली कार्रवाई और एक्सट्रा, अब सार्वजनिक कॉन्स्टेंट हैं. ये कॉन्स्टेंट, OEM और सिस्टम ऐप्लिकेशन को एपीआई की स्थिरता देते हैं, ताकि वे फ़ोटो पिकर का बेहतर अनुभव दे सकें. फ़ॉलबैक मोड को अब भी सिर्फ़ सिस्टम ऐप्लिकेशन के लिए लागू किया गया है. (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() API को बंद कर दिया गया है. यह सिर्फ़ 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 APIs की ज़रूरी शर्तों के ज़रिए, विंडो से जुड़े 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 से: 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 एपीआई

ComponentActivity अब एक FullyDrawnReporter इंस्टेंस उपलब्ध कराता है. इससे कई कॉम्पोनेंट, इंटरैक्शन के लिए तैयार होने पर रिपोर्ट कर सकते हैं. ComponentActivity आपकी ओर से reportFullyDrawn() को कॉल करने से पहले, सभी कॉम्पोनेंट के पूरा होने का इंतज़ार करेगा. ये एपीआई, समय से जुड़ी ज़रूरी शर्तों को पूरा करते हैं. साथ ही, इन्हें onDraw कॉल के हिस्से के तौर पर कॉल करने की ज़रूरत नहीं होती.

इन एपीआई को चालू करने का सुझाव दिया जाता है:

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

अलग-अलग कॉम्पोज़ेबल से 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 में ये कमियां शामिल हैं.

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

  • maxItems की डिफ़ॉल्ट वैल्यू का इस्तेमाल करने पर, Android R डिवाइसों पर PickMultipleVisualMedia गतिविधि के नतीजे का अनुबंध लॉन्च न होने की समस्या को ठीक किया गया. (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, अब OnBackInvokedCallback को PRIORITY_OVERLAY के बजाय PRIORITY_DEFAULT के साथ रजिस्टर करता है. (I3901f)
  • ComponentActivity को बढ़ाने वाली क्लास के दोनों onMultiWindowModeChanged() कॉलबैक हमेशा भेजे जाएंगे. (Ic4d85)
  • जब launch कॉल पर Exception कॉल आता है, तो ActivityResultRegistry, ActivityResultCallback को कोई नतीजा नहीं दिखाएगा. साथ ही, कॉलबैक को LifecycleOwner के बिना रजिस्टर किया गया होगा. (Ia7ff7, b/238350794)
  • ComponentActivity, अब आपकी गतिविधि में सुपर फ़ंक्शन को कॉल किए बिना, मेन्यू से सही तरीके से कॉल भेजेगा. (Ie33c5, b/238057118)

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

वर्शन 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 वर्शन में ये कमिट शामिल हैं.

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

  • SDK टूल के 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 को रिलीज़ से पहले की निजी शाखा में डेवलप किया गया था. इसमें कोई सार्वजनिक कमिट नहीं है.

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

  • Tiramisu Beta 3 SDK के साथ अलाइन करने के लिए, minCompileSdk अब 33 है

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

  • PickVisualMedia ActivityResultContract के लिए SDK टूल के एक्सटेंशन की जांच करते समय, पुराने डिवाइसों पर क्रैश होने की समस्या को ठीक किया गया है. इससे, यह अब 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 के लिए डेवलपर झलक 2 SDK टूल के हिसाब से कंपाइल किया जाएगा.

नई सुविधाएं

  • Android 13 के डेवलपर प्रीव्यू 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)

डिपेंडेंसी अपडेट करना

वर्शन 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 अब लाइफ़साइकल 2.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 वर्शन में ये बदलाव शामिल हैं.

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

वर्शन 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 वर्शन में ये बदलाव शामिल हैं.

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

  • अब CreationExtras को गतिविधि by viewModels() फ़ंक्शन (I6a3e6, b/217600303) में पास किया जा सकता है

वर्शन 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 के साथ इंटिग्रेट हो गया है. इसे लाइफ़साइकल 2.5.0-alpha01 के हिस्से के तौर पर लॉन्च किया गया था. (Ie7e00, b/207012584)
  • ComponentDialog जोड़ा गया, जो Dialog का एक सबक्लास है. इसमें एक OnBackPressedDispatcher शामिल है, जिसे डायलॉग दिखने पर, सिस्टम के 'वापस जाएं' बटन को दबाने पर कॉल किया जाएगा. अहम बात यह है कि यह सब-क्लास भी ViewTreeOnBackPressedDispatcherOwner को सेट करती है. इससे व्यू को एक सामान्य तरीके से सही डिस्पैचर का पता लगाने में मदद मिलती है, भले ही वह ComponentActivity या ComponentDialog में मौजूद हो. (I8a1bc)
  • ComponentActivity अब नया OnNewIntentProvider इंटरफ़ेस लागू करता है, ताकि किसी भी कॉम्पोनेंट को ये इवेंट मिल सकें. (If1f8b)
  • ComponentActivity अब नया OnConfigurationChangedProvider इंटरफ़ेस लागू करता है, ताकि किसी भी कॉम्पोनेंट को ये इवेंट मिल सकें. (If623b)
  • ComponentActivity अब नया OnTrimMemoryProvider इंटरफ़ेस लागू करता है, ताकि किसी भी कॉम्पोनेंट को ये इवेंट मिल सकें. (Ia9295)

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

  • ActivityResultContracts.CreateDocument के लिए, बिना पैरामीटर वाले कंस्ट्रक्टर का इस्तेमाल बंद कर दिया गया है.साथ ही, इसे एक नए कंस्ट्रक्टर से बदल दिया गया है. यह कंस्ट्रक्टर, कॉन्क्रीट MIME टाइप (उदाहरण के लिए, "image/png") को Intent.ACTION_CREATE_DOCUMENT के मुताबिक सेट किया गया है. (I2bec6)
  • किसी व्यू से जुड़े OnBackPressedDispatcherOwner को अब Context को कास्ट करने के बजाय, ViewTreeOnBackPressedDispatcherOwner की मदद से वापस पाया जा सकता है. (I74685)

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

  • registerForActivityResult() कॉलबैक से पहली बार ViewModel को ऐक्सेस करते समय क्रैश होने की समस्या को ठीक किया गया. साथ ही, 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)

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

  • Kotlin में ActivityResultContract क्लास को फिर से लिखा गया है, ताकि यह पक्का किया जा सके कि 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)

बाहरी योगदान

  • ActivityResult दस्तावेज़ में टाइपिंग की गलती को ठीक करने के लिए, dmitrilc को धन्यवाद. (#221)

वर्शन 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 पर निर्भर करती है.
  • गतिविधि लिखने की सुविधा अब 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 वर्शन में ये बदलाव शामिल हैं.

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

  • Activity Compose आर्टफ़ैक्ट - activity-compose आर्टफ़ैक्ट, किसी गतिविधि में Jetpack Compose यूज़र इंटरफ़ेस को होस्ट करने के लिए, setContent एक्सटेंशन का तरीका उपलब्ध कराता है. साथ ही, सिस्टम के 'वापस जाएं' बटन और Activity Result API को मैनेज करने के लिए, ComponentActivity एपीआई के साथ इंटरैक्ट करने के लिए Compose के खास रैपर उपलब्ध कराता है. ज़्यादा जानकारी के लिए, दस्तावेज़ देखें.
  • कैप्चरवीडियो कॉन्ट्रैक्ट - CaptureVideo ActivityResultContract, अब काम नहीं करने वाले TakeVideo कॉन्ट्रैक्ट की जगह ले लेता है और सक्सेस मैसेज दिखाने वाला बूलियन दिखाता है जो कई कैमरा ऐप्लिकेशन पर काम करता है.
  • 'पिक्चर में पिक्चर' मोड के हिंट व्यू को ट्रैक करना - 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 को अपडेट किया गया, ताकि यह लिखें 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 में ये कमियां हैं.

नई सुविधाएं

  • नया CaptureVideo ActivityResultContract, आपके ActivityResultCallback में एक बोलियन वैल्यू दिखाता है. इससे पता चलता है कि आपका वीडियो, दिए गए यूआरआई में सेव हो गया है या नहीं. यह अब काम न करने वाले TakeVideo कॉन्ट्रैक्ट की जगह ले लेता है. ऐसा इसलिए है, क्योंकि कैमरा ऐप्लिकेशन बहुत कम ही थंबनेल बिटमैप दिखाते हैं. इससे नतीजा काम का नहीं होता. (Ie21f2, b/185938070)
  • जब भी व्यू में बदलाव होता है, तो PipParams के सोर्स रेक्ट के हिंट को अपडेट करने के लिए नया एपीआई Activity#setPipAnimationHintView जोड़ा गया है. (I9063d)

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

  • rememberLauncherForActivityResult फ़ंक्शन अब ऐसा लॉन्चर दिखाता है जो unregister() फ़ंक्शन का इस्तेमाल नहीं करता. लॉन्चर को रजिस्टर और अनरजिस्टर करने की प्रोसेस, rememberLauncherForActivityResult अपने-आप मैनेज करता है. (I2443e)

Compose के साथ काम करने वाले डिवाइस

  • 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)
  • Unit इनपुट वाले कस्टम ActivityResultContract के साथ, launch() तरीके के एक्सटेंशन का इस्तेमाल करने से, अब NullPointerException (I76282, b/183837954) की समस्या नहीं होगी

वर्शन 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 में ये कमियां हैं.

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

  • Activity 1.2.2 से: InvalidFragmentVersionForActivityResult लिंट जांच में एक समस्या को ठीक किया गया है. इसकी वजह से, Fragment 1.3.1 या उसके बाद के वर्शन का इस्तेमाल करने पर, गलत तरीके से सही के तौर पर मार्क किया जा रहा था. (I54da1, b/182388985)
  • Activity 1.2.2 से: ComponentActivity अब किसी ऐसे ActivityResultContract से Intent लॉन्च करते समय ClassNotFoundException से बचता है जिसे पहले किसी दूसरे Intent में एक्सट्रा के तौर पर रखा गया था. (Ieff05, b/182906230)

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

वर्शन 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)
  • ऐक्टिविटी कंपोज़ अब रनटाइम क्लासपाथ पर टेस्ट डिपेंडेंसी नहीं जोड़ती. (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 एपीआई का इस्तेमाल करके, Composable को सिस्टम के 'वापस जाएं' बटन को इंटरसेप्ट करने की अनुमति दी जा सकती है. (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 वर्शन में ये बदलाव शामिल हैं.

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

  • Activity 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() वाले तरीके के एक्सटेंशन को, Unit इनपुट वाले कस्टम ActivityResultContract के साथ इस्तेमाल करने पर, अब NullPointerException नहीं दिखेगा (I76282, b/183837954)
  • फ़्रेगमेंट के नए वर्शन के स्नैपशॉट, ऐल्फ़ा, बीटा या आरसी बिल्ड का इस्तेमाल करते समय, आपको फ़्रेगमेंट 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)

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

वर्शन 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 नतीजे के एपीआई: ComponentActivity अब ActivityResultRegistry की सुविधा देता है. इसकी मदद से, startActivityForResult()+onActivityResult() के साथ-साथ requestPermissions()+onRequestPermissionsResult() फ़्लो को मैनेज किया जा सकता है. ऐसा, आपकी ऐक्टिविटी या फ़्रैगमेंट में किए गए तरीकों को बदले बिना किया जाता है. इसकी मदद से, ActivityResultContract के ज़रिए ज़्यादा सुरक्षित तरीके से काम किया जा सकता है और इन फ़्लो की जांच की जा सकती है. गतिविधि से नतीजा पाना सेक्शन में अपडेट देखें.
  • ContextAware: ComponentActivity अब ContextAware को लागू करता है. इससे, एक या उससे ज़्यादा OnContextAvailableListener इंस्टेंस जोड़े जा सकते हैं. इन इंस्टेंस को Activity.onCreate() बेस से पहले कॉलबैक मिलेगा.

    • सस्पेंड करने वाले Kotlin एक्सटेंशन withContextAvailable() की मदद से, कॉन्टेक्स्ट उपलब्ध होने पर नतीजा दिखाने वाला ब्लॉक चलाया जा सकता है.
    • FragmentManager की स्थिति को वापस लाने के लिए, FragmentActivity Fragment 1.3.0 में इस एपीआई का इस्तेमाल करता है. FragmentActivity के सबक्लास में जोड़े गए सभी लिसनर, उस लिसनर के बाद चलेंगे.
    • AppCompatActivity, AppCompat 1.3.0-alpha02 या इसके बाद के वर्शन में इस एपीआई का इस्तेमाल करता है. AppCompatActivity के सबक्लास में जोड़े गए सभी लिसनर, उस लिसनर के बाद चलेंगे.
  • ViewTree सहायता: ComponentActivity अब Lifecycle 2.3.0 और SavedState 1.1.0 में जोड़े गए ViewTreeLifecycleOwner.get(View), ViewTreeViewModelStoreOwner.get(View), और ViewTreeSavedStateRegistryOwner एपीआई के साथ काम करता है. इससे, ComponentActivity में सीधे तौर पर जोड़े गए किसी भी व्यू के लिए, गतिविधि को LifecycleOwner, ViewModelStoreOwner, और SavedStateRegistryOwner के तौर पर दिखाया जाएगा.

  • reportFullyDrawn() बैकपोर्ट - reportFullyDrawn() के Activity तरीके को ComponentActivity में बैकपोर्ट किया गया है, ताकि यह सभी एपीआई लेवल पर काम कर सके. साथ ही, API 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, नतीजे दिखाने से पहले लाइफ़साइकल के 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)

  • ActivityResultLauncher पर unregister() को कॉल करने पर, Lifecycle ऑब्ज़र्वर सही तरीके से हटा दिए जाते हैं. (b/165608393)

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

  • ActivityResultRegistry अब LifecycleOwner के साथ 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() की मदद से, बिना निलंबित किए गए ब्लॉक को चलाया जा सकता है. (I8290c)
    • FragmentManager की स्थिति पहले जैसी करने के लिए, FragmentActivity इस एपीआई का इस्तेमाल फ़्रैगमेंट 1.3.0-alpha08 में करता है. FragmentActivity की सब-क्लास में जोड़े गए सभी लिसनर, उसके बाद चलेंगे. (I513da)
    • AppCompatActivity, AppCompat 1.3.0-alpha02 में इस एपीआई का इस्तेमाल करता है. AppCompatActivity की सब-क्लास में जोड़े गए सभी लिसनर, उसके बाद चलेंगे. (I513da)

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

  • ActivityResultFragmentVersionDetector लिंट जांच से जुड़ी उस समस्या को ठीक किया गया है जिसकी वजह से लिंट 27.1.0 या इसके बाद के वर्शन का इस्तेमाल करते समय यह गड़बड़ी हुई थी. (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 नतीजे API का इस्तेमाल करते समय फ़्रैगमेंट 1.3.0-alpha07 का इस्तेमाल कर रहे हैं या नहीं. साथ ही, फ़्रैगमेंट के पुराने वर्शन का इस्तेमाल करने की वजह से "अमान्य अनुरोध कोड" की समस्याओं की वजह से रनटाइम के बंद होने और काम न करने वाले अनुमति अनुरोधों से बचा जा सकता है. (b/152554847)

बाहरी योगदान

  • RequestPermission गतिविधि के नतीजे के समझौते के लिए नतीजों को पार्स करते समय, 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 वर्शन में ये बदलाव शामिल हैं.

नई सुविधाएं

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

  • TakePicture कॉन्ट्रैक्ट अब थंबनेल Bitmap के बजाय boolean दिखाता है. इससे यह पता चलता है कि इमेज को Uri में सेव करने के दौरान, कैमरा ऐप्लिकेशन ने इमेज को सेव किया है. (b/154302879)
  • ActivityResultLauncher पर invoke() एक्सटेंशन हटा दिए गए हैं. इसके बजाय, launch() का साफ़ तौर पर इस्तेमाल किया गया है, ताकि यह बेहतर तरीके से पता चल सके कि ये एसिंक्रोनस ऑपरेशन हैं. launch के लिए Kotlin एक्सटेंशन, ActivityResultLauncher<Void> और ActivityResultLauncher<Unit> के लिए androidx.activity.result पैकेज में जोड़े गए हैं. इनकी मदद से, null या Unit को पास करने की ज़रूरत नहीं होती. ये एक्सटेंशन, पहले के invoke() एक्सटेंशन के व्यवहार को दिखाते हैं. (aosp/1304674, aosp/1304675)
  • setFlagsMask() और setFlagsValues() के लिए IntentSenderRequest.Builder के तरीकों को एक ही setFlags() तरीके में जोड़ दिया गया है. (aosp/1302111)

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

  • ActivityResultCallback को LifecycleOwner के साथ रजिस्टर करते समय, उस समस्या को ठीक किया गया था जिसकी वजह से राज्य 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() एपीआई का इस्तेमाल नहीं किया जा सकता. कृपया गतिविधि के नतीजे से जुड़े एपीआई का इस्तेमाल करें. (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)
  • गतिविधि के नतीजे के लिए उपलब्ध एपीआई, अब ActivityOptionsCompat के साथ नतीजे के लिए कोई गतिविधि शुरू करने की सुविधा देते हैं. हालांकि, 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 समझौते को हटा दिया गया है, क्योंकि Intent का इस्तेमाल startActivityForResult() के साथ नहीं किया जा सकता. (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() के android.app.FragmentManager में किसी गड़बड़ी की वजह से IllegalStateException हुआ था. (b/146290338)

वर्शन 1.1.0

वर्शन 1.1.0

22 जनवरी, 2020

androidx.activity:activity:1.1.0 रिलीज़ हो गया है. वर्शन 1.1.0 में ये कमियां शामिल हैं.

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

  • लाइफ़साइकल व्यूमॉडल सेव स्टेट इंटिग्रेशन: 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 में ये कमियां शामिल हैं.

डिपेंडेंसी में बदलाव

  • गतिविधि अब Lifecycle 2.2.0-rc03 और Lifecycle ViewModel के सेव किए गए स्टेट 1.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 में ये कमियां शामिल हैं.

डिपेंडेंसी में बदलाव

  • गतिविधि अब सेव स्टेट 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 के स्टेबल वर्शन पर निर्भर करती है.

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

वर्शन 1.1.0-alpha02

7 अगस्त, 2019

androidx.activity:activity:1.1.0-alpha02 और androidx.activity:activity-ktx:1.1.0-alpha02 रिलीज़ हो गए हैं. इस वर्शन में शामिल किए गए कमिट यहां देखे जा सकते हैं.

नई सुविधाएं

  • by viewModels(), ViewModelProvider कंस्ट्रक्टर या ViewModelProviders.of() के साथ ComponentActivity (b/135716331) का इस्तेमाल करते समय, 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: ComponentActivity, फ़्रैगमेंट 1.1.0 में FragmentActivity के लिए नई बेस क्लास के तौर पर काम करती है. साथ ही, AppCompat 1.1.0 में AppCompatActivity के लिए भी काम करती है.
  • activity-ktx: activity-ktx मॉड्यूल में, ViewModels को ऐक्सेस करने के लिए by viewModels Kotlin प्रॉपर्टी एक्सटेंशन शामिल होता है. फ़्रैगमेंट 1.1.0 से fragment-ktx शामिल करने पर, यह मॉड्यूल अपने-आप शामिल हो जाता है.
  • OnBackPressedDispatcher: onBackPressed() को ओवरराइड करने के लिए कंपोज़ेबल विकल्प के तौर पर, अब सिस्टम के बैक बटन इवेंट को इंटरसेप्ट करने के लिए, किसी भी LifecycleOwner (जैसे कि फ़्रैगमेंट) से OnBackPressedCallback को रजिस्टर किया जा सकता है. activity-ktx में, रिसीप्टर वर्शन addCallback वाला एक लैम्ब्डा जोड़ा गया है. ज़्यादा जानकारी के लिए, पसंदीदा तरीके से वापस जाने के लिए नेविगेशन का दस्तावेज़ उपलब्ध कराना लेख पढ़ें.
  • onRequestCustomNonConfigurationInstance का इस्तेमाल बंद किया जा रहा है: onRetainCustomNonConfigurationInstance() और उससे जुड़े getLastCustomNonConfigurationInstance() APIs को बंद कर दिया गया है. हमारा सुझाव है कि कॉन्फ़िगरेशन के अलावा अन्य स्टेटस को सेव करने के लिए, 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/131416833
  • OnBackPressedCallback के लिए, remove() का तरीका अब फ़ाइनल हो गया है. aosp/952720
  • OnBackPressedDispatcher में अब सार्वजनिक कन्स्ट्रक्टर हैं. इनकी मदद से, जांच वगैरह के लिए अपने इंस्टेंस बनाए जा सकते हैं. aosp/953431
  • ComponentActivity के लिए onBackPressed() को अब साफ़ तौर पर @MainThread aosp/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 अब एक ऐब्स्ट्रैक्ट क्लास है जिसे चालू या बंद किया जा सकता है - सिर्फ़ तब handleOnBackPressed() को कॉल किया जाएगा, जब isEnabled() तरीके से 'सही' दिखेगा. इसमें आपको 'वापस जाएं' बटन को हैंडल करना होगा. (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 से जुड़े 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 मॉड्यूल अब ViewModel के 2.1.0-alpha02 वर्शन पर निर्भर करता है, ताकि वह activity-ktx मॉड्यूल की डिपेंडेंसी से मैच कर सके.

वर्शन 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 का इस्तेमाल करें जिन्हें कॉन्फ़िगरेशन में होने वाले बदलावों से बचने की ज़रूरत होती है.