সংগ্রহ
সর্বশেষ আপডেট | স্থিতিশীল রিলিজ | প্রার্থী মুক্তি | বিটা রিলিজ | আলফা রিলিজ |
---|---|---|---|---|
13 নভেম্বর, 2024 | 1.4.5 | - | - | 1.5.0-আলফা06 |
নির্ভরতা ঘোষণা করা
সংগ্রহের উপর নির্ভরতা যোগ করতে, আপনাকে অবশ্যই আপনার প্রকল্পে Google Maven সংগ্রহস্থল যোগ করতে হবে। আরও তথ্যের জন্য Google এর Maven সংগ্রহস্থল পড়ুন।
আপনার অ্যাপ বা মডিউলের জন্য build.gradle
ফাইলে আপনার প্রয়োজনীয় আর্টিফ্যাক্টগুলির জন্য নির্ভরতা যোগ করুন:
গ্রোভি
dependencies { def collection_version = "1.4.5" implementation "androidx.collection:collection:$collection_version" }
কোটলিন
dependencies { val collection_version = "1.4.5" implementation("androidx.collection:collection:$collection_version") }
নির্ভরতা সম্পর্কে আরও তথ্যের জন্য, বিল্ড নির্ভরতা যুক্ত করুন দেখুন।
প্রতিক্রিয়া
আপনার প্রতিক্রিয়া জেটপ্যাককে আরও ভাল করতে সাহায্য করে। আপনি যদি নতুন সমস্যা আবিষ্কার করেন বা এই লাইব্রেরির উন্নতির জন্য ধারনা পান তাহলে আমাদের জানান। আপনি একটি নতুন তৈরি করার আগে অনুগ্রহ করে এই লাইব্রেরিতে বিদ্যমান সমস্যাগুলি দেখুন৷ আপনি তারকা বোতামে ক্লিক করে একটি বিদ্যমান সমস্যায় আপনার ভোট যোগ করতে পারেন।
আরও তথ্যের জন্য ইস্যু ট্র্যাকার ডকুমেন্টেশন দেখুন।
সংস্করণ 1.5
সংস্করণ 1.5.0-alpha06
13 নভেম্বর, 2024
androidx.collection:collection-*:1.5.0-alpha06
প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha06-এ এই কমিট রয়েছে।
বাগ ফিক্স
- বারবার কী সংঘর্ষের ফলে অসংখ্য আইটেম যোগ করার সময়
SieveCache
এবংOrderedScatterSet
এ ঘটতে পারে এমন একটি ক্র্যাশ সংশোধন করা হয়েছে। ( IAaf3d , b/375607736 ) - সংগ্রহ লাইব্রেরিতে wasm লক্ষ্য যোগ করুন। ( I66fe3 , b/352722444 )
সংস্করণ 1.5.0-alpha05
30 অক্টোবর, 2024
androidx.collection:collection-*:1.5.0-alpha05
প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha05-এ এই কমিট রয়েছে।
সংস্করণ 1.5.0-alpha04
অক্টোবর 16, 2024
androidx.collection:collection-*:1.5.0-alpha04
প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha04 এই কমিট ধারণ করে।
সংস্করণ 1.5.0-alpha03
2 অক্টোবর, 2024
androidx.collection:collection-*:1.5.0-alpha03
প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha03-এ এই কমিট রয়েছে।
এপিআই পরিবর্তন
- কোটলিন সংস্করণ আপডেট 1.9 ( I1a14c )
বাহ্যিক অবদান
- ফরোয়ার্ড-এ
containsKey
এcontains
। ধন্যবাদ Jake Wharton! ( I9362b ) - স্কেলার-বিশেষ সংগ্রহের জন্য কন্টেইনার নির্মাতা যোগ করুন। ধন্যবাদ Jake Wharton! ( I13179 )
সংস্করণ 1.5.0-alpha02
সেপ্টেম্বর 18, 2024
androidx.collection:collection-*:1.5.0-alpha02
প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha02-এ এই কমিট রয়েছে।
এপিআই পরিবর্তন
-
watchosDeviceArm64
প্ল্যাটফর্ম লক্ষ্যের জন্য সমর্থন যোগ করে। ( I1cc04 , b/364652024 )
সংস্করণ 1.5.0-alpha01
4 সেপ্টেম্বর, 2024
androidx.collection:collection-*:1.5.0-alpha01
প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha01-এ এই কমিট রয়েছে।
এপিআই পরিবর্তন
-
OrderedScatterSet
হল একটি নতুন অর্ডার করা, বরাদ্দ-মুক্ত সংগ্রহ ( Ic4178 ) -
SieveCache
হলLruCache
এর জন্য একটি নতুন বরাদ্দ-মুক্ত প্রতিস্থাপন যা আরও ভাল হিট অনুপাতের বৈশিষ্ট্যগুলি অফার করে৷ ( I50a17 ) -
IntIntPair
এবংFloatFloatPair
জন্যpackedValue
অভ্যন্তরীণ উপস্থাপনা উন্মুক্ত করা হয়েছে। ( Ifeb75 , b/331853566 ) - তালিকা সংগ্রহে বিষয়বস্তু অ্যারেতে অ্যাক্সেস যোগ করা হচ্ছে। ( I899d5 , b/333903173 )
-
DoubleList
যোগ করুন, দ্বৈত মানের জন্য অপ্টিমাইজ করা একটি তালিকার মতো ডেটা স্ট্রাকচার। ( IA10d1 , b/315127635 )
বাগ ফিক্স
- সংগ্রহের লাইব্রেরি কোটলিন 1.9 ( I0782f ) টার্গেট করতে চলেছে
- আরো দক্ষ হতে অনেক সংগ্রহ অপ্টিমাইজ করুন। ( IC0566 )
সংস্করণ 1.4
সংস্করণ 1.4.5
30 অক্টোবর, 2024
androidx.collection:collection-*:1.4.5
প্রকাশিত হয়েছে। সংস্করণ 1.4.5-এ এই কমিটগুলি রয়েছে।
সংস্করণ 1.4.4
সেপ্টেম্বর 18, 2024
androidx.collection:collection-*:1.4.4
প্রকাশিত হয়েছে। সংস্করণ 1.4.4-এ এই কমিট রয়েছে।
বাগ ফিক্স
- একটি খালি সংগ্রহ বাছাই করার সময় ওয়ার্কআউন্ড
ArrayIndexOutOfBounds
। ( I65245 )
সংস্করণ 1.4.3
7 আগস্ট, 2024
androidx.collection:collection-*:1.4.3
প্রকাশিত হয়েছে। সংস্করণ 1.4.3-এ এই কমিটগুলি রয়েছে।
বাগ ফিক্স
-
ScatterMap
,ScatterSet
, এবং তাদের আদিম রূপগুলিতে ঘটতে পারে এমন একটি দুর্নীতির সমাধান করা হয়েছে৷ ( I38a4a , b/352560465 ) - কর্মক্ষমতা অপ্টিমাইজেশান. বিশেষ করে:
-
check()
এবংrequired()
করার জন্য কলগুলিকে পরিবর্তন করুন যা ইনলাইন ব্যতিক্রম থ্রো করে না। এটি চূড়ান্ত বাইনারি আকার হ্রাস করে এবং আরও গুরুত্বপূর্ণভাবে আই-ক্যাশের চাপকে কিছুটা উপশম করে। - সংগ্রহের "স্ক্যাটার" পরিবারে উন্নত
removeDeletedMarkers()
। নতুন সংস্করণটি মুছে ফেলা মার্কারগুলিকে একবারে 8 মার্কারগুলিকে সাফ করে এবং প্রক্রিয়াটিতে আরও ব্যয়বহুল লেখাগুলি এড়িয়ে যায়৷ ( IC0566 )
-
সংস্করণ 1.4.2
জুলাই 24, 2024
androidx.collection:collection-*:1.4.2
প্রকাশিত হয়েছে। সংস্করণ 1.4.2-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
- অতিরিক্ত Kotlin মাল্টিপ্ল্যাটফর্ম লক্ষ্যগুলি অন্তর্ভুক্ত করে:
watchos
,tvos
,linuxArm64
। ( b/352543988 )
সংস্করণ 1.4.1
10 জুলাই, 2024
androidx.collection:collection-*:1.4.1
প্রকাশিত হয়েছে। সংস্করণ 1.4.1-এ এই কমিটগুলি রয়েছে।
বাগ ফিক্স
- আকার পরিবর্তন করার সময় মানচিত্র/সেট থেকে মুছে ফেলা সমাধির পাথর সরান। ( 7a996c5 , b/345960092 )
সংস্করণ 1.4.0
24 জানুয়ারী, 2024
androidx.collection:collection-*:1.4.0
প্রকাশিত হয়েছে। সংস্করণ 1.4.0 এই কমিট ধারণ করে.
1.3.0 থেকে গুরুত্বপূর্ণ পরিবর্তন
বক্সিং ছাড়া আদিম সংরক্ষণের জন্য নতুন উচ্চ-দক্ষ সংগ্রহ যোগ করা হয়েছে:
-
MutableScatterMap
এবংScatterMap
-MutableMap
এবং Map-like API সহ ক্লাস -
MutableScatterSet
&ScatterSet
-MutableSet
এবং Set-like API সহ ক্লাস -
MutableObjectList
&ObjectList
-MutableList
এবং List-like API সহ ক্লাস
উদাহরণস্বরূপ, একটি পূর্ণসংখ্যা কী এবং একটি রেফারেন্স টাইপ মান সহ একটি মানচিত্র হল একটি IntObjectMap<T>
। একটি দীর্ঘ কী এবং একটি ফ্লোট মান সহ একটি মানচিত্র হল একটি LongFloatMap
। ObjectObjectMap
নামের কোনো সংস্করণ নেই কারণ এটি ScatterMap/MutableScatterMap
দ্বারা আচ্ছাদিত।
সংস্করণ 1.4.0-rc01
জানুয়ারী 10, 2024
androidx.collection:collection-*:1.4.0-rc01
কোনো পরিবর্তন ছাড়াই প্রকাশ করা হয়েছে। সংস্করণ 1.4.0-rc01-এ এই কমিট রয়েছে।
সংস্করণ 1.4.0-beta02
নভেম্বর 29, 2023
androidx.collection:collection-*:1.4.0-beta02
প্রকাশিত হয়েছে। 1.4.0-beta02 সংস্করণে এই কমিট রয়েছে।
নতুন বৈশিষ্ট্য
-
FloatFloatPair
এর উন্নত কর্মক্ষমতা। ( if5537 )
বাগ ফিক্স
-
ScatterMap.asMap()
পুনরাবৃত্তিকারী এখন নতুন উদাহরণ প্রদান করে ( I28932 , b/310365754 )
সংস্করণ 1.4.0-beta01
15 নভেম্বর, 2023
androidx.collection:collection-*:1.4.0-beta01
প্রকাশিত হয়েছে। সংস্করণ 1.4.0-beta01-এ এই কমিট রয়েছে।
বাগ ফিক্স
-
IndexOutOfBoundsException
এর কারণে একটি ক্র্যাশ হতে পারে এমনObjectList
ListIterator
জন্য ভুলভাবে মান নির্ধারণ করুন। ( I3bd8a , b/307049391 )
সংস্করণ 1.4.0-alpha02
18 অক্টোবর, 2023
androidx.collection:collection-*:1.4.0-alpha02
প্রকাশিত হয়েছে। সংস্করণ 1.4.0-alpha02 এই কমিট ধারণ করে।
এপিআই পরিবর্তন
-
put
জন্য ওভারলোড যোগ করা হয়েছে যা পূর্ববর্তী মান প্রদান করে যখন এটি সমস্ত আদিম সংগ্রহে প্রতিস্থাপিত হয়, যেমনFloatFloatMap
। -
removeIf
আদিম সংগ্রহের পদ্ধতিতে রূপান্তর করুন, যেমনMutableFloatFloatMap
ইনলাইনে। এটি নিশ্চিত করে যেremoveIf
জন্য ল্যাম্বডা বরাদ্দ করা হয় না।
সংস্করণ 1.4.0-alpha01
4 অক্টোবর, 2023
androidx.collection:collection-*:1.4.0-alpha01
প্রকাশিত হয়েছে। 1.4.0-alpha01 সংস্করণে এই কমিট রয়েছে।
নতুন বৈশিষ্ট্য
নতুন উচ্চ-দক্ষতা সংগ্রহ যোগ করা হয়েছে যার কম বরাদ্দ ওভারহেড এবং উচ্চ কার্যকারিতা রয়েছে:
-
MutableScatterMap
এবংScatterMap
-MutableMap
এবং Map-like API সহ ক্লাস -
MutableScatterSet
&ScatterSet
-MutableSet
এবং Set-like API সহ ক্লাস -
MutableObjectList
&ObjectList
-MutableList
এবং List-like API সহ ক্লাস
বক্সিং ছাড়া আদিম সংরক্ষণের জন্য নতুন উচ্চ-দক্ষ সংগ্রহ যোগ করা হয়েছে:
-
Mutable[Int|Float|Long]List
-MutableList<Int|Float|Long>
-এর মত API সহ ক্লাস। শুধুমাত্র পঠনযোগ্য[Int|Float|Long]List
বিদ্যমান। উদাহরণস্বরূপ, পূর্ণসংখ্যাগুলি একটিIntList
এ রাখা যেতে পারে। -
Mutable[Int|Float|Long]Set
-MutableSet<Int|Float|Long>
-এর মত API সহ ক্লাস। শুধুমাত্র পঠনযোগ্য[Int|Float|Long]Set
বিদ্যমান। উদাহরণস্বরূপ, পূর্ণসংখ্যাগুলি একটি IntSet-এ রাখা যেতে পারে। -
Mutable<Int|Float|Long,T, Int|Float|Long|T>
Mutable[Int|Float|Long|Object][Int|Float|Long|Object]Map
শুধুমাত্র পঠনযোগ্য[Int|Float|Long|Object][Int|Float|Long|Object]Map
বিদ্যমান। উদাহরণস্বরূপ, একটি পূর্ণসংখ্যা কী এবং একটি রেফারেন্স টাইপ মান সহ একটি মানচিত্র হল একটিIntObjectMap<T>
। একটি দীর্ঘ কী এবং একটি ফ্লোট মান সহ একটি মানচিত্র হল একটিLongFloatMap
।ObjectObjectMap
নামের কোনো সংস্করণ নেই কারণ এটিScatterMap/MutableScatterMap
দ্বারা আচ্ছাদিত।
সংস্করণ 1.3.0
সংস্করণ 1.3.0
4 অক্টোবর, 2023
androidx.collection:collection-*:1.3.0
প্রকাশিত হয়েছে। সংস্করণ 1.3.0 এই কমিট ধারণ করে.
1.2.0 থেকে গুরুত্বপূর্ণ পরিবর্তন
- আপনি এখন কোটলিন মাল্টিপ্ল্যাটফর্ম প্রকল্পগুলিতে সংগ্রহগুলি ব্যবহার করতে পারেন৷ মনে রাখবেন যে সংগ্রহগুলির নন-অ্যান্ড্রয়েড লক্ষ্যগুলি এখনও পরীক্ষামূলক, তবে আমরা বিকাশকারীদের জন্য সেগুলি ব্যবহার করা সহজ করার জন্য সংস্করণগুলিকে মার্জ করার সিদ্ধান্ত নিয়েছি৷
- সমস্ত উৎস কোটলিনে স্থানান্তরিত হয়েছে। এই পরিবর্তনের অংশ হিসেবে, অনেক API এখন সঠিকভাবে টাইপ করা হয়েছে শূন্যতার জন্য এবং কিছু প্যাকেজ প্রাইভেট সদস্য
internal
হয়ে গেছে। নীচের 1.3.x-এর জন্য ছোটো রিলিজ নোটগুলিতে সঠিক পরিবর্তনগুলির একটি তালিকা পাওয়া যায়। - কোটলিন মাইগ্রেশনের সাথে,
collection-ktx
মূল সংগ্রহের আর্টিফ্যাক্টের সাথে একীভূত হয়েছে। আপনিcollection:collection-ktx
এর পক্ষে যেকোন নির্ভরতাকে নিরাপদে বাদ দিতে পারেন:collection-ktx
হিসাবেcollection:collection
এখন খালি।
সংস্করণ 1.3.0-rc01
6 সেপ্টেম্বর, 2023
androidx.collection:collection-*:1.3.0-rc01
কোনো পরিবর্তন ছাড়াই প্রকাশ করা হয়েছে। সংস্করণ 1.3.0-rc01-এ এই কমিট রয়েছে।
সংস্করণ 1.3.0-beta01
9 আগস্ট, 2023
androidx.collection:collection-*:1.3.0-beta01
প্রকাশিত হয়েছে। সংস্করণ 1.3.0-beta01-এ এই কমিট রয়েছে।
সংস্করণ 1.3.0-alpha04
24 মার্চ, 2023
androidx.collection:collection-*:1.3.0-alpha04
প্রকাশিত হয়েছে।
বাগ ফিক্স
- কোটলিন নেটিভ টার্গেটস ( b/274786186 , KT-57531 ) এ বিল্ড সমস্যা সমাধানের জন্য মাভেন আর্টিফ্যাক্টস থেকে নির্ভরতার সীমাবদ্ধতা দূর করা হয়েছে।
সংস্করণ 1.3.0-alpha03
22 মার্চ, 2023
androidx.collection:collection-*:1.3.0-alpha03
প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha03 এই কমিট ধারণ করে।
নতুন বৈশিষ্ট্য
- আপনি এখন KMM প্রকল্পগুলিতে সংগ্রহগুলি ব্যবহার করতে পারেন৷ নোট করুন যে সংগ্রহগুলির নন-অ্যান্ড্রয়েড লক্ষ্যগুলি এখনও পরীক্ষামূলক তবে আমরা বিকাশকারীদের পক্ষে সেগুলি ব্যবহার করা সহজ করার জন্য সংস্করণগুলিকে মার্জ করার সিদ্ধান্ত নিয়েছি৷
এপিআই পরিবর্তন
-
ArraySet
এখনtoArray
( I1ac32 ) এর আরও মেমরি দক্ষ বাস্তবায়নের জন্যAbstractMutableCollection
এর পরিবর্তেMutableCollections
প্রয়োগ করে
বাগ ফিক্স
-
ArraySet.toArray
এখন শুধুমাত্র JVM-এ উপলব্ধ কারণ এটি সবসময় শুধুমাত্র জাভার সাথে সামঞ্জস্যের জন্য অন্তর্ভুক্ত ছিল। Kotlin ব্যবহারকারীদের সাধারণত stdlib এর.toTypedArray
সাহায্যকারী ব্যবহার করা উচিত, যা অতিরিক্ত ধরনের নিরাপত্তার সাথে একই কার্যকারিতা প্রদান করে। ( I2c59b )
সংস্করণ 1.3.0-alpha02
জুলাই 27, 2022
androidx.collection:collection:1.3.0-alpha02
এবং androidx.collection:collection-ktx:1.3.0-alpha02
প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha02 এই কমিট ধারণ করে।
এপিআই পরিবর্তন
-
SparseArrayCompat
এখন সাধারণ আর্টিফ্যাক্ট ( Ic9bd0 , b/219589118 , b/228347315 ) থেকে নন-jvm প্ল্যাটফর্মগুলিতে উপলব্ধ -
CircularIntArray
এখন সাধারণ আর্টিফ্যাক্ট ( I3d8ef , b/228344943 ) থেকে নন-jvm প্ল্যাটফর্মগুলিতে উপলব্ধ -
LongSparseArray
এখন সাধারণ আর্টিফ্যাক্ট ( I73149 , b/228347315 ) থেকে নন-jvm প্ল্যাটফর্মগুলিতে উপলব্ধ
সংস্করণ 1.3.0-alpha01
জুন 29, 2022
androidx.collection:collection:1.3.0-alpha01
এবং androidx.collection:collection-ktx:1.3.0-alpha01
প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha01-এ এই কমিট রয়েছে।
নতুন বৈশিষ্ট্য
-
collection-ktx
এক্সটেনশনগুলিকে মূল সংগ্রহ আর্টিফ্যাক্ট,androidx.collection:collection
এ স্থানান্তরিত করা হয়েছে। এই পরিবর্তনটি প্রাক-বিদ্যমান -ktx এক্সটেনশানগুলিকে Kotlin ব্যবহারকারীদের কাছে অ্যাক্সেসযোগ্য করে তোলে -ktx নির্ভরতা প্রয়োজন ছাড়াই, এখনও বিদ্যমান ব্যবহারকারীদের জন্য সামঞ্জস্য বজায় রাখে। এই এক্সটেনশনগুলিকে আলাদা -ktx আর্টিফ্যাক্টে রক্ষণাবেক্ষণ করা আর উপকারী নয় যেহেতু মূল আর্টিফ্যাক্টটি কোটলিনে চলে গেছে। ( I6eef2 )
এপিআই পরিবর্তন
-
ArraySet
এখনAbstractMutableCollection
প্রসারিত করে এবং আর সরাসরি সংগ্রহ ইন্টারফেস প্রয়োগ করে না। ( if6da0 , b/230860589 ) - কোটলিনে
ArraySet
রূপান্তরিত। কঠোর টাইপিংয়ের কারণে, কিছু Kotlin কল আর কম্পাইল নাও হতে পারে। ( Id68c1 , b/230860589 )- নিচের কলগুলোর আর্গুমেন্ট টাইপ
T
,T?
:-
ArraySet<T>.contains(null)
-
ArraySet<T>.add(null)
-
ArraySet<T>.remove(null)
-
- নিম্নোক্ত কলের রিটার্ন টাইপ
T?
,T!
:-
ArraySet<T?>.valueAt(n)
-
ArraySet<T?>.removeAt(n)
-
ArraySet<T?>().iterator().next()
-
- কোটলিন থেকে নিম্নলিখিত কলগুলি আর সম্ভব নয়:
-
set.toArray()
-set.toTypedArray()
ব্যবহার করুন -
set.toArray(array)
-set.forEachIndexed(array::set)
ব্যবহার করুন
-
- নিচের কলগুলোর আর্গুমেন্ট টাইপ
- Kotlin ব্যবহারকারীদের জন্য একটি ঐচ্ছিক যুক্তি হিসাবে
SparseArrayCompat
জন্য ওভারলোডেড কনস্ট্রাক্টরকে একত্রিত করুন। ( if8407 , b/227474719 ) -
SparseArrayCompat.get(key, defaultValue).
মনে রাখবেন এটি এখনও.get(key)
এর জন্য অপারেটর সিনট্যাক্সের অনুমতি দেয়, তবেSparseArrayCompat
এর API পৃষ্ঠকে এই লাইব্রেরির অন্যান্য ক্লাসের সাথে আরও ভালভাবে সারিবদ্ধ করে। ( I9a38d ) -
LongSparseArray
এক্সটেনশনগুলিকে প্রধান আর্টিফ্যাক্ট, androidx.collection:collection-এ স্থানান্তর করুন। এই পরিবর্তনটি প্রাক-বিদ্যমান -ktx এক্সটেনশানগুলিকে Kotlin ব্যবহারকারীদের কাছে অ্যাক্সেসযোগ্য করে তোলে -ktx নির্ভরতা প্রয়োজন ছাড়াই, এখনও বিদ্যমান ব্যবহারকারীদের জন্য সামঞ্জস্য বজায় রাখে। এই এক্সটেনশনগুলিকে আলাদা -ktx আর্টিফ্যাক্টে রক্ষণাবেক্ষণ করা আর উপকারী নয় যেহেতু মূল আর্টিফ্যাক্টটি কোটলিনে চলে গেছে। ( I8659a ) -
LongSparseArray
Kotlin এ রূপান্তর করুন। এই পরিবর্তনটি এর প্রকারগুলিতে সুস্পষ্ট শূন্যতা যোগ করে, যা একটি বাইনারি সামঞ্জস্যপূর্ণ পরিবর্তন, কিন্তু উত্স অসঙ্গতি সৃষ্টি করতে পারে। বিশেষ করে: *.isEmpty
আর একটি সম্পত্তি হিসাবে অ্যাক্সেসযোগ্য নয়, এটি অবশ্যই Kotlin -.isEmpty()
( Idfd0f ) এ একটি ফাংশন কল হিসাবে অ্যাক্সেস করতে হবে -
SimpleArrayMap
Kotlin এ রূপান্তর করুন। জাভা-কোটলিন ইন্টারপ এবং উৎসে প্রকারের শূন্যতা সঠিকভাবে সংজ্ঞায়িত করার ক্ষমতার ফলে এই পরিবর্তনটি কয়েকটি বেমানান পরিবর্তন প্রবর্তন করে।- প্যাকেজ প্রাইভেট API,
.mSize
,.mArray
,.mHashes
,.indexOf()
,.indexOfNull()
, এবং.indexOfValue()
, ব্যক্তিগত করা হয়েছিল - এটি প্রযুক্তিগতভাবে একটি বাইনারি বেমানান পরিবর্তন, কিন্তু এই ক্ষেত্রের উদ্দেশ্যমূলক দৃশ্যমানতাকে প্রতিফলিত করে এবং এটি কোটলিনে আমরা অর্জন করতে পারি সবচেয়ে কাছের কারণ এতে প্যাকেজ-ব্যক্তিগত দৃশ্যমানতা নির্দিষ্ট করার উপায় অন্তর্ভুক্ত নেই। - কিছু ধরণের শূন্যতা এখন সঠিকভাবে সংজ্ঞায়িত করা হয়েছে, প্রভাবিত পদ্ধতিগুলি হল:
.getOrDefault
,.keyAt
,.valueAt
,.setValueAt
,.put
,.putIfAbsent
,.removeAt
,.replace
। - Kotlin ব্যবহারকারীদের জন্য,
.isEmpty()
এখন সম্পত্তি অ্যাক্সেসের পরিবর্তে শুধুমাত্র একটি ফাংশন হিসাবে উপলব্ধ। ( I271b7 , b/182813986 )
- প্যাকেজ প্রাইভেট API,
CircularArray
Kotlin এ রূপান্তর করুন। উল্লেখযোগ্য পরিবর্তন:- এর জেনেরিকের শূন্যতাকে নন-নাল হওয়ার জন্য সংশোধন করে, যা পূর্বে ঘোষণা করা অসম্ভব ছিল, কিন্তু তার সমস্ত পাবলিক API-এ প্রয়োগ করা হয়েছিল।
- কোটলিনের জাভা ইন্টারপের কারণে, পূর্বে বৈশিষ্ট্য বা ফাংশন উভয় হিসাবে নির্দিষ্ট পদ্ধতিতে অ্যাক্সেস করা সম্ভব ছিল। যাইহোক, বাইনারি সামঞ্জস্য বজায় রাখার সময় ডুপ্লিকেশন কমাতে, এইগুলি অপসারণ করা প্রয়োজন ছিল, যা একটি উৎস-বেমানান পরিবর্তন। প্রভাবিত কলগুলি হল:
.isEmpty
,.getLast()
এবং.getFirst()
। ( ইফফাক )
CircularIntArray
Kotlin এ রূপান্তর করুন। কোটলিনের জাভা ইন্টারপের কারণে, পূর্বে বৈশিষ্ট্য বা ফাংশন উভয় হিসাবে নির্দিষ্ট পদ্ধতিতে অ্যাক্সেস করা সম্ভব ছিল। যাইহোক, বাইনারি সামঞ্জস্য বজায় রাখার সময় ডুপ্লিকেশন কমাতে, এইগুলি অপসারণ করা প্রয়োজন ছিল, যা একটি উৎস-বেমানান পরিবর্তন। প্রভাবিত কলগুলি হল:.isEmpty
,.getLast()
এবং.getFirst()
। ( IE36ce )LruCache
কে Kotlin ( Ia2f19 ) এ রূপান্তর করুনSparseArrayCompat
Kotlin এ রূপান্তর করুন। ( if6fe8 )SparseArrayCompat.valueAt()
তে একটি ছোট আচরণের পরিবর্তন যোগ করা হয়েছে, যাsize()
সীমার বাইরে অন-প্রাথমিক কলের জন্য আর ভুলভাবেnull
ফেরত দেয় না কিন্তু প্রদত্ত প্রাথমিক ক্ষমতার মধ্যে।এই পরিবর্তনটি পূর্বে অনুপস্থিত কিছু ধরণের জন্য সঠিক শূন্যতাও প্রবর্তন করে।
-
.get(): E?
->.get(): E
-
.replace(Int, Int?): Int?
->.replace(Int, Int): Int?
-
.replace(Int, Int?, Int?): Boolean
->.replace(Int, Int, Int): Boolean
-
.put(Int, Int?)
->.put(Int, Int)
-
.putIfAbsent(Int, Int?): Int?
->.putIfAbsent(Int, Int): Int?
-
.setValueAt(index: Int, value: Int?)
->.setValueAt(index: Int, value: Int)
-
.indexOfValue(value: Int?): Int
->.indexOfValue(value: Int): Int
-
.containsValue(value: Int?): Boolean
->.containsValue(value: Int): Boolean
-
.append(key: Int, value: Int?)
->.append(key: Int, value: Int)
-
সংস্করণ 1.2.0
সংস্করণ 1.2.0
ডিসেম্বর 1, 2021
androidx.collection:collection:1.2.0
এবং androidx.collection:collection-ktx:1.2.0
প্রকাশিত হয়েছে। সংস্করণ 1.2.0 এই কমিট ধারণ করে.
1.1.0 থেকে গুরুত্বপূর্ণ পরিবর্তন
-
ArraySet
এ একটি অ্যারে কনস্ট্রাক্টর যোগ করুন। ( Id7f19 ) -
entrySet().toArray()
,remove()
,removeAll()
, এবংretainAll()
, এবংentrySet().addAll()
( I5d505 ) এর বাস্তবায়ন অপসারণ করেentrySet()
API- অনুগত করুন
সংস্করণ 1.2.0-rc01
17 নভেম্বর, 2021
androidx.collection:collection:1.2.0-rc01
এবং androidx.collection:collection-ktx:1.2.0-rc01
প্রকাশিত হয়েছে। সংস্করণ 1.2.0-rc01-এ এই কমিট রয়েছে।
এপিআই পরিবর্তন
- পূর্ববর্তী বিটা থেকে কোন পরিবর্তন নেই।
সংস্করণ 1.2.0-beta01
13 অক্টোবর, 2021
androidx.collection:collection:1.2.0-beta01
এবং androidx.collection:collection-ktx:1.2.0-beta01
প্রকাশিত হয়েছে। সংস্করণ 1.2.0-beta01-এ এই কমিট রয়েছে।
বাগ ফিক্স
-
entrySet().toArray()
,remove()
,removeAll()
, এবংretainAll()
, এবংentrySet().addAll()
( I5d505 ) এর বাস্তবায়ন অপসারণ করেentrySet()
API- অনুগত করুন
সংস্করণ 1.2.0-alpha01
16 ডিসেম্বর, 2020
androidx.collection:collection:1.2.0-alpha01
এবং androidx.collection:collection-ktx:1.2.0-alpha01
প্রকাশিত হয়েছে। সংস্করণ 1.2.0-alpha01-এ এই কমিট রয়েছে।
এপিআই পরিবর্তন
-
ArraySet
এ একটি অ্যারে কনস্ট্রাক্টর যোগ করুন। ( Id7f19 )
সংস্করণ 1.1.0
সংস্করণ 1.1.0
জুন 5, 2019
androidx.collection:collection:1.1.0
এবং androidx.collection:collection-ktx:1.1.0
প্রকাশিত হয়েছে। অন্তর্ভুক্ত কমিট 1.1.0 এখানে পাওয়া যাবে.
নীচে 1.0.0 থেকে 1.1.0 পর্যন্ত পরিবর্তনগুলির একটি সারসংক্ষেপ রয়েছে:
নতুন বৈশিষ্ট্য
- 'collection-ktx' artifact-এ
contains
এবংisNotEmpty
ফাংশনের জন্য আরও দক্ষ বাস্তবায়ন ব্যবহার করুন। ( aosp/866529 )
এপিআই পরিবর্তন
-
LongSparseArray
,SimpleArrayMap
, এবংSparseArrayCompat
( aosp/772608 ) এputIfAbsent
যোগ করুন -
SimpleArrayMap
এgetOrDefault
যোগ করুন ( aosp/772607 ) -
LongSparseArray
,SimpleArrayMap
, এবংSparseArrayCompat
এ টু-আর্গুমেন্টremove
যোগ করুন। এই কার্যকারিতার জন্য সংশ্লিষ্ট KTX এক্সটেনশনগুলিকে অবমূল্যায়ন করুন। ( aosp/772482 ) -
LongSparseArray
,SimpleArrayMap
, এবংSparseArrayCompat
( aosp/772483 ) এ দুই-আর্গুমেন্টreplace
যোগ করুন -
LongSparseArray
,SimpleArrayMap
, এবংSparseArrayCompat
( aosp/772484 ) এ তিন-আর্গুমেন্টreplace
যোগ করুন - অপ্রয়োজনীয়
delete
পদ্ধতি বাতিল করুন।remove
পদ্ধতি একই API এবং কার্যকারিতা অফার করে এবং নন-স্পেশালাইজড ম্যাপ দ্বারা ব্যবহৃত API-এর সাথে মেলে। ( aosp/866053 )
বাগ ফিক্স
-
ArrayMap.class
এর পরিবর্তেSimpleArrayMap.class
এ অ্যারের অভ্যন্তরীণ গ্লোবাল ক্যাশে সিঙ্ক্রোনাইজ করতেSimpleArrayMap
পরিবর্তন করুন। এটি নিশ্চিত করে যে আপনি যদি শুধুমাত্রSimpleArrayMap
ব্যবহার করেন তবেArrayMap
কোড সঙ্কুচিত করার সরঞ্জাম দ্বারা সরানো যেতে পারে। ( aosp/934557 )
সংস্করণ 1.1.0-rc01
7 মে, 2019
androidx.collection:collection:1.1.0-rc01
এবং androidx.collection:collection-ktx:1.1.0-rc01
প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলি এখানে পাওয়া যাবে।
নতুন বৈশিষ্ট্য
- 'collection-ktx' artifact-এ
contains
এবংisNotEmpty
ফাংশনের জন্য আরও দক্ষ বাস্তবায়ন ব্যবহার করুন। ( aosp/866529 )
সংস্করণ 1.1.0-beta01
3 এপ্রিল, 2019
androidx.collection:collection:1.1.0-beta01
এবং androidx.collection:collection-ktx:1.1.0-beta01
প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলি এখানে পাওয়া যাবে।
এপিআই পরিবর্তন
- alpha03 রিলিজ নোটে উল্লিখিত পদ্ধতিটির
@RestrictTo
মান পরিবর্তন করা হয়েছে। এটি কোনো AndroidX লাইব্রেরি দ্বারা অব্যবহৃত ছিল (এখন বা ঐতিহাসিকভাবে) এবং এটি এমন কোনো কার্যকারিতা অফার করেনি যা পাবলিক API থেকে অনুপস্থিত ছিল।
বাগ ফিক্স
-
ArrayMap.class
এর পরিবর্তেSimpleArrayMap.class
এ অ্যারের অভ্যন্তরীণ গ্লোবাল ক্যাশে সিঙ্ক্রোনাইজ করতেSimpleArrayMap
পরিবর্তন করুন। এটি নিশ্চিত করে যে আপনি যদি শুধুমাত্রSimpleArrayMap
ব্যবহার করেন তবেArrayMap
কোড সঙ্কুচিত করার সরঞ্জাম দ্বারা সরানো যেতে পারে। ( aosp/934557 )
সংস্করণ 1.1.0-alpha03
13 মার্চ, 2019
androidx.collection:collection:1.0.0-alpha03
এবং androidx.collection:collection-ktx:1.0.0-alpha03
প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত প্রতিশ্রুতির সম্পূর্ণ তালিকা এখানে পাওয়া যাবে।
এপিআই পরিবর্তন
-
ArraySet
পূর্বে চিহ্নিত@RestrictTo(LIBRARY_GROUP)
এর একটি পদ্ধতি@RestrictTo(LIBRARY_GROUP_PREFIX)
এ পরিবর্তিত হয়েছে। এটি অন্যান্য AndroidX লাইব্রেরিগুলির দ্বারা ঐতিহাসিক ব্যবহারকে সমর্থন করার জন্য যা এখন বিভিন্ন Maven গ্রুপ আইডিতে রয়েছে৷ এই পদ্ধতিটি হয় সর্বজনীন করা হবে বা 1.1.0-alpha04-এ সরানো হবে কারণ অন্যান্য AndroidX লাইব্রেরিগুলি বিশেষ API গুলি পাবে না যা অন্যান্য বিকাশকারীরা পায় না৷
সংস্করণ 1.1.0-alpha02
30 জানুয়ারী, 2019
androidx.collection:collection 1.1.0-alpha02
এবং androidx.collection:collection-ktx 1.1.0-alpha02
প্রকাশিত হয়েছে।
এপিআই পরিবর্তন
- অপ্রয়োজনীয়
delete
পদ্ধতি বাতিল করুন।remove
পদ্ধতি একই API এবং কার্যকারিতা প্রদান করে এবং অ-বিশেষায়িত মানচিত্র দ্বারা ব্যবহৃত API-এর সাথে মেলে। ( aosp/866053 )
সংস্করণ 1.1.0-alpha01
ডিসেম্বর 3, 2018
এপিআই পরিবর্তন
-
LongSparseArray
,SimpleArrayMap
, এবংSparseArrayCompat
( aosp/772608 ) এputIfAbsent
যোগ করুন -
SimpleArrayMap
এgetOrDefault
যোগ করুন ( aosp/772607 ) -
LongSparseArray
,SimpleArrayMap
, এবংSparseArrayCompat
এ টু-আর্গুমেন্টremove
যোগ করুন। এই কার্যকারিতার জন্য সংশ্লিষ্ট KTX এক্সটেনশনগুলিকে অবমূল্যায়ন করুন। ( aosp/772482 ) -
LongSparseArray
,SimpleArrayMap
, এবংSparseArrayCompat
( aosp/772483 ) এ দুই-আর্গুমেন্টreplace
যোগ করুন -
LongSparseArray
,SimpleArrayMap
, এবংSparseArrayCompat
( aosp/772484 ) এ তিন-আর্গুমেন্টreplace
যোগ করুন