Kayıtlı durum

Bir işlem öldüğünde kullanıcı arayüzü durumunu kaydeden takılabilir bileşenler yazın ve işlem yeniden başlatıldığında bu durumu geri yükleyin.
Son Güncelleme Kararlı Sürüm Serbest Bırakma Adayı Beta Sürümü Alfa Sürümü
22 Mart 2023 1.2.1 - - -

Bağımlılıkları bildirme

KaydedilmişState'e bağımlılık eklemek için projenize Google Maven deposunu eklemeniz gerekir. Daha fazla bilgi için Google'ın Maven deposunu okuyun.

Uygulamanız veya modülünüz için build.gradle dosyasına ihtiyaç duyduğunuz yapıların bağımlılıklarını ekleyin:

Modern

dependencies {
    // Java language implementation
    implementation "androidx.savedstate:savedstate:1.2.1"

    // Kotlin
    implementation "androidx.savedstate:savedstate-ktx:1.2.1"
}

Kotlin

dependencies {
    // Java language implementation
    implementation("androidx.savedstate:savedstate:1.2.1")

    // Kotlin
    implementation("androidx.savedstate:savedstate-ktx:1.2.1")
}

Bağımlılıklar hakkında daha fazla bilgi için Derleme bağımlılıkları ekleme bölümüne bakın.

Geri bildirim

Geri bildirimleriniz Jetpack'i iyileştirmemize yardımcı olur. Yeni sorunlar keşfederseniz veya bu kitaplığı geliştirmek için fikirleriniz varsa lütfen bize bildirin. Yeni hesap oluşturmadan önce lütfen bu kitaplıktaki mevcut sorunlara göz atın. Yıldız düğmesini tıklayarak mevcut bir soruna oyunuzu ekleyebilirsiniz.

Yeni sorun oluşturma

Daha fazla bilgi için Sorun İzleyici belgelerine bakın.

Sürüm 1.2.1

Sürüm 1.2.1

22 Mart 2023

androidx.savedstate:savedstate:1.2.1 ve androidx.savedstate:savedstate-ktx:1.2.1 yayınlandı. Sürüm 1.2.1 bu kayıtları içerir.

Bağımlılık Güncellemeleri

Sürüm 1.2.0

Sürüm 1.2.0

29 Haziran 2022

androidx.savedstate:savedstate:1.2.0 ve androidx.savedstate:savedstate-ktx:1.2.0 yayınlandı. 1.2.0 sürümü bu kayıtları içerir.

1.1.0 sürümünden sonraki önemli değişiklikler

  • SavedStateRegistryController, artık SavedStateRegistry öğesinin performAttach() üzerinden erken eklenmesine izin veriyor.
  • Artık SavedStateRegistry sağlayıcısından daha önce kaydedilmiş SavedStateProvider öğelerini getSavedStateProvider() üzerinden alabilirsiniz.
  • SavedState kitaplığı Kotlin ile yeniden yazılmıştır.
    • SavedStateRegistryOwner için bu, Kotlin'de yazılan sınıflar için kaynakla uyumlu olmayan bir değişikliktir. Önceki getSavedStateRegistry() işlevini uygulamak yerine artık savedStateRegistry özelliğini geçersiz kılmanız gerekir.
    • ViewTreeSavedStateRegistryOwner için bu, Kotlin'de yazılmış sınıflar için kaynakla uyumlu olmayan bir değişikliktir. Önceden ayarlanmış bir sahip belirleyip bulmak için artık View androidx.savedstate.setViewTreeSavedStateRegistryOwner ve androidx.savedstate.findViewTreeSavedStateRegistryOwner türündeki Kotlin uzantı yöntemlerini doğrudan içe aktarıp kullanmanız gerekiyor. Bu, findViewTreeSavedStateRegistryOwner savedstate-ktx API'sinin yerini alır.

Davranış Değişiklikleri

  • Kaydedilecek durum yoksa SavedStateRegistry artık boş bir Paket kaydetmez.

Sürüm 1.2.0-rc01

11 Mayıs 2022

androidx.savedstate:savedstate:1.2.0-rc01 ve androidx.savedstate:savedstate-ktx:1.2.0-rc01 yayınlandı. Sürüm 1.2.0-rc01 bu kayıtları içerir.

Belge Değişiklikleri

  • SavedStateRegistryOwner Kdocs, site sahibinin arayüzü nasıl uygulaması gerektiği veya SavedStateRegistryController tarihinde yöntemleri ne zaman çağıracağıyla ilgili sahip olduğu sorumlulukları ve sözleşmeyi netleştirmek için güncellendi. (Iefc95, b/228887344)

Sürüm 1.2.0-beta01

20 Nisan 2022

androidx.savedstate:savedstate:1.2.0-beta01 ve androidx.savedstate:savedstate-ktx:1.2.0-beta01 yayınlandı. Sürüm 1.2.0-beta01 bu kayıtları içerir.

API Değişiklikleri

  • SavedStateRegistry ve ViewTreeSavedStateRegistryOwner sınıfları Kotlin'de yeniden yazıldı. ViewTreeSavedStateRegistryOwner için bu, Kotlin'de yazılmış sınıflar için kaynakla uyumlu olmayan bir değişikliktir. Önceden ayarlanmış bir sahip belirleyip bulmak için artık View androidx.savedstate.setViewTreeSavedStateRegistryOwner ve androidx.savedstate.findViewTreeSavedStateRegistryOwner türündeki Kotlin uzantı yöntemlerini doğrudan içe aktarıp kullanmanız gerekiyor. Bu, findViewTreeSavedStateRegistryOwner savedstate-ktx API'sinin yerini alır. Bu, ikili program ile uyumludur ve Java programlama dilinde yazılmış uygulamalar için kaynak uyumlu olmaya devam eder. (b/220191285)

Sürüm 1.2.0-alpha02

6 Nisan 2022

androidx.savedstate:savedstate:1.2.0-alpha02 ve androidx.savedstate:savedstate-ktx:1.2.0-alpha02 yayınlandı. Sürüm 1.2.0-alpha02 bu kaydetmeleri içerir.

Yeni Özellikler

  • Artık SavedStateRegistry sağlayıcısından daha önce kaydedilmiş SavedStateProvider öğelerini getSavedStateProvider() üzerinden alabilirsiniz. (I7ea47, b/215406268)

API Değişiklikleri

  • SavedStateRegistryOwner, SavedStateRegistryController ve Recreator sınıfları Kotlin'de yeniden yazıldı. SavedStateRegistryOwner için bu, Kotlin'de yazılan sınıflar için kaynakla uyumlu olmayan bir değişikliktir. Önceki getSavedStateRegistry() işlevini uygulamak yerine artık savedStateRegistry özelliğini geçersiz kılmanız gerekir. Bu, Java programlama dilinde yazılmış uygulamalar için ikili program ile ve kaynak uyumludur. (b/220191285)

Sürüm 1.2.0-alpha01

26 Ocak 2022

androidx.savedstate:savedstate:1.2.0-alpha01 ve androidx.savedstate:savedstate-ktx:1.2.0-alpha01 yayınlandı. Sürüm 1.2.0-alpha01 bu kayıtları içerir.

Yeni Özellikler

  • SavedStateRegistryController artık performAttach() üzerinden SavedStateRegistry öğesinin erken eklenmesine izin veriyor. (Ice4bf)

Davranış Değişiklikleri

Sürüm 1.1.0

Sürüm 1.1.0

10 Şubat 2021

androidx.savedstate:savedstate:1.1.0 ve androidx.savedstate:savedstate-ktx:1.1.0 yayınlandı. Sürüm 1.1.0 bu kayıtları içerir.

1.0.0 sürümünden beri yapılan önemli değişiklikler

  • ViewTreeSavedStateRegistryOwner API'si: Yeni bir ViewTreeSavedStateRegistryOwner.get(View) API, View örneğiyle birlikte içeren SavedStateRegistry öğesini almanıza olanak tanır. Bu alanı doğru şekilde doldurmak için Etkinlik 1.2.0, Fragment 1.3.0 ve AppCompat 1.3.0-alpha01 veya sonraki bir sürüme geçmeniz gerekir.
  • savedstate-ktx yapısı: ViewTreeSavedStateRegistryOwner ile çalışmak için findViewTreeSavedStateRegistryOwner() Kotlin uzantısına sahip yeni savedstate-ktx yapısı eklendi.

Sürüm 1.1.0-rc01

16 Aralık 2020

androidx.savedstate:savedstate:1.1.0-rc01 ve androidx.savedstate:savedstate-ktx:1.1.0-rc01, 1.1.0-beta01 tarihinden bu yana herhangi bir değişiklik olmadan yayınlandı. Sürüm 1.1.0-rc01 bu kayıtları içerir.

Sürüm 1.1.0-beta01

1 Ekim 2020

androidx.savedstate:savedstate:1.1.0-beta01 ve androidx.savedstate:savedstate-ktx:1.1.0-beta01, 1.1.0-alpha01 tarihinden bu yana herhangi bir değişiklik olmadan yayınlandı. Sürüm 1.1.0-beta01 bu kayıtları içerir.

Sürüm 1.1.0-alpha01

20 Mayıs 2020

androidx.savedstate:savedstate:1.1.0-alpha01 ve androidx.savedstate:savedstate-ktx:1.1.0-alpha01 yayınlandı. Sürüm 1.1.0-alpha01 bu kayıtları içerir.

Yeni Özellikler

  • Yeni bir ViewTreeSavedStateRegistryOwner.get(View) API'si, View örneğiyle birlikte içeren SavedStateRegistry öğesini almanıza olanak tanır. Bu alanı doğru şekilde doldurmak için Activity 1.2.0-alpha05, Fragment 1.3.0-alpha05 ve AppCompat 1.3.0-alpha01 sürümlerine geçmeniz gerekir. (aosp/1298679)
  • ViewTreeSavedStateRegistryOwner ile çalışmak için findViewTreeSavedStateRegistryOwner() Kotlin uzantısına sahip yeni savedstate-ktx yapısı eklendi. (aosp/1299434)

Sürüm 1.0.0

Sürüm 1.0.0

5 Eylül 2019

androidx.savedstate:savedstate:1.0.0 yayınlandı. Bu sürümdeki kaydetmeleri burada bulabilirsiniz.

KayıtlıState 1.0.0'ın önemli özellikleri

androidx.savedstate kararlı sürüme geçti. Bu, geliştiricilerin geri yükleme / kaydetmeInstanceState işlemine bileşen eklemelerine olanak tanıyan bir API kümesidir. API'nin ana giriş noktası SavedStateRegistry'tir. Bu nokta, consumeRestoredStateForKey kullanarak daha önce kaydedilmiş durumların alınmasını ve sistem istekte bulunduğunda kayıtlı durumu sağlamak için registerSavedStateProvider öğesine bir geri çağırma kaydetmenin yolunu sağlar.

Sürüm 1.0.0-rc01

2 Temmuz 2019

androidx.savedstate:savedstate:1.0.0-rc01 yayınlandı. Bu sürümdeki kaydetmeleri burada bulabilirsiniz.

Hata düzeltmeleri

Sürüm 1.0.0-beta01

7 Mayıs 2019

androidx.savedstate:savedstate:1.0.0-beta01 yayınlandı. Bu sürümdeki kaydetmeleri burada bulabilirsiniz.

Sürüm 1.0.0-alpha02

13 Mart 2019

androidx.savedstate:savedstate:1.0.0-alpha02 yayınlandı. androidx.savedstate:savedstate, kayıtlı durum altyapısını basitleştirmeye ve SavedStateRegistry ürününden jenerikleri kaldırmaya karar verdiği için androidx.savedstate:savedstate-bundle ve androidx.savedstate:savedstate-common yapılarını tek bir yapıda birleştiriyor. Bu nedenle ayrı modüllere gerek yoktur.

Bu sürüme dahil edilen kaydetmelerin tam listesini burada bulabilirsiniz.

Yeni özellikler

  • SavedStateRegistry.runOnNextRecreaction(Class<? extends AutoRecreated> clazz ) eklendi. Belirtilen sınıf örneklenir ve sahip olan bileşen yeniden başlatıldığında AutoRecreated.onRecreated yöntemi çalıştırılır.

API değişiklikleri

  • Genel ilaçlar SavedStateRegistry<T> adlı raftan kaldırıldı
  • AbstractsaveStateRegistry ve BundlablepaidStateRegistry kaldırıldı, bunun yerine basit SavedStateRegistry işlevini kullanın
  • BundleSavedStateRegistryOwner, SavedStateRegistryOwner olarak yeniden adlandırıldı

Sürüm 1.0.0-alpha01

17 Aralık 2018

Bu, SavedState serisinin ilk sürümüdür.

Yeni özellikler

androidx.savedstate, geliştiricilerin bileşenleri geri yükleme / kaydetmeInstanceState işlemine eklemelerine olanak tanıyan yeni bir alfa API'leri grubudur. API'nin ana giriş noktası SavedStateRegistry<T>'tir. Bu nokta, consumeRestoredStateForKey aracılığıyla daha önce kaydedilmiş durumu almak ve sistem istekte bulunduğunda kayıtlı durum sağlamak için registerSavedStateProvider öğesine bir geri çağırma kaydetmek için bir yol sağlar.