Kolekcja
Ostatnia aktualizacja | Wersja stabilna | Wersja kandydująca | Wersja Beta | Wersja alfa |
---|---|---|---|---|
12 marca 2025 r. | 1.5.0 | - | - | - |
Deklarowanie zależności
Aby dodać zależność od Collection, musisz dodać do projektu repozytorium Google Maven. Więcej informacji znajdziesz w repozytorium Maven firmy Google.
Dodaj zależności dla artefaktów, których potrzebujesz, w pliku build.gradle
aplikacji lub modułu:
Groovy
dependencies { def collection_version = "1.5.0" implementation "androidx.collection:collection:$collection_version" }
Kotlin
dependencies { val collection_version = "1.5.0" implementation("androidx.collection:collection:$collection_version") }
Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.
Opinia
Twoja opinia pomo��e nam ulepszyć Jetpacka. Jeśli zauważysz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nowy problem, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz zagłosować na istniejący problem, klikając przycisk z gwiazdką.
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
Wersja 1.5
Wersja 1.5.0
12 marca 2025 r.
androidx.collection:collection-*:1.5.0
został zwolniony. Wersja 1.5.0 zawiera te komitowane zmiany.
Wersja 1.5.0-rc01
26 lutego 2025 r.
androidx.collection:collection-*:1.5.0-rc01
został zwolniony. Wersja 1.5.0-rc01 zawiera te zatwierdzenia.
Wersja 1.5.0-beta03
29 stycznia 2025 r.
androidx.collection:collection-*:1.5.0-beta03
został zwolniony. Wersja 1.5.0-beta03 zawiera te komisy.
Wersja 1.5.0-beta02
15 stycznia 2025 r.
androidx.collection:collection-*:1.5.0-beta02
został zwolniony. Wersja 1.5.0-beta02 zawiera te commity.
Wersja 1.5.0-beta01
11 grudnia 2024 r.
androidx.collection:collection-*:1.5.0-beta01
został zwolniony. Wersja 1.5.0-beta01 zawiera te komity.
Zmiany w interfejsie API
- Dodano obsługę
watchosDeviceArm64
KMP target i target kotlin 1.9 (Icf15d, b/364652024).
Wersja 1.5.0-alpha06
13 listopada 2024 r.
androidx.collection:collection-*:1.5.0-alpha06
został zwolniony. Wersja 1.5.0-alpha06 zawiera te komity.
Poprawki błędów
- Usunięto awarię, która mogła wystąpić w wersjach
SieveCache
iOrderedScatterSet
podczas dodawania wielu elementów, co powodowało powtarzające się kolizje kluczy. (Iaaf3d, b/375607736) - Dodaj do biblioteki kolekcji cel wasm. (I66fe3, b/352722444)
Wersja 1.5.0-alpha05
30 października 2024 r.
androidx.collection:collection-*:1.5.0-alpha05
został zwolniony. Wersja 1.5.0-alpha05 zawiera te komity.
Wersja 1.5.0-alpha04
16 października 2024 r.
androidx.collection:collection-*:1.5.0-alpha04
został zwolniony. Wersja 1.5.0-alpha04 zawiera te komity.
Wersja 1.5.0-alpha03
2 października 2024 r.
androidx.collection:collection-*:1.5.0-alpha03
został zwolniony. Wersja 1.5.0-alpha03 zawiera te komity.
Zmiany w interfejsie API
- Aktualizacja wersji Kotlina do 1.9 (I1a14c)
Darowizna zewnętrzna
- Przekieruj
contains
docontainsKey
. Dziękuję, Jake Wharton! (I9362b) - Dodawanie kreatorów kontenerów dla kolekcji specjalizowanych pod kątem skalarów. Dziękuję, Jake Wharton! (I13179)
Wersja 1.5.0-alpha02
18 września 2024 r.
androidx.collection:collection-*:1.5.0-alpha02
został zwolniony. Wersja 1.5.0-alpha02 zawiera te komity.
Zmiany w interfejsie API
- Dodano obsługę platformy docelowej
watchosDeviceArm64
. (I1cc04, b/364652024)
Wersja 1.5.0-alpha01
4 września 2024 r.
androidx.collection:collection-*:1.5.0-alpha01
został zwolniony. Wersja 1.5.0-alpha01 zawiera te komity.
Zmiany w interfejsie API
OrderedScatterSet
to nowa kolekcja z przypisanymi elementami (Ic4178)SieveCache
to nowa, niewymagająca przydziału wymiana dlaLruCache
, która zapewnia lepsze współczynniki trafień. (I50a17)- Wyświetlono wewnętrzną reprezentację
packedValue
w przypadkuIntIntPair
iFloatFloatPair
. (Ifeb75, b/331853566) - Dodawanie dostępu do tablicy treści w kolekcjach list. (I899d5, b/333903173)
- Dodaj
DoubleList
, czyli strukturę danych podobną do listy, zoptymalizowaną pod kątem wartości podwójnych. (Ia10d1, b/315127635)
Poprawki błędów
- Biblioteka kolekcji przechodzi na Kotlin 1.9 (I0782f)
- Zoptymalizuj wiele kolekcji, aby zwiększyć ich wydajność. (Ic0566)
Wersja 1.4
Wersja 1.4.5
30 października 2024 r.
androidx.collection:collection-*:1.4.5
został zwolniony. Wersja 1.4.5 zawiera te komity.
Wersja 1.4.4
18 września 2024 r.
androidx.collection:collection-*:1.4.4
został zwolniony. Wersja 1.4.4 zawiera te komity.
Poprawki błędów
- Obejście
ArrayIndexOutOfBounds
podczas sortowania pustej kolekcji. (I65245)
Wersja 1.4.3
7 sierpnia 2024 r.
androidx.collection:collection-*:1.4.3
został zwolniony. Wersja 1.4.3 zawiera te komity.
Poprawki błędów
- Usunięto uszkodzenie, które mogło wystąpić w funkcjach
ScatterMap
iScatterSet
oraz ich prymitywnych wariantach. (I38a4a, b/352560465) - optymalizacja wydajności; W szczególności:
- Zastąp wywołania
check()
irequired()
wariantami, które nie powodują zgłaszania wyjątków. Zmniejsza to rozmiar końcowego pliku binarnego, a co ważniejsze, nieco zmniejsza obciążenie pamięci podręcznej i. - Ulepszona funkcja
removeDeletedMarkers()
w rodzaju kolekcji „rozproszenie”. Nowa wersja usuwa 8 znaczników jednocześnie i pomija w tym procesie droższe zapisy. (Ic0566)
- Zastąp wywołania
Wersja 1.4.2
24 lipca 2024 r.
androidx.collection:collection-*:1.4.2
został zwolniony. Wersja 1.4.2 zawiera te komity.
Nowe funkcje
- Obejmuje dodatkowe platformy docelowe Kotlin Multiplatform:
watchos
,tvos
ilinuxArm64
. (b/352543988)
Wersja 1.4.1
10 lipca 2024 r.
androidx.collection:collection-*:1.4.1
został zwolniony. Wersja 1.4.1 zawiera te komitowane zmiany.
Poprawki błędów
- Usuwanie usuniętej informacji o usuniętym obiekcie z mapy lub zestawu podczas zmiany rozmiaru. (7a996c5, b/345960092)
Wersja 1.4.0
24 stycznia 2024 r.
androidx.collection:collection-*:1.4.0
został zwolniony. Wersja 1.4.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.3.0
Dodano nowe kolekcje o wysokiej wydajności do przechowywania prymitywów bez boksowania:
MutableScatterMap
&ScatterMap
– klasy z interfejsemMutableMap
i Map-like APIMutableScatterSet
iScatterSet
– zajęcia z interfejsem APIMutableSet
i Set-likeMutableObjectList
&ObjectList
– klasy z interfejsemMutableList
i interfejsem List-like API
Na przykład mapa z kluczem liczbowym i wartością typu odwołania to IntObjectMap<T>
. Mapowanie z długim kluczem i wartością zmiennoprzecinkową to LongFloatMap
. Nie ma wersji o nazwie ObjectObjectMap
, ponieważ jest ona objęta wersją ScatterMap/MutableScatterMap
.
Wersja 1.4.0-rc01
10 stycznia 2024 r.
androidx.collection:collection-*:1.4.0-rc01
jest opublikowany bez wprowadzenia zmian. Wersja 1.4.0-rc01 zawiera te zatwierdzenia.
Wersja 1.4.0-beta02
29 listopada 2023 r.
androidx.collection:collection-*:1.4.0-beta02
został zwolniony. Wersja 1.4.0-beta02 zawiera te zatwierdzenia.
Nowe funkcje
- Poprawiona wydajność
FloatFloatPair
. (If5537)
Poprawki błędów
ScatterMap.asMap()
iterator zwraca teraz nowe instancje (I28932, b/310365754)
Wersja 1.4.0-beta01
15 listopada 2023 r.
androidx.collection:collection-*:1.4.0-beta01
został zwolniony. Wersja 1.4.0-beta01 zawiera te commity.
Poprawki błędów
- Rozwiązanie problemu polegający na nieprawidłowym ustawianiu wartości w funkcji
ListIterator
(ObjectList
), co może powodować awarię z powodu funkcjiIndexOutOfBoundsException
. (I3bd8a, b/307049391)
Wersja 1.4.0-alpha02
18 października 2023 r.
androidx.collection:collection-*:1.4.0-alpha02
został zwolniony. Wersja 1.4.0-alpha02 zawiera te commity.
Zmiany w interfejsie API
- Dodano przeciążenie funkcji
put
, która zwraca poprzednią wartość, gdy zostanie zastąpiona wszystkimi prymitywnymi kolekcjami, takimi jakFloatFloatMap
. - Przekształcanie metod
removeIf
w przypadku kolekcji prymitywnych, takich jakMutableFloatFloatMap
, na metody wbudowane. Dzięki temu lambda dlaremoveIf
nie zostanie przydzielona.
Wersja 1.4.0-alpha01
4 października 2023 roku
androidx.collection:collection-*:1.4.0-alpha01
został zwolniony. Wersja 1.4.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
Dodano nowe kolekcje o wysokiej wydajności, które mają niskie obciążenie przy przypisywaniu i wysoką wydajność:
MutableScatterMap
&ScatterMap
– klasy z interfejsemMutableMap
i Map-like APIMutableScatterSet
iScatterSet
– zajęcia z interfejsem APIMutableSet
i Set-likeMutableObjectList
&ObjectList
– klasy z interfejsemMutableList
i interfejsem List-like API
Dodano nowe kolekcje o wysokiej wydajności do przechowywania prymitywów bez boksowania:
Mutable[Int|Float|Long]List
– klasy z interfejsem API podobnym doMutableList<Int|Float|Long>
. Istnieje też konto[Int|Float|Long]List
tylko do odczytu. Na przykład liczby całkowite mogą być przechowywane w poluIntList
.Mutable[Int|Float|Long]Set
– klasy z interfejsem API podobnym doMutableSet<Int|Float|Long>
. Istnieje też konto[Int|Float|Long]Set
tylko do odczytu. Na przykład w IntSet mogą być przechowywane liczby całkowite.Mutable[Int|Float|Long|Object][Int|Float|Long|Object]Map
– klasy z interfejsem API podobnym doMutable<Int|Float|Long,T, Int|Float|Long|T>
. Istnieje też konto[Int|Float|Long|Object][Int|Float|Long|Object]Map
tylko do odczytu. Na przykład mapa z kluczem liczbowym i wartością typu odwołania toIntObjectMap<T>
. Mapowanie z długim kluczem i wartością zmiennoprzecinkową toLongFloatMap
. Nie ma wersji o nazwieObjectObjectMap
, ponieważ jest ona objęta wersjąScatterMap/MutableScatterMap
.
Wersja 1.3.0
Wersja 1.3.0
4 października 2023 roku
androidx.collection:collection-*:1.3.0
został zwolniony. Wersja 1.3.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.2.0
- Kolekcje można teraz używać w projektach Kotlin Multiplatform. Kolekcje na platformach innych niż Android są nadal w wersji eksperymentalnej, ale zdecydowaliśmy się połączyć wersje, aby ułatwić deweloperom ich wypróbowanie.
- Cały kod źródłowy został przeniesiony do Kotlina. W ramach tej zmiany wiele interfejsów API ma teraz poprawne typy dla wartości null, a kilka prywatnych elementów pakietu stało się elementami
internal
. Lista dokładnych zmian znajduje się w informacji o wersji 1.3.x poniżej. - Wraz z migracją Kotlina artefakt
collection-ktx
został połączony z głównym artefaktem kolekcji. Możesz bezpiecznie usunąć wszystkie zależności odcollection:collection-ktx
, ponieważcollection:collection
jest teraz pusty.collection-ktx
Wersja 1.3.0-rc01
6 września 2023 r.
androidx.collection:collection-*:1.3.0-rc01
jest opublikowany bez wprowadzenia zmian. Wersja 1.3.0-rc01 zawiera te commity.
Wersja 1.3.0-beta01
9 sierpnia 2023 r.
androidx.collection:collection-*:1.3.0-beta01
został zwolniony. Wersja 1.3.0-beta01 zawiera te zatwierdzenia.
Wersja 1.3.0-alpha04
24 marca 2023 r.
androidx.collection:collection-*:1.3.0-alpha04
został zwolniony.
Poprawki błędów
- Usunięto ograniczenia zależności z artefaktów Maven, aby obejść problem z tworzeniem w przypadku docelowych platform natywnych Kotlina (b/274786186, KT-57531).
Wersja 1.3.0-alpha03
22 marca 2023 r.
androidx.collection:collection-*:1.3.0-alpha03
został zwolniony. Wersja 1.3.0-alpha03 zawiera te commity.
Nowe funkcje
- Kolekcje możesz teraz używać w projektach KMM. Kolekcje na platformach innych niż Android są nadal w wersji eksperymentalnej, ale zdecydowaliśmy się połączyć wersje, aby ułatwić deweloperom ich wypróbowanie.
Zmiany w interfejsie API
ArraySet
używa teraz funkcjiMutableCollections
zamiastAbstractMutableCollection
, aby umożliwić bardziej wydajne wykorzystanie pamięci przez funkcjętoArray
(I1ac32).
Poprawki błędów
ArraySet.toArray
jest teraz dostępna tylko w JVM, ponieważ zawsze była dołączana tylko ze względu na zgodność z językiem Java. Użytkownicy Kotlina powinni zamiast tego używać pomocników.toTypedArray
z stdlib, które zapewniają dokładnie te same funkcje z dodatkowym zabezpieczeniem typów. (I2c59b)
Wersja 1.3.0-alpha02
27 lipca 2022 roku
androidx.collection:collection:1.3.0-alpha02
i androidx.collection:collection-ktx:1.3.0-alpha02
są dostępne. Wersja 1.3.0-alpha02 zawiera te commity.
Zmiany w interfejsie API
SparseArrayCompat
jest teraz dostępny na platformach innych niż JVM z użyciem wspólnego artefaktu (Ic9bd0, b/219589118, b/228347315).CircularIntArray
jest teraz dostępny na platformach innych niż JVM z użytkiem z wspólnego artefaktu (I3d8ef, b/228344943).LongSparseArray
jest teraz dostępny na platformach innych niż JVM z wspólnego artefaktu (I73149, b/228347315).
Wersja 1.3.0-alpha01
29 czerwca 2022 r.
androidx.collection:collection:1.3.0-alpha01
i androidx.collection:collection-ktx:1.3.0-alpha01
są dostępne. Wersja 1.3.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
collection-ktx
rozszerzeń zostały przeniesione do głównego artefaktu kolekcjiandroidx.collection:collection
. Ta zmiana sprawia, że istniejące rozszerzenia -ktx są dostępne dla użytkowników Kotlina bez konieczności korzystania z zależności -ktx, przy jednoczesnym zachowaniu zgodności dla dotychczasowych użytkowników. Utrzymywanie tych rozszerzeń w oddzielnym pliku -ktx nie ma już sensu, ponieważ główny plik został przeniesiony do Kotlina. (I6eef2)
Zmiany w interfejsie API
ArraySet
rozszerza terazAbstractMutableCollection
i nie implementuje już bezpośrednio interfejsu Collection. (If6da0, b/230860589)- Konwertowanie
ArraySet
na Kotlin. Ze względu na bardziej rygorystyczne typowanie niektóre wywołania Kotlina mogą przestać się kompilować. (Id68c1, b/230860589)- Te wywołania mają argument typu
T
, a nieT?
:ArraySet<T>.contains(null)
ArraySet<T>.add(null)
ArraySet<T>.remove(null)
- Te wywołania mają typ zwracany
T?
, a nieT!
:ArraySet<T?>.valueAt(n)
ArraySet<T?>.removeAt(n)
ArraySet<T?>().iterator().next()
- Z poziomu Kotlina nie można już wykonywać tych wywołań:
set.toArray()
– użycieset.toTypedArray()
set.toArray(array)
– użycieset.forEachIndexed(array::set)
- Te wywołania mają argument typu
- Połącz przeciążony konstruktor dla
SparseArrayCompat
jako opcjonalny argument dla użytkowników Kotlina. (If8407, b/227474719) - Usuń składnię operatora w przypadku
SparseArrayCompat.get(key, defaultValue).
. Pamiętaj, że nadal możesz używać tej składni w przypadku.get(key)
, ale w ten sposób lepiej dopasujesz interfejs APISparseArrayCompat
do innych klas w tej bibliotece. (I9a38d) - Przekształć rozszerzenia
LongSparseArray
w główny element, androidx.collection:collection. Ta zmiana sprawia, że istniejące rozszerzenia -ktx są dostępne dla użytkowników Kotlina bez konieczności korzystania z zależności -ktx, przy jednoczesnym zachowaniu zgodności dla dotychczasowych użytkowników. Utrzymywanie tych rozszerzeń w oddzielnym pliku -ktx nie ma już sensu, ponieważ główny plik został przeniesiony do Kotlina. (I8659a) - Przekształć
LongSparseArray
na Kotlin. Ta zmiana dodaje do typów jawną nieważność, co jest zmianą zgodną z binarną, ale może powodować niezgodność źródłową. W szczególności: *.isEmpty
nie jest już dostępna jako właściwość, należy do niej uzyskać dostęp jako do wywołania funkcji w Kotlinie –.isEmpty()
(Idfd0f). - Przekształć
SimpleArrayMap
na Kotlin. Ta zmiana wprowadza kilka niezgodnych zmian, które wynikają z interoperacyjności Javy i Kotlina oraz możliwości prawidłowego definiowania pustości typów w źródle.- Interfejsy API prywatne pakietu
.mSize
,.mArray
,.mHashes
,.indexOf()
,.indexOfNull()
i.indexOfValue()
zostały oznaczone jako prywatne – jest to technicznie zmiana niezgodna z binarną wersją, ale odzwierciedla zamierzoną widoczność tych pól i jest najbliższa temu, co możemy osiągnąć w Kotlinie, ponieważ nie ma sposobu na określenie widoczności prywatnej pakietu. - Nieważność niektórych typów jest teraz prawidłowo zdefiniowana. Dotyczy to metod:
.getOrDefault
,.keyAt
,.valueAt
,.setValueAt
,.put
,.putIfAbsent
,.removeAt
i.replace
. - Użytkownicy Kotlina mogą teraz wywoływać funkcję
.isEmpty()
tylko za pomocą dostępu do właściwości, a nie bezpośrednio. (I271b7, b/182813986)
- Interfejsy API prywatne pakietu
Przekształć
CircularArray
na Kotlin. Ważne zmiany:- Poprawiono błąd dotyczący pustych wartości w typach ogólnych, aby były niepuste. Wcześniej nie można było ich zadeklarować, ale były one wymuszane we wszystkich publicznych interfejsach API.
- Ze względu na interoperacyjność Kotlina z językiem Java wcześniej można było uzyskać dostęp do niektórych metod jako właściwości i funkcji. Jednak aby zmniejszyć duplikację przy zachowaniu zgodności binarnej, konieczne było usunięcie tych elementów, co jest zmianą niezgodną z źródłem. Dotyczy to wywołań
.isEmpty
,.getLast()
i.getFirst()
. (Ifffac)
Przekształć
CircularIntArray
na Kotlin. Ze względu na interoperacyjność Kotlina z językiem Java wcześniej można było uzyskać dostęp do niektórych metod jako właściwości i funkcji. Jednak aby zmniejszyć duplikowanie przy zachowaniu zgodności binarnej, konieczne było usunięcie tych plików, co jest zmianą niezgodną ze źródłem. Dotyczy to połączeń:.isEmpty
,.getLast()
i.getFirst()
. (Ie36ce)Przekształcanie
LruCache
na Kotlin (Ia2f19)Przekształć
SparseArrayCompat
na Kotlin. (If6fe8)W funkcji
SparseArrayCompat.valueAt()
wprowadzono niewielką zmianę zachowania, dzięki której nie zwraca ona już nieprawidłowo wartościnull
w przypadku nieinicjowanych wywołań spoza zakresusize()
, ale w ramach podanej początkowej pojemności.Ta zmiana wprowadza też prawidłową wartość null dla niektórych typów, która wcześniej była niedostępna.
.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)
Wersja 1.2.0
Wersja 1.2.0
1 grudnia 2021 r.
androidx.collection:collection:1.2.0
i androidx.collection:collection-ktx:1.2.0
są dostępne. Wersja 1.2.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.1.0
- Dodaj konstruktor tablicy do klasy
ArraySet
. (Id7f19) - Spraw, aby aplikacja była zgodna z interfejsem API
entrySet()
. Aby to zrobić, zaimplementuj interfejsyentrySet().toArray()
,remove()
,removeAll()
iretainAll()
oraz usuń interfejsentrySet().addAll()
(I5d505)
Wersja 1.2.0-rc01
17 listopada 2021 r.
androidx.collection:collection:1.2.0-rc01
i androidx.collection:collection-ktx:1.2.0-rc01
są dostępne. Wersja 1.2.0-rc01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Brak zmian w porównaniu z poprzednią wersją beta.
Wersja 1.2.0-beta01
13 października 2021 r.
androidx.collection:collection:1.2.0-beta01
i androidx.collection:collection-ktx:1.2.0-beta01
są dostępne. Wersja 1.2.0-beta01 zawiera te commity.
Poprawki błędów
- Spraw, aby aplikacja była zgodna z interfejsem API
entrySet()
. Aby to zrobić, zaimplementuj interfejsyentrySet().toArray()
,remove()
,removeAll()
iretainAll()
oraz usuń implementację interfejsuentrySet().addAll()
(I5d505)
Wersja 1.2.0-alpha01
16 grudnia 2020 roku
androidx.collection:collection:1.2.0-alpha01
i androidx.collection:collection-ktx:1.2.0-alpha01
są dostępne. Wersja 1.2.0-alpha01 zawiera te commity.
Zmiany w interfejsie API
- Dodaj konstruktor tablicy do klasy
ArraySet
. (Id7f19)
Wersja 1.1.0
Wersja 1.1.0
5 czerwca 2019 r.
androidx.collection:collection:1.1.0
i androidx.collection:collection-ktx:1.1.0
są dostępne. Zmiany uwzględnione w wersji 1.1.0 znajdziesz tutaj.
Poniżej podsumowanie zmian w wersji 1.1.0 w porównaniu z wersją 1.0.0:
Nowe funkcje
- Użyj bardziej efektywnej implementacji funkcji
contains
iisNotEmpty
w pliku artefaktu „collection-ktx”. (aosp/866529)
Zmiany w interfejsie API
- Dodaj użytkowników
putIfAbsent
do albumówLongSparseArray
,SimpleArrayMap
iSparseArrayCompat
(aosp/772608) - Dodaj
getOrDefault
doSimpleArrayMap
(aosp/772607) - Dodaj funkcję
remove
z 2 argumentami do funkcjiLongSparseArray
,SimpleArrayMap
iSparseArrayCompat
. wycofać odpowiednie rozszerzenia KTX obsługujące tę funkcję. (aosp/772482) - Dodanie do funkcji
LongSparseArray
,SimpleArrayMap
iSparseArrayCompat
parametrureplace
z 2 argumentami (aosp/772483) - Dodaj do funkcji
LongSparseArray
,SimpleArrayMap
iSparseArrayCompat
argumentreplace
o 3 wartościach (aosp/772484) - wycofać zbędne metody
delete
. Metodaremove
udostępnia ten sam interfejs API i te same funkcje co interfejs API używany przez niespecjalistyczne Mapy. (aosp/866053)
Poprawki błędów
- Zmień wartość
SimpleArrayMap
, aby zsynchronizować wewnętrzną globalną pamięć podręczną tablic na serwerzeSimpleArrayMap.class
zamiast na serwerzeArrayMap.class
. Dzięki temu, jeśli używasz tylkoSimpleArrayMap
, narzędzia do kompresji kodu mogą usunąćArrayMap
. (aosp/934557)
Wersja 1.1.0-rc01
7 maja 2019 r.
androidx.collection:collection:1.1.0-rc01
i androidx.collection:collection-ktx:1.1.0-rc01
są dostępne. Zmiany zawarte w tej wersji znajdziesz tutaj.
Nowe funkcje
- Użyj bardziej efektywnej implementacji funkcji
contains
iisNotEmpty
w pliku artefaktu „collection-ktx”. (aosp/866529)
Wersja 1.1.0-beta01
3 kwietnia 2019 r.
androidx.collection:collection:1.1.0-beta01
i androidx.collection:collection-ktx:1.1.0-beta01
są dostępne. Zmiany zawarte w tej wersji znajdziesz tutaj.
Zmiany w interfejsie API
- Usunięto metodę wymienioną w notatkach do wersji alpha03, w której zmieniono wartość
@RestrictTo
. Nie był używany przez żadną bibliotekę AndroidX (obecnie ani w przeszłości) i nie oferował żadnych funkcji, których brakowało w publicznych interfejsach API.
Poprawki błędów
- Zmień wartość
SimpleArrayMap
, aby zsynchronizować wewnętrzną globalną pamięć podręczną tablic na serwerzeSimpleArrayMap.class
zamiast na serwerzeArrayMap.class
. Dzięki temu, jeśli używasz tylkoSimpleArrayMap
, narzędzia do kompresji kodu mogą usunąćArrayMap
. (aosp/934557)
Wersja 1.1.0-alpha03
13 marca 2019 r.
androidx.collection:collection:1.0.0-alpha03
i androidx.collection:collection-ktx:1.0.0-alpha03
są dostępne.
Pełną listę zatwierdzeń zawartych w tej wersji znajdziesz tutaj.
Zmiany w interfejsie API
- Metoda
ArraySet
, która wcześniej była oznaczona jako@RestrictTo(LIBRARY_GROUP)
, została zmieniona na@RestrictTo(LIBRARY_GROUP_PREFIX)
. Ma to na celu umożliwienie używania przez inne biblioteki AndroidX, które są teraz w różnych identyfikatorach grup Maven. Ta metoda zostanie udostępniona publicznie lub usunięta w wersji 1.1.0-alpha04, ponieważ inne biblioteki AndroidX nie powinny otrzymywać specjalnych interfejsów API, których nie mają inni deweloperzy.
Wersja 1.1.0-alpha02
30 stycznia 2019 r.
androidx.collection:collection 1.1.0-alpha02
i androidx.collection:collection-ktx 1.1.0-alpha02
są dostępne.
Zmiany w interfejsie API
- wycofać zbędne metody
delete
. Metodyremove
udostępniają ten sam interfejs API i te same funkcje co interfejs API używany przez niespecjalistyczne Mapy. (aosp/866053)
Wersja 1.1.0-alpha01
3 grudnia 2018 r.
Zmiany w interfejsie API
- Dodaj
putIfAbsent
do albumówLongSparseArray
,SimpleArrayMap
iSparseArrayCompat
(aosp/772608) - Dodaj
getOrDefault
doSimpleArrayMap
(aosp/772607) - Dodaj funkcję
remove
z 2 argumentami do funkcjiLongSparseArray
,SimpleArrayMap
iSparseArrayCompat
. wycofać odpowiednie rozszerzenia KTX obsługujące tę funkcję. (aosp/772482) - Dodanie do funkcji
LongSparseArray
,SimpleArrayMap
iSparseArrayCompat
parametrureplace
z 2 argumentami (aosp/772483) - Dodaj do funkcji
LongSparseArray
,SimpleArrayMap
iSparseArrayCompat
argumentreplace
o 3 wartościach (aosp/772484)