Coleção
| Atualização mais recente | Versão estável | Versão candidata a lançamento | Versão Beta | Versão Alfa |
|---|---|---|---|---|
| 27 de agosto de 2025 | 1.5.0 | - | - | 1.6.0-alpha01 |
Declarar dependências
Para adicionar uma dependência a Collection, é preciso adicionar o repositório Maven do Google ao projeto. Leia Repositório Maven do Google para ver mais informações.
Adicione as dependências dos artefatos necessários no arquivo build.gradle para
seu app ou módulo:
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") }
Para ver mais informações sobre dependências, consulte Adicionar dependências de build.
Feedback
Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas conhecidos nesta biblioteca antes de criar um novo. Adicione seu voto a um problema clicando no botão de estrela.
Consulte a documentação do Issue Tracker para saber mais.
Versão 1.6
Versão 1.6.0-alpha01
27 de agosto de 2025
Lançamento de androidx.collection:collection-*:1.6.0-alpha01. A versão 1.6.0-alpha01 contém estas confirmações.
Mudanças na API
- Os projetos lançados com o Kotlin 2.0 exigem o KGP 2.0.0 ou mais recente para serem consumidos (Idb6b5)
Correções de bugs
- Antes,
SparseArrayCompatretornavanullpara valueAt ekeyAtquando um índice dentro do intervalo alocado, mas fora do intervalo inserido0..size -1, era transmitido. Conforme documentado, esse comportamento nunca foi esperado e está fora do intervalo de entrada válido. Essa mudança corrige o comportamento para gerarIndexOutOfBoundsquando um índice inválido é transmitido. (I68453)
Contribuição externa
Agradecemos a Jake Wharton pelas seguintes contribuições:
- Alinhe o comportamento de
joinToStringcom as coleções da plataforma adicionando um separador antes e um sufixo depois do indicador de truncamento ao limitar os elementos incluídos. (I1b7e8) ScatterSet.hashCodenão se defende mais contra recursão (ou seja, o conjunto sendo adicionado a si mesmo). Isso alinha o comportamento dele comScatterMap,HashSete os conjuntos primitivos baseados em dispersão (por exemplo,LongSet). O métodoequalsjá era suscetível à recursão, etoStringse defende contra ela. Ambos os comportamentos estão alinhados com as outras coleções. (I9c84a).- A função
ScatterSet.retainAllagora é inline para evitar a criação de uma instância lambda. (Ifa4b7) ScatterSet.hashCodenão usa mais a capacidade no cálculo de hash, garantindo que conteúdos iguais, mas capacidades diferentes, ainda produzam o mesmo valor. (Ic863b).- Agora,
IllegalStateExceptioné lançado se você chamarremove()antes denext()em um iterador das coleçõeskeys,valuesouentriesdeScatterMap.asMap()ouScatterSet.asSet(). Isso alinha o comportamento dele com o comportamento regular de mapa e conjunto. (I71694).
Versão 1.5
Versão 1.5.0
12 de março de 2025
Lançamento de androidx.collection:collection-*:1.5.0. A versão 1.5.0 contém estas confirmações.
Versão 1.5.0-rc01
26 de fevereiro de 2025
Lançamento de androidx.collection:collection-*:1.5.0-rc01. A versão 1.5.0-rc01 contém estas confirmações.
Versão 1.5.0-beta03
29 de janeiro de 2025
Lançamento de androidx.collection:collection-*:1.5.0-beta03. A versão 1.5.0-beta03 contém estas confirmações.
Versão 1.5.0-beta02
15 de janeiro de 2025
Lançamento de androidx.collection:collection-*:1.5.0-beta02. A versão 1.5.0-beta02 contém estas confirmações.
Versão 1.5.0-beta01
11 de dezembro de 2024
Lançamento de androidx.collection:collection-*:1.5.0-beta01. A versão 1.5.0-beta01 contém estas confirmações.
Mudanças na API
- Adição de suporte ao destino
watchosDeviceArm64do KMP e ao destino Kotlin 1.9 (Icf15d, b/364652024).
Versão 1.5.0-alpha06
13 de novembro de 2024
Lançamento de androidx.collection:collection-*:1.5.0-alpha06. A versão 1.5.0-alpha06 contém estas confirmações.
Correções de bugs
- Correção de uma falha que podia ocorrer em
SieveCacheeOrderedScatterSetao adicionar vários itens, causando colisões de chaves repetidas. (Iaaf3d, b/375607736). - Adicione o destino wasm à biblioteca de coleções. (I66fe3, b/352722444).
Versão 1.5.0-alpha05
30 de outubro de 2024
Lançamento de androidx.collection:collection-*:1.5.0-alpha05. A versão 1.5.0-alpha05 contém estas confirmações.
Versão 1.5.0-alpha04
16 de outubro de 2024
Lançamento de androidx.collection:collection-*:1.5.0-alpha04. A versão 1.5.0-alpha04 contém estas confirmações.
Versão 1.5.0-alpha03
2 de outubro de 2024
Lançamento de androidx.collection:collection-*:1.5.0-alpha03. A versão 1.5.0-alpha03 contém estes commits.
Mudanças na API
- Atualização da versão do Kotlin para 1.9 (I1a14c)
Contribuição externa
- Avançar
containsatécontainsKey. Obrigado, Jake Wharton! (I9362b). - Adicione criadores de contêineres para coleções especializadas em escalares. Obrigado, Jake Wharton! (I13179).
Versão 1.5.0-alpha02
18 de setembro de 2024
Lançamento de androidx.collection:collection-*:1.5.0-alpha02. A versão 1.5.0-alpha02 contém estas confirmações.
Mudanças na API
- Adiciona compatibilidade com o destino da plataforma
watchosDeviceArm64. (I1cc04, b/364652024).
Versão 1.5.0-alpha01
4 de setembro de 2024
Lançamento de androidx.collection:collection-*:1.5.0-alpha01. A versão 1.5.0-alpha01 contém estas confirmações.
Mudanças na API
OrderedScatterSeté uma nova coleção ordenada e sem alocação (Ic4178).SieveCacheé uma nova substituição sem alocação paraLruCacheque oferece melhores características de taxa de acerto. (I50a17).- Exposição da representação interna
packedValueparaIntIntPaireFloatFloatPair. (Ifeb75, b/331853566) - Adição de acesso à matriz de conteúdo em coleções de listas. (I899d5, b/333903173)
- Adicione
DoubleList, uma estrutura de dados semelhante a uma lista otimizada para valores duplos. (Ia10d1, b/315127635).
Correções de bugs
- A biblioteca de coleções está sendo migrada para o Kotlin 1.9 (I0782f)
- Otimize muitas das coleções para serem mais eficientes. (Ic0566).
Versão 1.4
Versão 1.4.5
30 de outubro de 2024
Lançamento de androidx.collection:collection-*:1.4.5. A versão 1.4.5 contém estas confirmações.
Versão 1.4.4
18 de setembro de 2024
Lançamento de androidx.collection:collection-*:1.4.4. A versão 1.4.4 contém estas confirmações.
Correções de bugs
- Solução alternativa para
ArrayIndexOutOfBoundsao classificar uma coleção vazia. (I65245).
Versão 1.4.3
7 de agosto de 2024
Lançamento de androidx.collection:collection-*:1.4.3. A versão 1.4.3 contém estas confirmações.
Correções de bugs
- Correção de uma corrupção que poderia ocorrer em
ScatterMap,ScatterSete as variantes primitivas deles. (I38a4a, b/352560465) - Otimizações de desempenho. Especificamente:
- Substitua as chamadas para
check()erequired()por variantes que não geram exceções inline. Isso reduz o tamanho do binário final e, mais importante, alivia um pouco a pressão do i-cache. - Melhoria do
removeDeletedMarkers()na família de coleções "scatter". A nova versão limpa oito marcadores excluídos por vez e ignora gravações mais caras no processo. (Ic0566).
- Substitua as chamadas para
Versão 1.4.2
24 de julho de 2024
Lançamento de androidx.collection:collection-*:1.4.2. A versão 1.4.2 contém estas confirmações.
Novos recursos
- Inclui outros destinos do Kotlin Multiplatform:
watchos,tvos,linuxArm64. (b/352543988)
Versão 1.4.1
10 de julho de 2024
Lançamento de androidx.collection:collection-*:1.4.1. A versão 1.4.1 contém estas confirmações.
Correções de bugs
- Remova os marcadores excluídos de Map/Set ao redimensionar. (7a996c5, b/345960092)
Versão 1.4.0
24 de janeiro de 2024
Lançamento de androidx.collection:collection-*:1.4.0. A versão 1.4.0 contém estas confirmações.
Mudanças importantes desde a versão 1.3.0
Novas coleções de alta eficiência para armazenar primitivos sem boxing foram adicionadas:
MutableScatterMapeScatterMap: classes comMutableMape API semelhante a mapaMutableScatterSeteScatterSet: classes comMutableSete API semelhante a conjuntoMutableObjectListeObjectList: classes comMutableListe API semelhante a lista
Por exemplo, um mapa com uma chave de número inteiro e um valor de tipo de referência é um IntObjectMap<T>. Um mapa com uma chave longa e um valor de ponto flutuante é um LongFloatMap. Não há uma versão com o nome ObjectObjectMap porque ela é coberta por ScatterMap/MutableScatterMap.
Versão 1.4.0-rc01
10 de janeiro de 2024
Lançamento de androidx.collection:collection-*:1.4.0-rc01 sem mudanças. A versão 1.4.0-rc01 contém estas confirmações.
Versão 1.4.0-beta02
29 de novembro de 2023
Lançamento de androidx.collection:collection-*:1.4.0-beta02. A versão 1.4.0-beta02 contém estas confirmações.
Novos recursos
- Melhoria no desempenho de
FloatFloatPair. (If5537).
Correções de bugs
- O iterador
ScatterMap.asMap()agora retorna novas instâncias (I28932, b/310365754).
Versão 1.4.0-beta01
15 de novembro de 2023
Lançamento de androidx.collection:collection-*:1.4.0-beta01. A versão 1.4.0-beta01 contém estas confirmações.
Correções de bugs
- Correção para
ListIteratorque definia valores incorretamente emObjectList, o que poderia resultar em uma falha devido aIndexOutOfBoundsException. (I3bd8a, b/307049391).
Versão 1.4.0-alpha02
18 de outubro de 2023
Lançamento de androidx.collection:collection-*:1.4.0-alpha02. A versão 1.4.0-alpha02 contém estas confirmações.
Mudanças na API
- Adicionada sobrecarga para
putque retorna o valor anterior quando ele é substituído em todas as coleções primitivas, comoFloatFloatMap. - Converter métodos
removeIfem coleções primitivas, comoMutableFloatFloatMap, para inline. Isso garante que a lambda pararemoveIfnão seja alocada.
Versão 1.4.0-alpha01
4 de outubro de 2023
Lançamento de androidx.collection:collection-*:1.4.0-alpha01. A versão 1.4.0-alpha01 contém estas confirmações.
Novos recursos
Novas coleções de alta eficiência foram adicionadas, com baixa sobrecarga de alocação e alto desempenho:
MutableScatterMapeScatterMap: classes comMutableMape API semelhante a mapaMutableScatterSeteScatterSet: classes comMutableSete API semelhante a conjuntoMutableObjectListeObjectList: classes comMutableListe API semelhante a lista
Novas coleções de alta eficiência para armazenar primitivos sem boxing foram adicionadas:
Mutable[Int|Float|Long]List: classes com API semelhante aMutableList<Int|Float|Long>. O[Int|Float|Long]Listsomente leitura também existe. Por exemplo, números inteiros podem ser armazenados em umIntList.Mutable[Int|Float|Long]Set: classes com API semelhante aMutableSet<Int|Float|Long>. O[Int|Float|Long]Setsomente leitura também existe. Por exemplo, números inteiros podem ser armazenados em um IntSet.Mutable[Int|Float|Long|Object][Int|Float|Long|Object]Map: classes com API semelhante aMutable<Int|Float|Long,T, Int|Float|Long|T>. O[Int|Float|Long|Object][Int|Float|Long|Object]Mapsomente leitura também existe. Por exemplo, um mapa com uma chave de número inteiro e um valor de tipo de referência é umIntObjectMap<T>. Um mapa com uma chave longa e um valor de ponto flutuante é umLongFloatMap. Não há uma versão com o nomeObjectObjectMapporque ela é coberta porScatterMap/MutableScatterMap.
Versão 1.3.0
Versão 1.3.0
4 de outubro de 2023
Lançamento de androidx.collection:collection-*:1.3.0. A versão 1.3.0 contém estas confirmações.
Mudanças importantes desde a versão 1.2.0
- Agora você pode usar coleções em projetos Kotlin Multiplatform. Vale lembrar que os destinos não Android das coleções ainda estão em fase experimental, mas decidimos mesclar as versões para facilitar o teste por parte dos desenvolvedores.
- Todo o código-fonte foi migrado para o Kotlin. Como parte dessa mudança, muitas APIs agora são digitadas corretamente para nulidade, e alguns membros particulares do pacote se tornaram
internal. Uma lista das mudanças exatas está disponível nas notas da versão secundária 1.3.x abaixo. - Além da migração para Kotlin, o
collection-ktxfoi mesclado com o artefato principal de coleta. Você pode remover com segurança todas as dependências decollection:collection-ktxem favor decollection:collection, já quecollection-ktxagora está vazio.
Versão 1.3.0-rc01
6 de setembro de 2023
Lançamento de androidx.collection:collection-*:1.3.0-rc01 sem mudanças. A versão 1.3.0-rc01 contém estas confirmações.
Versão 1.3.0-beta01
9 de agosto de 2023
Lançamento de androidx.collection:collection-*:1.3.0-beta01. A versão 1.3.0-beta01 contém estas confirmações.
Versão 1.3.0-alpha04
24 de março de 2023
Lançamento de androidx.collection:collection-*:1.3.0-alpha04.
Correções de bugs
- As restrições de dependência foram removidas dos artefatos do Maven para contornar um problema de build em destinos nativos do Kotlin (b/274786186, KT-57531).
Versão 1.3.0-alpha03
22 de março de 2023
Lançamento de androidx.collection:collection-*:1.3.0-alpha03. A versão 1.3.0-alpha03 contém essas confirmações.
Novos recursos
- Agora você pode usar coleções em projetos KMM. Vale lembrar que os destinos não Android das Coleções ainda estão em fase experimental, mas decidimos mesclar as versões para facilitar o teste pelos desenvolvedores.
Mudanças na API
ArraySetagora implementaMutableCollectionsem vez deAbstractMutableCollectionpara permitir uma implementação mais eficiente em termos de memória detoArray(I1ac32).
Correções de bugs
- Agora,
ArraySet.toArraysó está disponível na JVM, já que sempre foi incluído apenas para compatibilidade com Java. Em geral, os usuários do Kotlin devem usar os helpers.toTypedArrayda stdlib, que oferecem exatamente a mesma funcionalidade com mais segurança de tipo. (I2c59b).
Versão 1.3.0-alpha02
27 de julho de 2022
Lançamento de androidx.collection:collection:1.3.0-alpha02 e androidx.collection:collection-ktx:1.3.0-alpha02. A versão 1.3.0-alpha02 contém estas confirmações.
Mudanças na API
SparseArrayCompatagora está disponível para plataformas não JVM no artefato comum (Ic9bd0, b/219589118, b/228347315).CircularIntArrayagora está disponível para plataformas não JVM no artefato comum (I3d8ef, b/228344943).LongSparseArrayagora está disponível para plataformas não JVM no artefato comum (I73149, b/228347315).
Versão 1.3.0-alpha01
29 de junho de 2022
Lançamento de androidx.collection:collection:1.3.0-alpha01 e androidx.collection:collection-ktx:1.3.0-alpha01. A versão 1.3.0-alpha01 contém estas confirmações.
Novos recursos
- As extensões
collection-ktxforam migradas para o artefato principal de coleções,androidx.collection:collection. Essa mudança torna as extensões -ktx pré-existentes acessíveis aos usuários do Kotlin sem exigir a dependência -ktx, mantendo a compatibilidade para os usuários atuais. Manter essas extensões em um artefato -ktx separado não é mais benéfico, já que o artefato principal foi movido para o Kotlin. (I6eef2).
Mudanças na API
ArraySetagora estendeAbstractMutableCollectione não implementa mais diretamente a interface Collection. (If6da0, b/230860589).ArraySetconvertido para Kotlin. Devido à tipagem mais rigorosa, algumas chamadas do Kotlin podem não ser mais compiladas. (Id68c1, b/230860589).- As chamadas a seguir têm o tipo de argumento
T, nãoT?:ArraySet<T>.contains(null)ArraySet<T>.add(null)ArraySet<T>.remove(null)
- As chamadas a seguir têm o tipo de retorno
T?, nãoT!:ArraySet<T?>.valueAt(n)ArraySet<T?>.removeAt(n)ArraySet<T?>().iterator().next()
- As seguintes chamadas não são mais possíveis em Kotlin:
set.toArray(): useset.toTypedArray()set.toArray(array): useset.forEachIndexed(array::set)
- As chamadas a seguir têm o tipo de argumento
- Combine o construtor sobrecarregado para
SparseArrayCompatcomo um argumento opcional para usuários do Kotlin. (If8407, b/227474719). - Remova a sintaxe do operador para
SparseArrayCompat.get(key, defaultValue).. Isso ainda permite a sintaxe do operador para.get(key), mas alinha melhor a plataforma de API deSparseArrayCompatcom as outras classes nesta biblioteca. (I9a38d) - Migre as extensões
LongSparseArraypara o artefato principal, androidx.collection:collection. Essa mudança torna as extensões -ktx pré-existentes acessíveis aos usuários do Kotlin sem exigir a dependência -ktx, mantendo a compatibilidade para os usuários atuais. Manter essas extensões em um artefato -ktx separado não é mais benéfico, já que o artefato principal foi movido para o Kotlin. (I8659a). - Converta
LongSparseArraypara Kotlin. Essa mudança adiciona nulidade explícita aos tipos, o que é uma mudança compatível com binários, mas pode causar incompatibilidades de origem. Em particular: *.isEmptynão está mais acessível como uma propriedade. Ele precisa ser acessado como uma chamada de função em Kotlin:.isEmpty()(Idfd0f) - Converta
SimpleArrayMappara Kotlin. Essa mudança introduz algumas alterações incompatíveis como resultado da interoperabilidade Java-Kotlin e da capacidade de definir corretamente a nulidade dos tipos na origem.- As APIs privadas do pacote,
.mSize,.mArray,.mHashes,.indexOf(),.indexOfNull()e.indexOfValue(), foram definidas como privadas. Essa é tecnicamente uma mudança incompatível com binários, mas reflete a visibilidade pretendida desses campos e é o mais próximo que podemos chegar no Kotlin, já que ele não inclui uma maneira de especificar a visibilidade privada do pacote. - A nulidade de alguns tipos agora está definida corretamente. Os métodos afetados são:
.getOrDefault,.keyAt,.valueAt,.setValueAt,.put,.putIfAbsent,.removeAte.replace. - Para usuários do Kotlin,
.isEmpty()agora está disponível apenas como uma função, e não também por acesso à propriedade. (I271b7, b/182813986).
- As APIs privadas do pacote,
Converta
CircularArraypara Kotlin. Mudanças importantes:- Corrige a nulidade dos tipos genéricos para não nulos, o que antes era impossível de declarar, mas era aplicado em todas as APIs públicas.
- Devido à interoperabilidade do Kotlin com o Java, era possível acessar
determinados métodos como propriedades ou funções. No entanto, para reduzir a duplicação e manter a compatibilidade binária, foi necessário remover esses elementos, o que é uma mudança incompatível com a origem. As chamadas afetadas são:
.isEmpty,.getLast()e.getFirst(). (Ifffac).
Converta
CircularIntArraypara Kotlin. Devido à interoperabilidade do Kotlin com o Java, era possível acessar determinados métodos como propriedades ou funções. No entanto, para reduzir a duplicação e manter a compatibilidade binária, foi necessário remover esses elementos, o que é uma mudança incompatível com a origem. As chamadas afetadas são:.isEmpty,.getLast()e.getFirst(). (Ie36ce).Converter
LruCachepara Kotlin (Ia2f19)Converta
SparseArrayCompatpara Kotlin. (If6fe8).Uma pequena mudança de comportamento foi adicionada ao
SparseArrayCompat.valueAt(), que não retorna maisnullincorretamente para chamadas não inicializadas fora dos limites desize(), mas dentro da capacidade inicial fornecida.Essa mudança também introduz a nulidade correta para alguns tipos que estavam ausentes anteriormente.
.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)
Versão 1.2.0
Versão 1.2.0
1.º de dezembro de 2021
Lançamento de androidx.collection:collection:1.2.0 e androidx.collection:collection-ktx:1.2.0. A versão 1.2.0 contém estas confirmações.
Mudanças importantes desde a 1.1.0
- Adicione um construtor de matrizes ao
ArraySet(Id7f19). - A API se tornou compatível com
entrySet()ao implementarentrySet().toArray(),remove(),removeAll()eretainAll()e remover a implementação deentrySet().addAll()(I5d505).
Versão 1.2.0-rc01
17 de novembro de 2021
Lançamento de androidx.collection:collection:1.2.0-rc01 e androidx.collection:collection-ktx:1.2.0-rc01. A versão 1.2.0-rc01 contém estas confirmações.
Mudanças na API
- Não houve mudanças desde a versão Beta anterior.
Versão 1.2.0-beta01
13 de outubro de 2021
Lançamento de androidx.collection:collection:1.2.0-beta01 e androidx.collection:collection-ktx:1.2.0-beta01. A versão 1.2.0-beta01 contém estas confirmações.
Correções de bugs
- A API se tornou compatível com
entrySet()ao implementarentrySet().toArray(),remove(),removeAll()eretainAll()e remover a implementação deentrySet().addAll()(I5d505).
Versão 1.2.0-alpha01
16 de dezembro de 2020
Lançamento de androidx.collection:collection:1.2.0-alpha01 e androidx.collection:collection-ktx:1.2.0-alpha01. A versão 1.2.0-alpha01 contém estas confirmações.
Mudanças na API
- Adicione um construtor de matrizes ao
ArraySet(Id7f19).
Versão 1.1.0
Versão 1.1.0
5 de junho de 2019
Lançamento de androidx.collection:collection:1.1.0 e androidx.collection:collection-ktx:1.1.0. As confirmações incluídas na versão 1.1.0 podem ser encontradas neste link.
Veja abaixo um resumo das mudanças da versão 1.0.0 para a 1.1.0:
Novos recursos
- Uso de uma implementação mais eficiente para as funções
containseisNotEmptyno artefato "collection-ktx" (aosp/866529).
Mudanças na API
- Adição de
putIfAbsentaLongSparseArray,SimpleArrayMapeSparseArrayCompat(aosp/772608). - Adição de
getOrDefaultaSimpleArrayMap(aosp/772607). - Adição de dois argumentos
removeaLongSparseArray,SimpleArrayMapeSparseArrayCompat. Suspender o uso das extensões KTX correspondentes para essa funcionalidade. (aosp/772482). - Adição de dois argumentos
replaceaLongSparseArray,SimpleArrayMapeSparseArrayCompat(aosp/772483). - Adição de três argumentos
replaceaLongSparseArray,SimpleArrayMapeSparseArrayCompat(aosp/772484). - Suspensão do uso de métodos
deleteredundantes. O métodoremoveoferece a mesma API e funcionalidade e corresponde à API usada por mapas não especializados. (aosp/866053, link em inglês)
Correções de bugs
- Mudança de
SimpleArrayMappara sincronizar o cache global interno de matrizes emSimpleArrayMap.classem vez deArrayMap.class. Isso garante que, se você usar apenasSimpleArrayMap, será possível removerArrayMapusando ferramentas de redução de código. (aosp/934557, link em inglês)
Versão 1.1.0-rc01
7 de maio de 2019
Lançamento de androidx.collection:collection:1.1.0-rc01 e androidx.collection:collection-ktx:1.1.0-rc01. As confirmações incluídas nessa versão podem ser encontradas neste link.
Novos recursos
- Uso de uma implementação mais eficiente para as funções
containseisNotEmptyno artefato "collection-ktx" (aosp/866529).
Versão 1.1.0-beta01
3 de abril de 2019
Lançamento de androidx.collection:collection:1.1.0-beta01 e androidx.collection:collection-ktx:1.1.0-beta01. As confirmações incluídas nessa versão podem ser encontradas neste link.
Mudanças na API
- O método mencionado em notas da versão alfa03, como tendo o valor
@RestrictTomodificado, foi removido. Ele não foi usado por nenhuma biblioteca AndroidX (agora ou historicamente) e não ofereceu nenhuma funcionalidade que estava faltando na API pública.
Correções de bugs
- Mudança de
SimpleArrayMappara sincronizar o cache global interno de matrizes emSimpleArrayMap.classem vez deArrayMap.class. Isso garante que, se você usar apenasSimpleArrayMap, será possível removerArrayMapusando ferramentas de redução de código. (aosp/934557, link em inglês)
Versão 1.1.0-alpha03
13 de março de 2019
Lançamento de androidx.collection:collection:1.0.0-alpha03 e androidx.collection:collection-ktx:1.0.0-alpha03.
A lista completa de confirmações incluídas nessa versão pode ser encontrada aqui (link em inglês).
Mudanças na API
- Um método em
ArraySetmarcado anteriormente como@RestrictTo(LIBRARY_GROUP)foi alterado para@RestrictTo(LIBRARY_GROUP_PREFIX). Essa ação foi realizada para oferecer compatibilidade com o uso histórico de outras bibliotecas do AndroidX que agora pertencem a diferentes IDs de grupo do Maven. Esse método se tornará público ou será removido na versão 1.1.0-alpha04, uma vez que outras bibliotecas do AndroidX não devem receber APIs especiais a que outros desenvolvedores não tenham acesso.
Versão 1.1.0-alpha02
30 de janeiro de 2019
Lançamento de androidx.collection:collection 1.1.0-alpha02 e androidx.collection:collection-ktx 1.1.0-alpha02.
Mudanças na API
- Suspensão do uso de métodos
deleteredundantes. Os métodosremoveoferecem a mesma API e funcionalidade e correspondem à API usada por mapas não especializados. (aosp/866053, link em inglês)
Versão 1.1.0-alpha01
3 de dezembro de 2018
Mudanças na API
- Adição de
putIfAbsentaLongSparseArray,SimpleArrayMapeSparseArrayCompat(aosp/772608). - Adição de
getOrDefaultaSimpleArrayMap(aosp/772607). - Adição de dois argumentos
removeaLongSparseArray,SimpleArrayMapeSparseArrayCompat. Suspender o uso das extensões KTX correspondentes para essa funcionalidade. (aosp/772482). - Adição de dois argumentos
replaceaLongSparseArray,SimpleArrayMapeSparseArrayCompat(aosp/772483). - Adição de três argumentos
replaceaLongSparseArray,SimpleArrayMapeSparseArrayCompat(aosp/772484).