সেভডস্টেট
| সর্বশেষ আপডেট | স্থিতিশীল রিলিজ | রিলিজ প্রার্থী | বিটা রিলিজ | আলফা রিলিজ |
|---|---|---|---|---|
| ৫ নভেম্বর, ২০২৫ | ১.৪.০ | - | - | - |
নির্ভরতা ঘোষণা করা
SavedState-এ নির্ভরতা যোগ করতে, আপনার প্রকল্পে Google Maven সংগ্রহস্থল যোগ করতে হবে। আরও তথ্যের জন্য Google-এর Maven সংগ্রহস্থল পড়ুন।
আপনার অ্যাপ বা মডিউলের জন্য build.gradle ফাইলে আপনার প্রয়োজনীয় আর্টিফ্যাক্টের জন্য নির্ভরতা যোগ করুন:
Groovy
dependencies { // Java language implementation implementation "androidx.savedstate:savedstate:1.4.0" // Kotlin implementation "androidx.savedstate:savedstate-ktx:1.4.0" }
Kotlin
dependencies { // Java language implementation implementation("androidx.savedstate:savedstate:1.4.0") // Kotlin implementation("androidx.savedstate:savedstate-ktx:1.4.0") }
নির্ভরতা সম্পর্কে আরও তথ্যের জন্য, বিল্ড নির্ভরতা যোগ করুন দেখুন।
প্রতিক্রিয়া
আপনার মতামত জেটপ্যাককে আরও উন্নত করতে সাহায্য করবে। আপনি যদি নতুন সমস্যা আবিষ্কার করেন বা এই লাইব্রেরিটি উন্নত করার জন্য কোন ধারণা থাকে তাহলে আমাদের জানান। নতুন একটি তৈরি করার আগে দয়া করে এই লাইব্রেরিতে বিদ্যমান সমস্যাগুলি একবার দেখে নিন। আপনি তারকা বোতামে ক্লিক করে বিদ্যমান সমস্যাটিতে আপনার ভোট যোগ করতে পারেন।
আরও তথ্যের জন্য ইস্যু ট্র্যাকার ডকুমেন্টেশন দেখুন।
সংস্করণ 1.4
সংস্করণ 1.4.0
০৫ নভেম্বর, ২০২৫
androidx.savedstate:savedstate-*:1.4.0 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-এ এই কমিটগুলি রয়েছে।
সংস্করণ 1.4.0-rc01
২২ অক্টোবর, ২০২৫
androidx.savedstate:savedstate-*:1.4.0-rc01 1.4.0-beta01 থেকে কোনও পরিবর্তন ছাড়াই প্রকাশিত হয়েছে। 1.4.0-rc01 সংস্করণে এই কমিটগুলি রয়েছে।
সংস্করণ 1.4.0-beta01
৮ অক্টোবর, ২০২৫
androidx.savedstate:savedstate-*:1.4.0-beta01 শেষ আলফা থেকে কোনও উল্লেখযোগ্য পরিবর্তন ছাড়াই প্রকাশিত হয়েছে। সংস্করণ 1.4.0-beta01-এ এই কমিটগুলি রয়েছে।
সংস্করণ 1.4.0-alpha03
২৭ আগস্ট, ২০২৫
androidx.savedstate:savedstate-*:1.4.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-alpha03-এ এই কমিটগুলি রয়েছে।
API পরিবর্তনগুলি
-
encodeToSavedStateএবংdecodeFromSavedStateএ nullable প্রকারের জন্য সমর্থন যোগ করুন। ( I79062 , b/439527454 ) - কম্পোজ 1.9.0 এ আপডেট করুন। ( I2b9de )
সংস্করণ 1.4.0-alpha02
১৩ আগস্ট, ২০২৫
androidx.savedstate:savedstate-*:1.4.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-alpha02-এ এই কমিটগুলি রয়েছে।
সংস্করণ 1.4.0-alpha01
৩০ জুলাই, ২০২৫
androidx.savedstate:savedstate-*:1.4.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-alpha01-এ এই কমিটগুলি রয়েছে।
API পরিবর্তনগুলি
-
SavedStateRegistryOwner.savedএ nullable প্রকারের জন্য নেটিভ সাপোর্ট যোগ করুন, nullable বৈশিষ্ট্য সংরক্ষণ এবং পুনরুদ্ধার সহজ করুন। ( Ia632 , b/421325690 )
সংস্করণ 1.3
সংস্করণ 1.3.3
১৭ সেপ্টেম্বর, ২০২৫
androidx.savedstate:savedstate-*:1.3.3 প্রকাশিত হয়েছে। সংস্করণ 1.3.3-এ এই কমিটগুলি রয়েছে।
বাগ ফিক্স
- কম্পোজ কম্পাইলার প্লাগইন প্রয়োগ না করার কারণে
SavedStateKMP আর্টিফ্যাক্টগুলি ভেঙে যাওয়ার একটি ত্রুটি সংশোধন করা হয়েছে। ( Id2290 , b/443965665 )
সংস্করণ 1.3.2
২৭ আগস্ট, ২০২৫
androidx.savedstate:savedstate-*:1.3.2 প্রকাশিত হয়েছে। সংস্করণ 1.3.2-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
- SavedState
*-composeআর্টিফ্যাক্টে নতুন Kotlin Multiplatform (KMP) টার্গেট যোগ করুন। Lifecycle এখন মোট নিম্নলিখিত প্ল্যাটফর্মগুলিকে সমর্থন করে: JVM (Android এবং Desktop), Native (Linux, iOS, watchOS, macOS, MinGW), এবং Web (JavaScript, WasmJS)। ( /Idcf26 )
সংস্করণ 1.3.1
১৬ জুলাই, ২০২৫
androidx.savedstate:savedstate-*:1.3.1 প্রকাশিত হয়েছে। সংস্করণ 1.3.1-এ এই কমিটগুলি রয়েছে।
বাগ ফিক্স
-
SavedStateআর্টিফ্যাক্টে টীকা দ্বারা সমর্থিত সমস্ত KMP টার্গেট যোগ করুন। -
SavedStateআর্টিফ্যাক্টগুলিতে নতুন Kotlin Multiplatform (KMP) টার্গেট যোগ করা হয়েছে।SavedStateএখন মোট নিম্নলিখিত প্ল্যাটফর্মগুলিকে সমর্থন করে: JVM (Android এবং Desktop), Native (Linux, iOS, watchOS, macOS, MinGW), এবং Web (JavaScript, WasmJS)। মনে রাখবেন যে*-composeআর্টিফ্যাক্টগুলিতে কোনও নতুন KMP টার্গেট যোগ করা হয়নি, কারণ এটি Compose 1.9. ( I062f4 ) এর স্থিতিশীল প্রকাশের উপর নির্ভর করে।
সংস্করণ 1.3.0
৭ মে, ২০২৫
androidx.savedstate:savedstate-*:1.3.0 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-এ এই কমিটগুলি রয়েছে।
১.২.০ থেকে গুরুত্বপূর্ণ পরিবর্তনগুলি
-
LocalSavedStateRegistryOwnerCompose UI থেকে নতুনsavedstate-composeমডিউলে স্থানান্তরিত করা হয়েছে যাতে এর Compose-ভিত্তিক সহায়ক API গুলি Compose UI এর বাইরে ব্যবহার করা যায়। Compose UI1.9.0-alpha02এবং উচ্চতর সংস্করণ ব্যবহার করার সময় এটি সর্বদা ব্যবহার করা উচিত, তবে এটি ব্যাকওয়ার্ড সামঞ্জস্যপূর্ণ যাতে এটি Compose এর সমস্ত সংস্করণের সাথে ব্যবহার করা যায়। -
savedstate-ktxkotlin এক্সটেনশনগুলি এখন বেস savedstate মডিউলে স্থানান্তরিত করা হয়েছে। -
findViewTreeSavedStateRegistryOwnerএর মাধ্যমে পুনরুদ্ধার করাSavedStateRegistryOwnerদৃষ্টান্তগুলি এখনViewOverlayএর মতো কোনও ভিউয়ের ডিসজয়েন্ট প্যারেন্টের মাধ্যমে সমাধান করা যেতে পারে। ডিসজয়েন্ট ভিউ প্যারেন্ট সম্পর্কে আরও তথ্যের জন্য core এর রিলিজ নোট বাViewTree.setViewTreeDisjointParentএর ডকুমেন্টেশন দেখুন।
কোটলিন মাল্টিপ্ল্যাটফর্ম
-
SavedStateমডিউলটি এখন KMP-এর সাথে সামঞ্জস্যপূর্ণ। সমর্থিত প্ল্যাটফর্মগুলিতে এখন Android, iOS, Linux, Mac এবং JVM ডেস্কটপ পরিবেশ অন্তর্ভুক্ত রয়েছে। KMP-তে অ্যাপ্লিকেশন স্টেট সংরক্ষণ এবং পুনরুদ্ধার করার জন্য একটি সুসংগত উপায় প্রদানের জন্য
SavedStateopaque টাইপকে একটি বিমূর্তকরণ হিসাবে প্রবর্তন করুন। এতে সংরক্ষণ করা অবস্থা পরিবর্তন করার জন্য একটিSavedStateReaderএবংSavedStateWriterঅন্তর্ভুক্ত রয়েছে। Android-এ,SavedStateহলBundleএর একটি টাইপ উপনাম, যা বাইনারি সামঞ্জস্যতা নিশ্চিত করে এবং বিদ্যমান API গুলিকে একটি সাধারণ উৎস সেটে স্থানান্তরিত করতে সহায়তা করে। অন্যান্য প্ল্যাটফর্মগুলিতে,SavedStateহল একটিMap<String, Any>উদাহরণ।// Create a new SavedState object using the savedState DSL: val savedState = savedState { putInt("currentPage", 1) putString("filter", "favorites") } // Read from a SavedState object val currentPage = savedState.read { getInt("currentPage") } // Edit an existing SavedState object savedState.write { remove("currentPage") }
KotlinX সিরিয়ালাইজেশন সাপোর্ট
SavedStateএখন KotlinX Serialization সাপোর্ট রয়েছে। আপনিencodeToSavedStateএবংdecodeFromSavedStateপদ্ধতি ব্যবহার করে@Serializableদিয়ে টীকাযুক্ত একটি ক্লাসকেSavedStateএ রূপান্তর করতে পারেন। ফিরে আসাSavedStateহল Android-এ একটি নিয়মিতBundleএবং এটিBundleগ্রহণকারী যেকোনো API দ্বারা ব্যবহার করা যেতে পারে।@Serializable data class Person(val firstName: String, val lastName: String) fun main() { val person = Person("John", "Doe") val encoded: SavedState = encodeToSavedState(person) val decoded: Person = decodeFromSavedState(encoded) }যদিও বেশিরভাগ প্রকার (যেমন আদিম প্রকার) কোনও কনফিগারেশনের প্রয়োজন ছাড়াই সরাসরি সমর্থিত, অতিরিক্ত সিরিয়ালাইজার যা
@Serializable(with = ___:class)এর সাথে ব্যবহার করা যেতে পারে সেগুলিsavedstateমডিউলেরandroidx.savedstate.serialization.serializersপ্যাকেজে এবংsavedstate-composeমডিউলেরandroidx.savedstate.compose.serialization.serializersপ্যাকেজে পাওয়া যেতে পারে।আমরা
SavedStateRegistryOwner(যেমন,ComponentActivity,Fragment, ইত্যাদি) তে@Serializableক্লাসগুলি সংরক্ষণ করা সহজ করার জন্যsaved, একটি lazy property delegateও অন্তর্ভুক্ত করেছি এবং প্রক্রিয়া মৃত্যু এবং পুনর্নির্মাণের সময় সেই ক্লাসগুলি স্বয়ংক্রিয়ভাবে পুনরুদ্ধার করা হবে। অনুগ্রহ করে মনে রাখবেন যেsavedডেলিগেটটি অলস এবং এটি অ্যাক্সেস না করা পর্যন্তinitlambda কল করবে না বাSavedStateRegistryতে কিছু সংরক্ষণ করবে না।@Serializable data class Person(val firstName: String, val lastName: String) class MyActivity : ComponentActivity() { var person by saved { Person("John", "Doe") } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) this.person = Person("Jane", "Doe") } }Lifecycle
2.9.0এSavedStateHandleএর জন্য একই রকম একটিsavedসম্পত্তি প্রতিনিধি যোগ করা হয়েছে।
সংস্করণ 1.3.0-rc01
২৩ এপ্রিল, ২০২৫
androidx.savedstate:savedstate-*:1.3.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-rc01-এ এই কমিটগুলি রয়েছে।
সংস্করণ 1.3.0-beta01
৯ এপ্রিল, ২০২৫
androidx.savedstate:savedstate-*:1.3.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-beta01-এ এই কমিটগুলি রয়েছে।
নির্ভরতা আপডেট
- এই লাইব্রেরিটি এখন Kotlin 2.0 ভাষা স্তরকে লক্ষ্য করে এবং KGP 2.0.0 বা তার পরবর্তী সংস্করণ প্রয়োজন। ( Idb6b5 )
সংস্করণ 1.3.0-alpha11
২৬ মার্চ, ২০২৫
androidx.savedstate:savedstate-*:1.3.0-alpha11 কোনও উল্লেখযোগ্য পাবলিক পরিবর্তন ছাড়াই প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha11-এ এই কমিটগুলি রয়েছে।
সংস্করণ 1.3.0-alpha10
১২ মার্চ, ২০২৫
androidx.savedstate:savedstate-*:1.3.0-alpha10 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha10-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
-
SavedStateReaderএ সংগ্রহgetজন্য নন-রিফাইন্ড পদ্ধতির ধরণ যোগ করুন। ( I0b641 , b/399820614 ) -
SavedStateConfigurationএencodeDefaultsযোগ করুন, যা ডিফল্ট মান সহ বৈশিষ্ট্যগুলি এনকোড করা উচিত কিনা তা কাস্টমাইজ করার অনুমতি দেয়। ( I893cc , b/395104517 ) -
mutableStateMapOfসমর্থন করার জন্যSnapshotStateMapSerializerযোগ করুন। ( Ie6f19 , b/378895074 ) -
mutableStateListOfসমর্থন করার জন্যSnapshotStateListSerializerযোগ করুন। ( I4d888 , b/378895074 ) -
SavedStateReader.getভেরিয়েন্টের জন্যgetOrNullবিকল্প পদ্ধতি যোগ করুন। এই পদ্ধতিগুলি আদিম মানগুলিকে স্বয়ংক্রিয়ভাবে বক্স করবে। ( I6228c , b/399820614 )
API পরিবর্তনগুলি
-
SavedStateReaderথেকেgetOrElseসরানgetOrNull() ?: else()এর পক্ষে। ( I87317 , b/399820614 ) -
SavedStateReaderএবংSavedStateWriterপদ্ধতি থেকেinlineমডিফায়ার সরান। ( If2a02 , b/399820614 ) - পাবলিক API ( Ida293 ) থেকে বিল্ট-ইন অ্যান্ড্রয়েড-নির্দিষ্ট তালিকা এবং অ্যারে সিরিয়ালাইজারগুলি সরান।
-
SparseParcelableArraySerializerSparseArraySerializer( I91de8 ) দিয়ে প্রতিস্থাপন করুন। - যখন ভ্যালু টাইপ রিটার্ন টাইপের সাথে মেলে না তখন থ্রো করে সমস্ত
SavedStateReader.getধারাবাহিকভাবে আচরণ করতে দিন ( I78c4a , b/399317598 ) -
SavedState*Delegatesনাম পরিবর্তন করেSavedState*Delegateকরুন। ( I8589b , b/399629301 ) -
SavedStateConfigনাম পরিবর্তন করেSavedStateConfigurationকরুন। ( I043a5 , b/399629301 )
সংস্করণ 1.3.0-alpha09
২৬ ফেব্রুয়ারী, ২০২৫
androidx.savedstate:savedstate-*:1.3.0-alpha09 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha09-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
- বিল্ট-ইন টাইপের জন্য ফলব্যাক যোগ করুন, নিশ্চিত করুন যে
Bundleদ্বারা সমর্থিত সমস্ত টাইপ ডিফল্টভাবেencodeAsSavedState/decodeFromSavedStateএর সাথে ব্যবহার করা যেতে পারে অথবা@Serializableক্লাসের প্রোপার্টিগুলির জন্য@Contextualঅ্যানোটেশনের মাধ্যমে ব্যবহার করা যেতে পারে। ( Ic01d2 ) -
SavedStateConfigএclassDiscriminatorএবংclassDiscriminatorModeজন্য সমর্থন অন্তর্ভুক্ত করুন। ( I69b66 , b/395104517 )
API পরিবর্তনগুলি
-
saved()ডেলিগেটগুলিতেSavedStateConfigপ্যারামিটার যোগ করুন ( I39b3a ) - বিল্ট-ইন সিরিয়ালাইজার সিঙ্গেলটন অবজেক্ট তৈরি করে ( Ifeee4 )
-
SavedStateConfigবৈশিষ্ট্যগুলি এখন সর্বজনীন, যা অন্যান্য মডিউলগুলিকে এই কনফিগারেশনগুলি ব্যবহার করতে সক্ষম করে। ( Ie5f49 , b/378897438 ) -
MutableStateFlowSerializerএবংMutableStateSerializer( I90953 ) এর জন্য@Serializer(with = ...)সমর্থন করুন। -
SavedStateReader( I14d10 ) এcontentDeepToStringযোগ করুন
সংস্করণ 1.3.0-alpha08
১২ ফেব্রুয়ারী, ২০২৫
androidx.savedstate:savedstate-*:1.3.0-alpha08 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha08-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
-
MutableStateSerializerlifecycle-viewmodel-composeথেকেsavedstate-composeএ সরান, যার ফলে আপনি Compose এরMutableStateদিয়ে SavedState Serialization API গুলি ব্যবহার করতে পারবেন। ( I4f690 , b/378895074 )
API পরিবর্তনগুলি
- একটি বিদ্যমান
SavedStateথেকেSavedStateতৈরি করতে একটি ফ্যাক্টরি ফাংশন যোগ করুন। ( I39f9a ) -
androidx.savedstateএArray<SavedState>এবংList<SavedState>এর জন্য সমর্থন যোগ করে। ( Idd8a5 ) - SavedState এনকোডিং/ডিকোডিং ( I6c4c0 ) তে
SavedStateConfigঐচ্ছিক প্যারামিটার যোগ করুন
সংস্করণ 1.3.0-alpha07
২৯ জানুয়ারী, ২০২৫
androidx.savedstate:savedstate-*:1.3.0-alpha07 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha07-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
-
kotlinx.coroutines.flow.MutableStateFlowসিরিয়ালাইজ করার জন্যMutableStateFlowSerializerযোগ করুন। ( I6a892 , b/378895070 )
API পরিবর্তনগুলি
- ওভারলোডেড
SavedStateRegistryOwner.saved()ডেলিগেট ফাংশনগুলিকে ডিফল্ট প্যারামিটার ( Icd1c1 ) দিয়ে প্রতিস্থাপন করুন। -
JavaSerializableSerializerএবংParcelableSerializerবিমূর্ত করুন ( I268f6 ) -
CharSequenceSerializer( Ib40bd ) থেকে জেনেরিকT : CharSequenceসরান
সংস্করণ 1.3.0-alpha06
১১ ডিসেম্বর, ২০২৪
androidx.savedstate:savedstate-*:1.3.0-alpha06 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha06-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
-
SavedStateKMP এখন নিম্নলিখিতগুলি সমর্থন করে:IBinder,Size,SizeF,Array<Parcelable>,SparseArray<Parcelable>এবং Serializable (Android)। ( I1ba94 , b/334076622 ) - আপনার ক্লাসের প্রাসঙ্গিক ক্ষেত্রটি
@Serializable(with = ParcelableSerializer::class)দিয়ে চিহ্নিত করে Bundle দ্বারা সমর্থিত Java এবং Android প্রকারগুলিকে এনকোড/ডিকোড করতেKSerializerইনস্ট্যান্স যোগ করুন। ( I8c10f , I28caf , b/376026712 ) -
findViewTreeSavedStateRegistryOwnerএর মাধ্যমে পুনরুদ্ধার করাSavedStateRegistryOwnerদৃষ্টান্তগুলি এখনViewOverlayএর মতো কোনও ভিউয়ের ডিসজয়েন্ট প্যারেন্টের মাধ্যমে সমাধান করা যেতে পারে। ডিসজয়েন্ট ভিউ প্যারেন্ট সম্পর্কে আরও তথ্যের জন্য core এর রিলিজ নোট বাViewTree.setViewTreeDisjointParentএর ডকুমেন্টেশন দেখুন। ( Iccb33 )
API পরিবর্তনগুলি
-
SavedStateRegistryOwnerDelegate( I8c135 , b/376026744 ) এর সাথে নামকরণ এবং প্যাকেজ সংগঠনকে আরও সামঞ্জস্যপূর্ণ করুন।
সংস্করণ 1.3.0-alpha05
১৩ নভেম্বর, ২০২৪
androidx.savedstate:savedstate-*:1.3.0-alpha05 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha05-এ এই কমিটগুলি রয়েছে।
KotlinX সিরিয়ালাইজেশন সাপোর্ট
SavedStateএখন KotlinX Serialization সাপোর্ট রয়েছে। আপনিencodeToSavedStateএবংdecodeFromSavedStateপদ্ধতি ব্যবহার করে@Serializableদিয়ে টীকাযুক্ত একটি ক্লাসকেSavedStateএ রূপান্তর করতে পারেন। ফিরে আসাSavedStateহল Android-এ একটি নিয়মিতBundleএবং এটিBundleগ্রহণকারী যেকোনো API দ্বারা ব্যবহার করা যেতে পারে। ( I6f59f , b/374102924 )@Serializable data class Person(val firstName: String, val lastName: String) fun main() { val person = Person("John", "Doe") val encoded: SavedState = encodeToSavedState(person) val decoded: Person = decodeFromSavedState(encoded) }আমরা
SavedStateRegistryOwner(যেমন,ComponentActivity,Fragment, ইত্যাদি) তে@Serializableক্লাসগুলি সংরক্ষণ করা সহজ করার জন্যsaved, একটি lazy property delegateও অন্তর্ভুক্ত করেছি এবং প্রক্রিয়া মৃত্যু এবং পুনর্নির্মাণের সময় সেই ক্লাসগুলি স্বয়ংক্রিয়ভাবে পুনরুদ্ধার করা হবে। অনুগ্রহ করে মনে রাখবেন যেsavedডেলিগেটটি অলস এবং এটি অ্যাক্সেস না করা পর্যন্তinitlambda কল করবে না বাSavedStateRegistryতে কিছু সংরক্ষণ করবে না। ( I66739 , b/376027806 )@Serializable data class Person(val firstName: String, val lastName: String) class MyActivity : ComponentActivity() { var person by saved { Person("John", "Doe") } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) this.person = Person("Jane", "Doe") } }Lifecycle
2.9.0-alpha07এSavedStateHandleএর জন্য একই রকম একটিsavedসম্পত্তি প্রতিনিধি যোগ করা হয়েছে।
API পরিবর্তনগুলি
-
SavedStateতেtoMapযোগ করুন, যাতে যেকোনোSavedStateএকটি নিয়মিতMapরূপান্তর করা যায় (অগভীর অনুলিপি)। ( I487b9 , b/334076622 ) -
SavedStateKMP এখন অ্যারে সমর্থন করে। ( Ic0552 , b/334076622 )
সংস্করণ 1.3.0-alpha04
৩০ অক্টোবর, ২০২৪
androidx.savedstate:savedstate-*:1.3.0-alpha04 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha04-এ এই কমিটগুলি রয়েছে।
API পরিবর্তনগুলি
- SavedState KMP এখন Char সমর্থন করে। ( I9ac2f , b/334076622 )
- SavedState KMP-তে
putNullএবংisNullযোগ করুন। ( Iea71d , b/334076622 ) - একটি প্রাথমিক
Map<String, Any>( I9b37d , b/334076622 ) সমর্থনকারী অতিরিক্তsavedStateফ্যাক্টরি প্যারামিটার যোগ করুন। - SavedState KMP এখন
contentDeepEqualsতুলনা সমর্থন করে। ( Ia515c , b/334076622 ) - SavedState KMP এখন Long সমর্থন করে। ( I4c180 , b/334076622 )
সংস্করণ 1.3.0-alpha03
১৬ অক্টোবর, ২০২৪
androidx.savedstate:savedstate-*:1.3.0-alpha03 কোনও উল্লেখযোগ্য পরিবর্তন ছাড়াই প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha03-এ এই কমিটগুলি রয়েছে।
সংস্করণ 1.3.0-alpha02
২ অক্টোবর, ২০২৪
androidx.savedstate:savedstate-*:1.3.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha02-এ এই কমিটগুলি রয়েছে।
কোটলিন মাল্টিপ্ল্যাটফর্ম
-
SavedStateমডিউলটি এখন KMP-এর সাথে সামঞ্জস্যপূর্ণ। সমর্থিত প্ল্যাটফর্মগুলিতে এখন Android, iOS, Linux, Mac এবং JVM ডেস্কটপ পরিবেশ অন্তর্ভুক্ত রয়েছে। ( I26305 , b/334076622 )
নতুন বৈশিষ্ট্য
- KMP-তে অ্যাপ্লিকেশন স্টেট সংরক্ষণ এবং পুনরুদ্ধার করার জন্য একটি সুসংগত উপায় প্রদানের জন্য
SavedStateopaque টাইপকে একটি বিমূর্তকরণ হিসাবে প্রবর্তন করুন। এতে সংরক্ষণ করা অবস্থা পরিবর্তন করার জন্য একটিSavedStateReaderএবংSavedStateWriterঅন্তর্ভুক্ত রয়েছে। Android-এ,SavedStateহলBundleএর একটি টাইপ উপনাম, যা বাইনারি সামঞ্জস্যতা নিশ্চিত করে এবং বিদ্যমান API গুলিকে একটি সাধারণ উৎস সেটে স্থানান্তরিত করতে সহায়তা করে। অন্যান্য প্ল্যাটফর্মগুলিতে,SavedStateহল একটিMap<String, Any>উদাহরণ। ( I18575 , b/334076622 )
// Create a new SavedState object using the savedState DSL:
val savedState = savedState {
putInt("currentPage", 1)
putString("filter", "favorites")
}
// Read from a SavedState object
val currentPage = savedState.read { getInt("currentPage") }
// Edit an existing SavedState object
savedState.write {
remove("currentPage")
}
API পরিবর্তনগুলি
-
SavedStateRegistryএবংSavedStateRegistryControllerএখন KMP-এর সাথে সামঞ্জস্যপূর্ণ। ( Id7bb8 , b/334076622 ) -
SavedState,SavedStateWriterএবংSavedStateReaderএখন KMP-এর সাথে সামঞ্জস্যপূর্ণ। ( I26305 , b/334076622 )
সংস্করণ 1.3.0-alpha01
৭ আগস্ট, ২০২৪
androidx.savedstate:savedstate:1.3.0-alpha01 এবং androidx.savedstate:savedstate-ktx:1.3.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha01-এ এই কমিটগুলি রয়েছে।
API পরিবর্তনগুলি
-
savedstate-ktxkotlin এক্সটেনশনগুলি এখন বেস savedstate মডিউলে স্থানান্তরিত করা হয়েছে। ( I1cc18 , b/274803094 )
দ্রষ্টব্য
-
compileSdk35 ( 5dc41be ) তে আপডেট করুন
সংস্করণ 1.2.1
সংস্করণ 1.2.1
২২ মার্চ, ২০২৩
androidx.savedstate:savedstate:1.2.1 এবং androidx.savedstate:savedstate-ktx:1.2.1 প্রকাশিত হয়েছে। সংস্করণ 1.2.1-এ এই কমিটগুলি রয়েছে।
নির্ভরতা আপডেট
-
SavedStateএখন Lifecycle2.6.1এর উপর নির্ভর করে। ( c1f621 )
সংস্করণ 1.2.0
সংস্করণ 1.2.0
২৯ জুন, ২০২২
androidx.savedstate:savedstate:1.2.0 এবং androidx.savedstate:savedstate-ktx:1.2.0 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-এ এই কমিটগুলি রয়েছে।
১.১.০ থেকে গুরুত্বপূর্ণ পরিবর্তনগুলি
-
SavedStateRegistryControllerএখনperformAttach()মাধ্যমেSavedStateRegistryএর প্রাথমিক সংযুক্তি অনুমোদন করে। - আপনি এখন
getSavedStateProvider()মাধ্যমে একটিSavedStateRegistryথেকে পূর্বে নিবন্ধিত একটিSavedStateProviderপুনরুদ্ধার করতে পারেন। -
SavedStateলাইব্রেরিটি কোটলিনে পুনর্লিখন করা হয়েছে।-
SavedStateRegistryOwnerএর জন্য, এটি Kotlin-এ লেখা ক্লাসগুলির জন্য একটি source অসঙ্গতিপূর্ণ পরিবর্তন - আপনাকে এখন পূর্ববর্তীgetSavedStateRegistry()ফাংশনটি বাস্তবায়নের পরিবর্তেsavedStateRegistryসম্পত্তিটি ওভাররাইড করতে হবে। -
ViewTreeSavedStateRegistryOwnerএর ক্ষেত্রে, এটি Kotlin-এ লেখা ক্লাসগুলির জন্য একটি অসঙ্গতিপূর্ণ পরিবর্তন - আপনাকে এখনandroidx.savedstate.setViewTreeSavedStateRegistryOwnerএবংandroidx.savedstate.findViewTreeSavedStateRegistryOwnerএরViewএ Kotlin এক্সটেনশন পদ্ধতিগুলি সরাসরি আমদানি করতে হবে এবং ব্যবহার করতে হবে যাতে পূর্বে সেট করা মালিক সেট করা এবং খুঁজে পাওয়া যায়। এটিfindViewTreeSavedStateRegistryOwnerএরsavedstate-ktxAPI প্রতিস্থাপন করে।
-
আচরণগত পরিবর্তন
- সংরক্ষণ করার জন্য কোন অবস্থা না থাকলে
SavedStateRegistryআর খালি বান্ডেল সংরক্ষণ করে না।
সংস্করণ 1.2.0-rc01
১১ মে, ২০২২
androidx.savedstate:savedstate:1.2.0-rc01 এবং androidx.savedstate:savedstate-ktx:1.2.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-rc01-এ এই কমিটগুলি রয়েছে।
ডকুমেন্টেশন পরিবর্তন
-
SavedStateRegistryOwnerKdocs আপডেট করা হয়েছে যাতে মালিকের ইন্টারফেসটি কীভাবে বাস্তবায়ন করা উচিত বা কখনSavedStateRegistryControllerএ পদ্ধতিগুলি কল করা উচিত সে সম্পর্কে তাদের দায়িত্ব এবং চুক্তি স্পষ্ট করা যায়। ( Iefc95 , b/228887344 )
সংস্করণ 1.2.0-beta01
২০ এপ্রিল, ২০২২
androidx.savedstate:savedstate:1.2.0-beta01 এবং androidx.savedstate:savedstate-ktx:1.2.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-beta01-এ এই কমিটগুলি রয়েছে।
API পরিবর্তনগুলি
-
SavedStateRegistryএবংViewTreeSavedStateRegistryOwnerক্লাসগুলি Kotlin-এ পুনর্লিখন করা হয়েছে।ViewTreeSavedStateRegistryOwnerএর জন্য, এটি Kotlin-এ লেখা ক্লাসগুলির জন্য একটি সোর্স-অসঙ্গতিপূর্ণ পরিবর্তন - আপনাকে এখন সরাসরিandroidx.savedstate.setViewTreeSavedStateRegistryOwnerএবংandroidx.savedstate.findViewTreeSavedStateRegistryOwnerএরViewএ Kotlin এক্সটেনশন পদ্ধতিগুলি আমদানি করতে হবে এবং ব্যবহার করতে হবে যাতে পূর্বে সেট করা মালিক সেট করা এবং খুঁজে পাওয়া যায়। এটিfindViewTreeSavedStateRegistryOwnerএরsavedstate-ktxAPI-কে প্রতিস্থাপন করে। এটি বাইনারি সামঞ্জস্যপূর্ণ এবং জাভা প্রোগ্রামিং ভাষায় লেখা বাস্তবায়নের জন্য সোর্স-সঙ্গতিপূর্ণ থাকে। ( b/220191285 )
সংস্করণ 1.2.0-alpha02
৬ এপ্রিল, ২০২২
androidx.savedstate:savedstate:1.2.0-alpha02 এবং androidx.savedstate:savedstate-ktx:1.2.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-alpha02-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
- আপনি এখন
getSavedStateProvider()মাধ্যমে একটিSavedStateRegistryথেকে পূর্বে নিবন্ধিতSavedStateProviderপুনরুদ্ধার করতে পারেন। ( I7ea47 , b/215406268 )
API পরিবর্তনগুলি
-
SavedStateRegistryOwner,SavedStateRegistryControllerএবংRecreatorক্লাসগুলি Kotlin-এ পুনর্লিখন করা হয়েছে।SavedStateRegistryOwnerক্ষেত্রে, এটি Kotlin-এ লেখা ক্লাসগুলির জন্য একটি source-অসঙ্গতিপূর্ণ পরিবর্তন - আপনাকে এখন পূর্ববর্তীgetSavedStateRegistry()ফাংশনটি বাস্তবায়নের পরিবর্তেsavedStateRegistryসম্পত্তিটি ওভাররাইড করতে হবে। এটি বাইনারি সামঞ্জস্যপূর্ণ এবং জাভা প্রোগ্রামিং ভাষায় লেখা বাস্তবায়নের জন্য source-সামঞ্জস্যপূর্ণ। ( b/220191285 )
সংস্করণ 1.2.0-alpha01
২৬ জানুয়ারী, ২০২২
androidx.savedstate:savedstate:1.2.0-alpha01 এবং androidx.savedstate:savedstate-ktx:1.2.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-alpha01-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
-
SavedStateRegistryControllerএখনperformAttach()এর মাধ্যমেSavedStateRegistryএর প্রাথমিক সংযুক্তি অনুমোদন করে। ( Ice4bf )
আচরণগত পরিবর্তন
- সংরক্ষণ করার জন্য কোনও অবস্থা না থাকলে
SavedStateRegistryআর খালি বান্ডেল সংরক্ষণ করে না। ( aosp/1896865 , b/203457956 )
সংস্করণ 1.1.0
সংস্করণ 1.1.0
১০ ফেব্রুয়ারী, ২০২১
androidx.savedstate:savedstate:1.1.0 এবং androidx.savedstate:savedstate-ktx:1.1.0 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-এ এই কমিটগুলি রয়েছে।
১.০.০ থেকে প্রধান পরিবর্তনগুলি
-
ViewTreeSavedStateRegistryOwnerAPI : একটি নতুনViewTreeSavedStateRegistryOwner.get(View)API আপনাকে একটিViewইনস্ট্যান্স দেওয়াSavedStateRegistryধারণকারী ফাইল পুনরুদ্ধার করতে সাহায্য করে। এটি সঠিকভাবে পূরণ করার জন্য আপনাকে Activity1.2.0, Fragment1.3.0, এবং AppCompat1.3.0-alpha01বা উচ্চতর সংস্করণে আপগ্রেড করতে হবে। -
savedstate-ktxআর্টিফ্যাক্ট :ViewTreeSavedStateRegistryOwnerএর সাথে কাজ করার জন্য নতুনsavedstate-ktxআর্টিফ্যাক্টটিfindViewTreeSavedStateRegistryOwner()Kotlin এক্সটেনশনের সাথে যুক্ত করা হয়েছে।
সংস্করণ 1.1.0-rc01
১৬ ডিসেম্বর, ২০২০
androidx.savedstate:savedstate:1.1.0-rc01 এবং androidx.savedstate:savedstate-ktx:1.1.0-rc01 1.1.0-beta01 থেকে কোনও পরিবর্তন ছাড়াই প্রকাশিত হয়েছে। 1.1.0-rc01 সংস্করণে এই কমিটগুলি রয়েছে।
সংস্করণ 1.1.0-beta01
১ অক্টোবর, ২০২০
androidx.savedstate:savedstate:1.1.0-beta01 এবং androidx.savedstate:savedstate-ktx:1.1.0-beta01 1.1.0-alpha01 থেকে কোনও পরিবর্তন ছাড়াই প্রকাশিত হয়েছে। 1.1.0-beta01 সংস্করণে এই কমিটগুলি রয়েছে।
সংস্করণ 1.1.0-alpha01
২০ মে, ২০২০
androidx.savedstate:savedstate:1.1.0-alpha01 এবং androidx.savedstate:savedstate-ktx:1.1.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-alpha01-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
- একটি নতুন
ViewTreeSavedStateRegistryOwner.get(View)API আপনাকে একটিViewইনস্ট্যান্স দেওয়াSavedStateRegistryধারণকারী ফাইল পুনরুদ্ধার করতে সাহায্য করে। এটি সঠিকভাবে পূরণ করার জন্য আপনাকে Activity1.2.0-alpha05, Fragment1.3.0-alpha05, এবং AppCompat1.3.0-alpha01এ আপগ্রেড করতে হবে। ( aosp/1298679 ) -
ViewTreeSavedStateRegistryOwnerএর সাথে কাজ করার জন্য নতুনsavedstate-ktxআর্টিফ্যাক্টটিfindViewTreeSavedStateRegistryOwner()Kotlin এক্সটেনশনের সাথে যুক্ত করা হয়েছে। ( aosp/1299434 )
সংস্করণ 1.0.0
সংস্করণ 1.0.0
৫ সেপ্টেম্বর, ২০১৯
androidx.savedstate:savedstate:1.0.0 প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলি এখানে পাওয়া যাবে।
SavedState 1.0.0 এর প্রধান বৈশিষ্ট্য
androidx.savedstate একটি স্থিতিশীল রিলিজে গ্র্যাজুয়েট হয়েছে। এটি এমন একটি API সেট যা ডেভেলপারদের restore / saveInstanceState প্রক্রিয়ায় উপাদান প্লাগইন করতে দেয়। API এর প্রধান প্রবেশ বিন্দু হল SavedStateRegistry , যা consumeRestoredStateForKey ব্যবহার করে পূর্বে সংরক্ষিত অবস্থা পুনরুদ্ধার করার এবং সিস্টেম অনুরোধ করলে একটি সংরক্ষিত অবস্থা প্রদানের জন্য registerSavedStateProvider এ একটি কলব্যাক নিবন্ধন করার একটি উপায় প্রদান করে।
সংস্করণ 1.0.0-rc01
২ জুলাই, ২০১৯
androidx.savedstate:savedstate:1.0.0-rc01 প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলি এখানে পাওয়া যাবে।
বাগ সংশোধন
- ভুল প্রোগার্ড নিয়ম ঠিক করা হয়েছে ( b/132655499 )
সংস্করণ 1.0.0-beta01
৭ মে, ২০১৯
androidx.savedstate:savedstate:1.0.0-beta01 প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলি এখানে পাওয়া যাবে।
সংস্করণ 1.0.0-alpha02
১৩ মার্চ, ২০১৯
androidx.savedstate:savedstate:1.0.0-alpha02 প্রকাশিত হয়েছে। androidx.savedstate:savedstate androidx.savedstate:savedstate-bundle এবং androidx.savedstate:savedstate-common আর্টিফ্যাক্টগুলিকে একটি আর্টিফ্যাক্টে একত্রিত করে, কারণ savedstate পরিকাঠামো সহজ করার এবং SavedStateRegistry থেকে জেনেরিকগুলি অপসারণ করার সিদ্ধান্ত নেওয়া হয়েছিল। সুতরাং, পৃথক মডিউলের প্রয়োজন নেই।
এই সংস্করণে অন্তর্ভুক্ত কমিটগুলির সম্পূর্ণ তালিকা এখানে পাওয়া যাবে।
নতুন বৈশিষ্ট্য
-
SavedStateRegistry.runOnNextRecreaction(Class<? extends AutoRecreated> clazz )যোগ করা হয়েছে। প্রদত্ত ক্লাসটি তাৎক্ষণিকভাবে চালু করা হবে এবং মালিকানা উপাদানটি পুনরায় চালু হলেAutoRecreated.onRecreatedপদ্ধতিটি চালানো হবে।
API পরিবর্তনগুলি
-
SavedStateRegistry<T>থেকে জেনেরিকগুলি সরানো হয়েছে - AbstractSavedStateRegistry এবং BundlableSavedStateRegistry মুছে ফেলা হয়েছে, পরিবর্তে সহজ
SavedStateRegistryব্যবহার করুন। -
BundleSavedStateRegistryOwnerএর নাম পরিবর্তন করেSavedStateRegistryOwnerকরা হয়েছে।
সংস্করণ 1.0.0-alpha01
১৭ ডিসেম্বর, ২০১৮
এটি SavedState এর প্রথম প্রকাশ।
নতুন বৈশিষ্ট্য
androidx.savedstate হল আলফা API-এর একটি নতুন সেট যা ডেভেলপারদের restore / saveInstanceState প্রক্রিয়ায় উপাদান প্লাগইন করার অনুমতি দেয়। API-এর প্রধান প্রবেশ বিন্দু হল SavedStateRegistry<T> , যা consumeRestoredStateForKey এর মাধ্যমে পূর্বে savedstate পুনরুদ্ধার করার এবং সিস্টেম অনুরোধ করলে savedstate প্রদানের জন্য registerSavedStateProvider এ একটি কলব্যাক নিবন্ধন করার একটি উপায় প্রদান করে।
সেভডস্টেট
| সর্বশেষ আপডেট | স্থিতিশীল রিলিজ | রিলিজ প্রার্থী | বিটা রিলিজ | আলফা রিলিজ |
|---|---|---|---|---|
| ৫ নভেম্বর, ২০২৫ | ১.৪.০ | - | - | - |
নির্ভরতা ঘোষণা করা
SavedState-এ নির্ভরতা যোগ করতে, আপনার প্রকল্পে Google Maven সংগ্রহস্থল যোগ করতে হবে। আরও তথ্যের জন্য Google-এর Maven সংগ্রহস্থল পড়ুন।
আপনার অ্যাপ বা মডিউলের জন্য build.gradle ফাইলে আপনার প্রয়োজনীয় আর্টিফ্যাক্টের জন্য নির্ভরতা যোগ করুন:
Groovy
dependencies { // Java language implementation implementation "androidx.savedstate:savedstate:1.4.0" // Kotlin implementation "androidx.savedstate:savedstate-ktx:1.4.0" }
Kotlin
dependencies { // Java language implementation implementation("androidx.savedstate:savedstate:1.4.0") // Kotlin implementation("androidx.savedstate:savedstate-ktx:1.4.0") }
নির্ভরতা সম্পর্কে আরও তথ্যের জন্য, বিল্ড নির্ভরতা যোগ করুন দেখুন।
প্রতিক্রিয়া
আপনার মতামত জেটপ্যাককে আরও উন্নত করতে সাহায্য করবে। আপনি যদি নতুন সমস্যা আবিষ্কার করেন বা এই লাইব্রেরিটি উন্নত করার জন্য কোন ধারণা থাকে তাহলে আমাদের জানান। নতুন একটি তৈরি করার আগে দয়া করে এই লাইব্রেরিতে বিদ্যমান সমস্যাগুলি একবার দেখে নিন। আপনি তারকা বোতামে ক্লিক করে বিদ্যমান সমস্যাটিতে আপনার ভোট যোগ করতে পারেন।
আরও তথ্যের জন্য ইস্যু ট্র্যাকার ডকুমেন্টেশন দেখুন।
সংস্করণ 1.4
সংস্করণ 1.4.0
০৫ নভেম্বর, ২০২৫
androidx.savedstate:savedstate-*:1.4.0 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-এ এই কমিটগুলি রয়েছে।
সংস্করণ 1.4.0-rc01
২২ অক্টোবর, ২০২৫
androidx.savedstate:savedstate-*:1.4.0-rc01 1.4.0-beta01 থেকে কোনও পরিবর্তন ছাড়াই প্রকাশিত হয়েছে। 1.4.0-rc01 সংস্করণে এই কমিটগুলি রয়েছে।
সংস্করণ 1.4.0-beta01
৮ অক্টোবর, ২০২৫
androidx.savedstate:savedstate-*:1.4.0-beta01 শেষ আলফা থেকে কোনও উল্লেখযোগ্য পরিবর্তন ছাড়াই প্রকাশিত হয়েছে। সংস্করণ 1.4.0-beta01-এ এই কমিটগুলি রয়েছে।
সংস্করণ 1.4.0-alpha03
২৭ আগস্ট, ২০২৫
androidx.savedstate:savedstate-*:1.4.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-alpha03-এ এই কমিটগুলি রয়েছে।
API পরিবর্তনগুলি
-
encodeToSavedStateএবংdecodeFromSavedStateএ nullable প্রকারের জন্য সমর্থন যোগ করুন। ( I79062 , b/439527454 ) - কম্পোজ 1.9.0 এ আপডেট করুন। ( I2b9de )
সংস্করণ 1.4.0-alpha02
১৩ আগস্ট, ২০২৫
androidx.savedstate:savedstate-*:1.4.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-alpha02-এ এই কমিটগুলি রয়েছে।
সংস্করণ 1.4.0-alpha01
৩০ জুলাই, ২০২৫
androidx.savedstate:savedstate-*:1.4.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-alpha01-এ এই কমিটগুলি রয়েছে।
API পরিবর্তনগুলি
-
SavedStateRegistryOwner.savedএ nullable প্রকারের জন্য নেটিভ সাপোর্ট যোগ করুন, nullable বৈশিষ্ট্য সংরক্ষণ এবং পুনরুদ্ধার সহজ করুন। ( Ia632 , b/421325690 )
সংস্করণ 1.3
সংস্করণ 1.3.3
১৭ সেপ্টেম্বর, ২০২৫
androidx.savedstate:savedstate-*:1.3.3 প্রকাশিত হয়েছে। সংস্করণ 1.3.3-এ এই কমিটগুলি রয়েছে।
বাগ ফিক্স
- কম্পোজ কম্পাইলার প্লাগইন প্রয়োগ না করার কারণে
SavedStateKMP আর্টিফ্যাক্টগুলি ভেঙে যাওয়ার একটি ত্রুটি সংশোধন করা হয়েছে। ( Id2290 , b/443965665 )
সংস্করণ 1.3.2
২৭ আগস্ট, ২০২৫
androidx.savedstate:savedstate-*:1.3.2 প্রকাশিত হয়েছে। সংস্করণ 1.3.2-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
- SavedState
*-composeআর্টিফ্যাক্টে নতুন Kotlin Multiplatform (KMP) টার্গেট যোগ করুন। Lifecycle এখন মোট নিম্নলিখিত প্ল্যাটফর্মগুলিকে সমর্থন করে: JVM (Android এবং Desktop), Native (Linux, iOS, watchOS, macOS, MinGW), এবং Web (JavaScript, WasmJS)। ( /Idcf26 )
সংস্করণ 1.3.1
১৬ জুলাই, ২০২৫
androidx.savedstate:savedstate-*:1.3.1 প্রকাশিত হয়েছে। সংস্করণ 1.3.1-এ এই কমিটগুলি রয়েছে।
বাগ ফিক্স
-
SavedStateআর্টিফ্যাক্টে টীকা দ্বারা সমর্থিত সমস্ত KMP টার্গেট যোগ করুন। -
SavedStateআর্টিফ্যাক্টগুলিতে নতুন Kotlin Multiplatform (KMP) টার্গেট যোগ করা হয়েছে।SavedStateএখন মোট নিম্নলিখিত প্ল্যাটফর্মগুলিকে সমর্থন করে: JVM (Android এবং Desktop), Native (Linux, iOS, watchOS, macOS, MinGW), এবং Web (JavaScript, WasmJS)। মনে রাখবেন যে*-composeআর্টিফ্যাক্টগুলিতে কোনও নতুন KMP টার্গেট যোগ করা হয়নি, কারণ এটি Compose 1.9. ( I062f4 ) এর স্থিতিশীল প্রকাশের উপর নির্ভর করে।
সংস্করণ 1.3.0
৭ মে, ২০২৫
androidx.savedstate:savedstate-*:1.3.0 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-এ এই কমিটগুলি রয়েছে।
১.২.০ থেকে গুরুত্বপূর্ণ পরিবর্তনগুলি
-
LocalSavedStateRegistryOwnerCompose UI থেকে নতুনsavedstate-composeমডিউলে স্থানান্তরিত করা হয়েছে যাতে এর Compose-ভিত্তিক সহায়ক API গুলি Compose UI এর বাইরে ব্যবহার করা যায়। Compose UI1.9.0-alpha02এবং উচ্চতর সংস্করণ ব্যবহার করার সময় এটি সর্বদা ব্যবহার করা উচিত, তবে এটি ব্যাকওয়ার্ড সামঞ্জস্যপূর্ণ যাতে এটি Compose এর সমস্ত সংস্করণের সাথে ব্যবহার করা যায়। -
savedstate-ktxkotlin এক্সটেনশনগুলি এখন বেস savedstate মডিউলে স্থানান্তরিত করা হয়েছে। -
findViewTreeSavedStateRegistryOwnerএর মাধ্যমে পুনরুদ্ধার করাSavedStateRegistryOwnerদৃষ্টান্তগুলি এখনViewOverlayএর মতো কোনও ভিউয়ের ডিসজয়েন্ট প্যারেন্টের মাধ্যমে সমাধান করা যেতে পারে। ডিসজয়েন্ট ভিউ প্যারেন্ট সম্পর্কে আরও তথ্যের জন্য core এর রিলিজ নোট বাViewTree.setViewTreeDisjointParentএর ডকুমেন্টেশন দেখুন।
কোটলিন মাল্টিপ্ল্যাটফর্ম
-
SavedStateমডিউলটি এখন KMP-এর সাথে সামঞ্জস্যপূর্ণ। সমর্থিত প্ল্যাটফর্মগুলিতে এখন Android, iOS, Linux, Mac এবং JVM ডেস্কটপ পরিবেশ অন্তর্ভুক্ত রয়েছে। KMP-তে অ্যাপ্লিকেশন স্টেট সংরক্ষণ এবং পুনরুদ্ধার করার জন্য একটি সুসংগত উপায় প্রদানের জন্য
SavedStateopaque টাইপকে একটি বিমূর্তকরণ হিসাবে প্রবর্তন করুন। এতে সংরক্ষণ করা অবস্থা পরিবর্তন করার জন্য একটিSavedStateReaderএবংSavedStateWriterঅন্তর্ভুক্ত রয়েছে। Android-এ,SavedStateহলBundleএর একটি টাইপ উপনাম, যা বাইনারি সামঞ্জস্যতা নিশ্চিত করে এবং বিদ্যমান API গুলিকে একটি সাধারণ উৎস সেটে স্থানান্তরিত করতে সহায়তা করে। অন্যান্য প্ল্যাটফর্মগুলিতে,SavedStateহল একটিMap<String, Any>উদাহরণ।// Create a new SavedState object using the savedState DSL: val savedState = savedState { putInt("currentPage", 1) putString("filter", "favorites") } // Read from a SavedState object val currentPage = savedState.read { getInt("currentPage") } // Edit an existing SavedState object savedState.write { remove("currentPage") }
KotlinX সিরিয়ালাইজেশন সাপোর্ট
SavedStateএখন KotlinX Serialization সাপোর্ট রয়েছে। আপনিencodeToSavedStateএবংdecodeFromSavedStateপদ্ধতি ব্যবহার করে@Serializableদিয়ে টীকাযুক্ত একটি ক্লাসকেSavedStateএ রূপান্তর করতে পারেন। ফিরে আসাSavedStateহল Android-এ একটি নিয়মিতBundleএবং এটিBundleগ্রহণকারী যেকোনো API দ্বারা ব্যবহার করা যেতে পারে।@Serializable data class Person(val firstName: String, val lastName: String) fun main() { val person = Person("John", "Doe") val encoded: SavedState = encodeToSavedState(person) val decoded: Person = decodeFromSavedState(encoded) }যদিও বেশিরভাগ প্রকার (যেমন আদিম প্রকার) কোনও কনফিগারেশনের প্রয়োজন ছাড়াই সরাসরি সমর্থিত, অতিরিক্ত সিরিয়ালাইজার যা
@Serializable(with = ___:class)এর সাথে ব্যবহার করা যেতে পারে সেগুলিsavedstateমডিউলেরandroidx.savedstate.serialization.serializersপ্যাকেজে এবংsavedstate-composeমডিউলেরandroidx.savedstate.compose.serialization.serializersপ্যাকেজে পাওয়া যেতে পারে।আমরা
SavedStateRegistryOwner(যেমন,ComponentActivity,Fragment, ইত্যাদি) তে@Serializableক্লাসগুলি সংরক্ষণ করা সহজ করার জন্যsaved, একটি lazy property delegateও অন্তর্ভুক্ত করেছি এবং প্রক্রিয়া মৃত্যু এবং পুনর্নির্মাণের সময় সেই ক্লাসগুলি স্বয়ংক্রিয়ভাবে পুনরুদ্ধার করা হবে। অনুগ্রহ করে মনে রাখবেন যেsavedডেলিগেটটি অলস এবং এটি অ্যাক্সেস না করা পর্যন্তinitlambda কল করবে না বাSavedStateRegistryতে কিছু সংরক্ষণ করবে না।@Serializable data class Person(val firstName: String, val lastName: String) class MyActivity : ComponentActivity() { var person by saved { Person("John", "Doe") } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) this.person = Person("Jane", "Doe") } }Lifecycle
2.9.0এSavedStateHandleএর জন্য একই রকম একটিsavedসম্পত্তি প্রতিনিধি যোগ করা হয়েছে।
সংস্করণ 1.3.0-rc01
২৩ এপ্রিল, ২০২৫
androidx.savedstate:savedstate-*:1.3.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-rc01-এ এই কমিটগুলি রয়েছে।
সংস্করণ 1.3.0-beta01
৯ এপ্রিল, ২০২৫
androidx.savedstate:savedstate-*:1.3.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-beta01-এ এই কমিটগুলি রয়েছে।
নির্ভরতা আপডেট
- এই লাইব্রেরিটি এখন Kotlin 2.0 ভাষা স্তরকে লক্ষ্য করে এবং KGP 2.0.0 বা তার পরবর্তী সংস্করণ প্রয়োজন। ( Idb6b5 )
সংস্করণ 1.3.0-alpha11
২৬ মার্চ, ২০২৫
androidx.savedstate:savedstate-*:1.3.0-alpha11 কোনও উল্লেখযোগ্য পাবলিক পরিবর্তন ছাড়াই প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha11-এ এই কমিটগুলি রয়েছে।
সংস্করণ 1.3.0-alpha10
১২ মার্চ, ২০২৫
androidx.savedstate:savedstate-*:1.3.0-alpha10 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha10-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
-
SavedStateReaderএ সংগ্রহgetজন্য নন-রিফাইন্ড পদ্ধতির ধরণ যোগ করুন। ( I0b641 , b/399820614 ) -
SavedStateConfigurationএencodeDefaultsযোগ করুন, যা ডিফল্ট মান সহ বৈশিষ্ট্যগুলি এনকোড করা উচিত কিনা তা কাস্টমাইজ করার অনুমতি দেয়। ( I893cc , b/395104517 ) -
mutableStateMapOfসমর্থন করার জন্যSnapshotStateMapSerializerযোগ করুন। ( Ie6f19 , b/378895074 ) -
mutableStateListOfসমর্থন করার জন্যSnapshotStateListSerializerযোগ করুন। ( I4d888 , b/378895074 ) -
SavedStateReader.getভেরিয়েন্টের জন্যgetOrNullবিকল্প পদ্ধতি যোগ করুন। এই পদ্ধতিগুলি আদিম মানগুলিকে স্বয়ংক্রিয়ভাবে বক্স করবে। ( I6228c , b/399820614 )
API পরিবর্তনগুলি
-
SavedStateReaderথেকেgetOrElseসরানgetOrNull() ?: else()এর পক্ষে। ( I87317 , b/399820614 ) -
SavedStateReaderএবংSavedStateWriterপদ্ধতি থেকেinlineমডিফায়ার সরান। ( If2a02 , b/399820614 ) - পাবলিক API ( Ida293 ) থেকে বিল্ট-ইন অ্যান্ড্রয়েড-নির্দিষ্ট তালিকা এবং অ্যারে সিরিয়ালাইজারগুলি সরান।
-
SparseParcelableArraySerializerSparseArraySerializer( I91de8 ) দিয়ে প্রতিস্থাপন করুন। - যখন ভ্যালু টাইপ রিটার্ন টাইপের সাথে মেলে না তখন থ্রো করে সমস্ত
SavedStateReader.getধারাবাহিকভাবে আচরণ করতে দিন ( I78c4a , b/399317598 ) -
SavedState*Delegatesনাম পরিবর্তন করেSavedState*Delegateকরুন। ( I8589b , b/399629301 ) -
SavedStateConfigনাম পরিবর্তন করেSavedStateConfigurationকরুন। ( I043a5 , b/399629301 )
সংস্করণ 1.3.0-alpha09
২৬ ফেব্রুয়ারী, ২০২৫
androidx.savedstate:savedstate-*:1.3.0-alpha09 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha09-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
- বিল্ট-ইন টাইপের জন্য ফলব্যাক যোগ করুন, নিশ্চিত করুন যে
Bundleদ্বারা সমর্থিত সমস্ত টাইপ ডিফল্টভাবেencodeAsSavedState/decodeFromSavedStateএর সাথে ব্যবহার করা যেতে পারে অথবা@Serializableক্লাসের প্রোপার্টিগুলির জন্য@Contextualঅ্যানোটেশনের মাধ্যমে ব্যবহার করা যেতে পারে। ( Ic01d2 ) -
SavedStateConfigএclassDiscriminatorএবংclassDiscriminatorModeজন্য সমর্থন অন্তর্ভুক্ত করুন। ( I69b66 , b/395104517 )
API পরিবর্তনগুলি
-
saved()ডেলিগেটগুলিতেSavedStateConfigপ্যারামিটার যোগ করুন ( I39b3a ) - বিল্ট-ইন সিরিয়ালাইজার সিঙ্গেলটন অবজেক্ট তৈরি করে ( Ifeee4 )
-
SavedStateConfigবৈশিষ্ট্যগুলি এখন সর্বজনীন, যা অন্যান্য মডিউলগুলিকে এই কনফিগারেশনগুলি ব্যবহার করতে সক্ষম করে। ( Ie5f49 , b/378897438 ) -
MutableStateFlowSerializerএবংMutableStateSerializer( I90953 ) এর জন্য@Serializer(with = ...)সমর্থন করুন। -
SavedStateReader( I14d10 ) এcontentDeepToStringযোগ করুন
সংস্করণ 1.3.0-alpha08
১২ ফেব্রুয়ারী, ২০২৫
androidx.savedstate:savedstate-*:1.3.0-alpha08 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha08-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
-
MutableStateSerializerlifecycle-viewmodel-composeথেকেsavedstate-composeএ সরান, যার ফলে আপনি Compose এরMutableStateদিয়ে SavedState Serialization API গুলি ব্যবহার করতে পারবেন। ( I4f690 , b/378895074 )
API পরিবর্তনগুলি
- একটি বিদ্যমান
SavedStateথেকেSavedStateতৈরি করতে একটি ফ্যাক্টরি ফাংশন যোগ করুন। ( I39f9a ) -
androidx.savedstateএArray<SavedState>এবংList<SavedState>এর জন্য সমর্থন যোগ করে। ( Idd8a5 ) - SavedState এনকোডিং/ডিকোডিং ( I6c4c0 ) তে
SavedStateConfigঐচ্ছিক প্যারামিটার যোগ করুন
সংস্করণ 1.3.0-alpha07
২৯ জানুয়ারী, ২০২৫
androidx.savedstate:savedstate-*:1.3.0-alpha07 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha07-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
-
kotlinx.coroutines.flow.MutableStateFlowসিরিয়ালাইজ করার জন্যMutableStateFlowSerializerযোগ করুন। ( I6a892 , b/378895070 )
API পরিবর্তনগুলি
- ওভারলোডেড
SavedStateRegistryOwner.saved()ডেলিগেট ফাংশনগুলিকে ডিফল্ট প্যারামিটার ( Icd1c1 ) দিয়ে প্রতিস্থাপন করুন। -
JavaSerializableSerializerএবংParcelableSerializerবিমূর্ত করুন ( I268f6 ) -
CharSequenceSerializer( Ib40bd ) থেকে জেনেরিকT : CharSequenceসরান
সংস্করণ 1.3.0-alpha06
১১ ডিসেম্বর, ২০২৪
androidx.savedstate:savedstate-*:1.3.0-alpha06 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha06-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
-
SavedStateKMP এখন নিম্নলিখিতগুলি সমর্থন করে:IBinder,Size,SizeF,Array<Parcelable>,SparseArray<Parcelable>এবং Serializable (Android)। ( I1ba94 , b/334076622 ) - আপনার ক্লাসের প্রাসঙ্গিক ক্ষেত্রটি
@Serializable(with = ParcelableSerializer::class)দিয়ে চিহ্নিত করে Bundle দ্বারা সমর্থিত Java এবং Android প্রকারগুলিকে এনকোড/ডিকোড করতেKSerializerইনস্ট্যান্স যোগ করুন। ( I8c10f , I28caf , b/376026712 ) -
SavedStateRegistryOwnerinstances retrieved viafindViewTreeSavedStateRegistryOwnercan now be resolved through disjoint parents of a view, such as aViewOverlay. See the release notes of core or the documentation inViewTree.setViewTreeDisjointParentfor more information on disjoint view parents. ( Iccb33 )
API পরিবর্তনগুলি
- Make the namings and package organization more consistent with
SavedStateRegistryOwnerDelegate( I8c135 , b/376026744 )
Version 1.3.0-alpha05
১৩ নভেম্বর, ২০২৪
androidx.savedstate:savedstate-*:1.3.0-alpha05 is released. Version 1.3.0-alpha05 contains these commits .
KotlinX Serialization Support
SavedStatenow includes KotlinX Serialization support. You can convert a class annotated with@Serializableto aSavedStateusing the methodsencodeToSavedStateanddecodeFromSavedState. The returnedSavedStateis a regularBundleon Android and can be used by any API that accepts aBundle. ( I6f59f , b/374102924 )@Serializable data class Person(val firstName: String, val lastName: String) fun main() { val person = Person("John", "Doe") val encoded: SavedState = encodeToSavedState(person) val decoded: Person = decodeFromSavedState(encoded) }We also have included
saved, a lazy property delegate, to make it easy to store@Serializableclasses in aSavedStateRegistryOwner(eg,ComponentActivity,Fragment, etc.) and have those classes automatically be restored across process death and recreation. Please note thesaveddelegate is lazy and will not call theinitlambda or save anything into theSavedStateRegistryuntil it is accessed. ( I66739 , b/376027806 )@Serializable data class Person(val firstName: String, val lastName: String) class MyActivity : ComponentActivity() { var person by saved { Person("John", "Doe") } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) this.person = Person("Jane", "Doe") } }There is a similar
savedproperty delegate forSavedStateHandleadded in Lifecycle2.9.0-alpha07.
API পরিবর্তনগুলি
- Add
toMaptoSavedState, allowing anySavedStateto be converted to a regularMap(shallow copy). ( I487b9 , b/334076622 ) -
SavedStateKMP now supports arrays. ( Ic0552 , b/334076622 )
Version 1.3.0-alpha04
৩০ অক্টোবর, ২০২৪
androidx.savedstate:savedstate-*:1.3.0-alpha04 is released. Version 1.3.0-alpha04 contains these commits .
API পরিবর্তনগুলি
- SavedState KMP now supports Char. ( I9ac2f , b/334076622 )
- Add
putNullandisNullto SavedState KMP. ( Iea71d , b/334076622 ) - Add additional
savedStatefactory parameters supporting an initialMap<String, Any>( I9b37d , b/334076622 ) - SavedState KMP now supports
contentDeepEqualscomparison. ( Ia515c , b/334076622 ) - SavedState KMP now supports Long. ( I4c180 , b/334076622 )
Version 1.3.0-alpha03
১৬ অক্টোবর, ২০২৪
androidx.savedstate:savedstate-*:1.3.0-alpha03 is released with no notable changes. Version 1.3.0-alpha03 contains these commits .
Version 1.3.0-alpha02
২ অক্টোবর, ২০২৪
androidx.savedstate:savedstate-*:1.3.0-alpha02 is released. Version 1.3.0-alpha02 contains these commits .
কোটলিন মাল্টিপ্ল্যাটফর্ম
- The
SavedStatemodule is now KMP compatible. Supported platforms now include Android, iOS, Linux, Mac, and JVM desktop environments. ( I26305 , b/334076622 )
নতুন বৈশিষ্ট্য
- Introduce
SavedStateopaque type as an abstraction to provide a consistent way to save and restore application state in KMP. It includes aSavedStateReaderandSavedStateWriterfor modifying the state to be saved. On Android,SavedStateis a type alias forBundle, ensuring binary compatibility and facilitating the migration of existing APIs to a common source set. On other platforms,SavedStateis aMap<String, Any>instance. ( I18575 , b/334076622 )
// Create a new SavedState object using the savedState DSL:
val savedState = savedState {
putInt("currentPage", 1)
putString("filter", "favorites")
}
// Read from a SavedState object
val currentPage = savedState.read { getInt("currentPage") }
// Edit an existing SavedState object
savedState.write {
remove("currentPage")
}
API পরিবর্তনগুলি
-
SavedStateRegistryandSavedStateRegistryControllerare now KMP compatible. ( Id7bb8 , b/334076622 ) -
SavedState,SavedStateWriterandSavedStateReaderare now KMP compatible. ( I26305 , b/334076622 )
Version 1.3.0-alpha01
৭ আগস্ট, ২০২৪
androidx.savedstate:savedstate:1.3.0-alpha01 and androidx.savedstate:savedstate-ktx:1.3.0-alpha01 are released. Version 1.3.0-alpha01 contains these commits .
API পরিবর্তনগুলি
- The
savedstate-ktxkotlin extensions have now been moved to the base savedstate module. ( I1cc18 , b/274803094 )
দ্রষ্টব্য
- Update
compileSdkto 35 ( 5dc41be )
সংস্করণ 1.2.1
সংস্করণ 1.2.1
২২ মার্চ, ২০২৩
androidx.savedstate:savedstate:1.2.1 and androidx.savedstate:savedstate-ktx:1.2.1 are released. Version 1.2.1 contains these commits.
Dependency Updates
-
SavedStatenow depends on Lifecycle2.6.1. ( c1f621 )
সংস্করণ 1.2.0
সংস্করণ 1.2.0
২৯ জুন, ২০২২
androidx.savedstate:savedstate:1.2.0 and androidx.savedstate:savedstate-ktx:1.2.0 are released. Version 1.2.0 contains these commits.
Important changes since 1.1.0
-
SavedStateRegistryControllernow allows early attachment of theSavedStateRegistryviaperformAttach(). - You can now retrieve a previously registered
SavedStateProviderfrom aSavedStateRegistryviagetSavedStateProvider(). - The
SavedStatelibrary has been rewritten in Kotlin.- For
SavedStateRegistryOwner, this is a source incompatible change for those classes written in Kotlin - you must now override thesavedStateRegistryproperty rather than implement the previousgetSavedStateRegistry()function. - For
ViewTreeSavedStateRegistryOwner, this is a source incompatible change for those classes written in Kotlin - you must now directly import and use the Kotlin extension methods onViewofandroidx.savedstate.setViewTreeSavedStateRegistryOwnerandandroidx.savedstate.findViewTreeSavedStateRegistryOwnerto set and find a previously set owner. This replaces thesavedstate-ktxAPI offindViewTreeSavedStateRegistryOwner.
- For
আচরণগত পরিবর্তন
-
SavedStateRegistryno longer saves an empty Bundle if there is no state to save.
Version 1.2.0-rc01
১১ মে, ২০২২
androidx.savedstate:savedstate:1.2.0-rc01 and androidx.savedstate:savedstate-ktx:1.2.0-rc01 are released. Version 1.2.0-rc01 contains these commits.
Documentation Changes
- The
SavedStateRegistryOwnerKdocs have been updated to clarify the responsibilities and contract that the owner has on how it should implement the interface or when they should call the methods onSavedStateRegistryController. ( Iefc95 , b/228887344 )
Version 1.2.0-beta01
২০ এপ্রিল, ২০২২
androidx.savedstate:savedstate:1.2.0-beta01 and androidx.savedstate:savedstate-ktx:1.2.0-beta01 are released. Version 1.2.0-beta01 contains these commits.
API পরিবর্তনগুলি
- The
SavedStateRegistryandViewTreeSavedStateRegistryOwnerclasses have been rewritten in Kotlin. ForViewTreeSavedStateRegistryOwner, this is a source incompatible change for those classes written in Kotlin - you must now directly import and use the Kotlin extension methods onViewofandroidx.savedstate.setViewTreeSavedStateRegistryOwnerandandroidx.savedstate.findViewTreeSavedStateRegistryOwnerto set and find a previously set owner. This replaces thesavedstate-ktxAPI offindViewTreeSavedStateRegistryOwner. This is binary compatible and remains source compatible for implementations written in the Java programming language. ( b/220191285 )
Version 1.2.0-alpha02
৬ এপ্রিল, ২০২২
androidx.savedstate:savedstate:1.2.0-alpha02 and androidx.savedstate:savedstate-ktx:1.2.0-alpha02 are released. Version 1.2.0-alpha02 contains these commits.
নতুন বৈশিষ্ট্য
- You can now retrieve a previously registered
SavedStateProviderfrom aSavedStateRegistryviagetSavedStateProvider(). ( I7ea47 , b/215406268 )
API পরিবর্তনগুলি
- The
SavedStateRegistryOwner,SavedStateRegistryController, andRecreatorclasses have been rewritten in Kotlin. ForSavedStateRegistryOwner, this is a source incompatible change for those classes written in Kotlin - you must now override thesavedStateRegistryproperty rather than implement the previousgetSavedStateRegistry()function. This is binary compatible and source compatible for implementations written in the Java programming language. ( b/220191285 )
Version 1.2.0-alpha01
২৬ জানুয়ারী, ২০২২
androidx.savedstate:savedstate:1.2.0-alpha01 and androidx.savedstate:savedstate-ktx:1.2.0-alpha01 are released. Version 1.2.0-alpha01 contains these commits.
নতুন বৈশিষ্ট্য
-
SavedStateRegistryControllernow allows early attachment of theSavedStateRegistryviaperformAttach(). ( Ice4bf )
আচরণগত পরিবর্তন
-
SavedStateRegistryno longer saves an empty Bundle if there is no state to save. ( aosp/1896865 , b/203457956 )
সংস্করণ 1.1.0
সংস্করণ 1.1.0
১০ ফেব্রুয়ারী, ২০২১
androidx.savedstate:savedstate:1.1.0 and androidx.savedstate:savedstate-ktx:1.1.0 are released. Version 1.1.0 contains these commits.
Major changes since 1.0.0
-
ViewTreeSavedStateRegistryOwnerAPI : A newViewTreeSavedStateRegistryOwner.get(View)API allows you to retrieve the containingSavedStateRegistrygiven aViewinstance. You must upgrade to Activity1.2.0, Fragment1.3.0, and AppCompat1.3.0-alpha01or higher to populate this correctly. -
savedstate-ktxartifact : The newsavedstate-ktxartifact has been added with afindViewTreeSavedStateRegistryOwner()Kotlin extension for working withViewTreeSavedStateRegistryOwner.
Version 1.1.0-rc01
১৬ ডিসেম্বর, ২০২০
androidx.savedstate:savedstate:1.1.0-rc01 and androidx.savedstate:savedstate-ktx:1.1.0-rc01 are released with no changes since 1.1.0-beta01 . Version 1.1.0-rc01 contains these commits.
Version 1.1.0-beta01
১ অক্টোবর, ২০২০
androidx.savedstate:savedstate:1.1.0-beta01 and androidx.savedstate:savedstate-ktx:1.1.0-beta01 are released with no changes since 1.1.0-alpha01 . Version 1.1.0-beta01 contains these commits.
Version 1.1.0-alpha01
২০ মে, ২০২০
androidx.savedstate:savedstate:1.1.0-alpha01 and androidx.savedstate:savedstate-ktx:1.1.0-alpha01 are released. Version 1.1.0-alpha01 contains these commits.
নতুন বৈশিষ্ট্য
- A new
ViewTreeSavedStateRegistryOwner.get(View)API allows you to retrieve the containingSavedStateRegistrygiven aViewinstance. You must upgrade to Activity1.2.0-alpha05, Fragment1.3.0-alpha05, and AppCompat1.3.0-alpha01to populate this correctly. ( aosp/1298679 ) - The new
savedstate-ktxartifact has been added with afindViewTreeSavedStateRegistryOwner()Kotlin extension for working withViewTreeSavedStateRegistryOwner. ( aosp/1299434 )
সংস্করণ 1.0.0
সংস্করণ 1.0.0
৫ সেপ্টেম্বর, ২০১৯
androidx.savedstate:savedstate:1.0.0 is released. The commits included in this version can be found here .
Major features of SavedState 1.0.0
androidx.savedstate graduated to a stable release. This is a set of APIs that allow developers to plugin components into the restore / saveInstanceState process. The main entry point of the API is SavedStateRegistry , which provides a way to retrieve previously saved states using consumeRestoredStateForKey and register a callback to registerSavedStateProvider to provide a saved state once system requests it.
Version 1.0.0-rc01
২ জুলাই, ২০১৯
androidx.savedstate:savedstate:1.0.0-rc01 is released. The commits included in this version can be found here .
বাগ সংশোধন
- Fixed incorrect proguard rule ( b/132655499 )
Version 1.0.0-beta01
৭ মে, ২০১৯
androidx.savedstate:savedstate:1.0.0-beta01 is released. The commits included in this version can be found here .
Version 1.0.0-alpha02
১৩ মার্চ, ২০১৯
androidx.savedstate:savedstate:1.0.0-alpha02 is released. androidx.savedstate:savedstate combines artifacts androidx.savedstate:savedstate-bundle and androidx.savedstate:savedstate-common into one artifact, because it was decided to simplify savedstate infrastructure and remove generics from SavedStateRegistry . Thus, there is no need for separate modules.
The full list of commits included in this version can be found here .
নতুন বৈশিষ্ট্য
-
SavedStateRegistry.runOnNextRecreaction(Class<? extends AutoRecreated> clazz )was added. The given class will be instantiated and the methodAutoRecreated.onRecreatedwill be run when the owning component restarted.
API পরিবর্তনগুলি
- Generics removed from
SavedStateRegistry<T> - AbstractSavedStateRegistry & BundlableSavedStateRegistry are removed, use simple
SavedStateRegistryinstead -
BundleSavedStateRegistryOwneris renamed toSavedStateRegistryOwner
Version 1.0.0-alpha01
December 17, 2018
This is the first release of SavedState .
নতুন বৈশিষ্ট্য
androidx.savedstate is a new set of alpha APIs that allow developers to plugin components to the restore / saveInstanceState process. The main entry point of the API is SavedStateRegistry<T> , which provides a way to retrieve previously savedstate via consumeRestoredStateForKey and register a callback to registerSavedStateProvider to provide a savedstate once system requests it.