Bộ sưu tập

  
Giảm tác động của bộ sưu tập hiện có và bộ sưu tập mới (có kích thước nhỏ) lên bộ nhớ.
Bản cập nhật mới nhất Bản phát hành ổn định Bản phát hành dùng thử Bản phát hành beta Bản phát hành alpha
Ngày 11 tháng 12 năm 2024 1.4.5 - 1.5.0-beta01 -

Khai báo phần phụ thuộc

Để thêm một phần phụ thuộc trên Bộ sưu tập, bạn phải thêm kho lưu trữ Google Maven vào dự án. Đọc nội dung Kho lưu trữ Maven của Google để biết thêm thông tin.

Thêm các phần phụ thuộc cho cấu phần phần mềm bạn cần trong tệp build.gradle cho ứng dụng hoặc mô-đun của mình:

Groovy

dependencies {
    def collection_version = "1.4.5"
    implementation "androidx.collection:collection:$collection_version"
}

Kotlin

dependencies {
    val collection_version = "1.4.5"
    implementation("androidx.collection:collection:$collection_version")
}

Để biết thêm thông tin về các phần phụ thuộc, hãy xem nội dung Thêm phần phụ thuộc cho bản dựng.

Ý kiến phản hồi

Ý kiến phản hồi của bạn có thể giúp chúng tôi cải thiện Jetpack. Hãy cho chúng tôi biết nếu bạn phát hiện lỗi mới hoặc có ý tưởng cải thiện thư viện này. Vui lòng xem các lỗi hiện có trong thư viện này trước khi báo một lỗi mới. Bạn có thể thêm lượt bình chọn cho lỗi hiện có bằng cách nhấp vào nút dấu sao.

Báo lỗi mới

Xem tài liệu về Công cụ theo dõi lỗi để biết thêm thông tin.

Phiên bản 1.5

Phiên bản 1.5.0-beta01

Ngày 11 tháng 12 năm 2024

Phát hành androidx.collection:collection-*:1.5.0-beta01. Phiên bản 1.5.0-beta01 bao gồm các thay đổi sau.

Thay đổi về API

  • Thêm tính năng hỗ trợ cho mục tiêu KMP watchosDeviceArm64 và mục tiêu kotlin 1.9 (Icf15d, b/364652024)

Phiên bản 1.5.0-alpha06

Ngày 13 tháng 11 năm 2024

Phát hành androidx.collection:collection-*:1.5.0-alpha06. Phiên bản 1.5.0-alpha06 bao gồm các thay đổi sau.

Sửa lỗi

  • Khắc phục sự cố có thể xảy ra trong SieveCacheOrderedScatterSet khi thêm nhiều mục gây ra xung đột phím lặp lại. (Iaaf3d, b/375607736)
  • Thêm mục tiêu wasm vào thư viện bộ sưu tập. (I66fe3, b/352722444)

Phiên bản 1.5.0-alpha05

Ngày 30 tháng 10 năm 2024

Phát hành androidx.collection:collection-*:1.5.0-alpha05. Phiên bản 1.5.0-alpha05 bao gồm các thay đổi sau.

Phiên bản 1.5.0-alpha04

Ngày 16 tháng 10 năm 2024

Phát hành androidx.collection:collection-*:1.5.0-alpha04. Phiên bản 1.5.0-alpha04 bao gồm các thay đổi sau.

Phiên bản 1.5.0-alpha03

Ngày 2 tháng 10 năm 2024

Phát hành androidx.collection:collection-*:1.5.0-alpha03. Phiên bản 1.5.0-alpha03 bao gồm các thay đổi sau.

Thay đổi về API

  • Cập nhật phiên bản Kotlin lên 1.9 (I1a14c)

Đóng góp bên ngoài

  • Chuyển tiếp contains đến containsKey. Cảm ơn Jake Wharton! (I9362b)
  • Thêm trình tạo vùng chứa cho các bộ sưu tập chuyên biệt về đại lượng vô hướng. Cảm ơn Jake Wharton! (I13179)

Phiên bản 1.5.0-alpha02

Ngày 18 tháng 9 năm 2024

Phát hành androidx.collection:collection-*:1.5.0-alpha02. Phiên bản 1.5.0-alpha02 bao gồm các thay đổi sau.

Thay đổi về API

  • Thêm tính năng hỗ trợ cho mục tiêu nền tảng watchosDeviceArm64. (I1cc04, b/364652024)

Phiên bản 1.5.0-alpha01

Ngày 4 tháng 9 năm 2024

Phát hành androidx.collection:collection-*:1.5.0-alpha01. Phiên bản 1.5.0-alpha01 bao gồm các thay đổi sau.

Thay đổi về API

  • OrderedScatterSet là một tập hợp mới được sắp xếp, không phân bổ (Ic4178)
  • SieveCache là một phương thức thay thế mới không phân bổ cho LruCache, cung cấp các đặc điểm tỷ lệ truy cập tốt hơn. (I50a17)
  • Hiển thị nội dung đại diện nội bộ packedValue cho IntIntPairFloatFloatPair. (Ifeb75, b/331853566)
  • Thêm quyền truy cập vào mảng nội dung trong các bộ sưu tập danh sách. (I899d5, b/333903173)
  • Thêm DoubleList, một cấu trúc dữ liệu giống như Danh sách được tối ưu hoá cho các giá trị Double. (Ia10d1, b/315127635)

Sửa lỗi

  • Thư viện Collections đang chuyển sang mục tiêu Kotlin 1.9 (I0782f)
  • Tối ưu hoá nhiều bộ sưu tập để hiệu quả hơn. (Ic0566)

Phiên bản 1.4

Phiên bản 1.4.5

Ngày 30 tháng 10 năm 2024

Phát hành androidx.collection:collection-*:1.4.5. Phiên bản 1.4.5 bao gồm các thay đổi sau.

Phiên bản 1.4.4

Ngày 18 tháng 9 năm 2024

Phát hành androidx.collection:collection-*:1.4.4. Phiên bản 1.4.4 bao gồm các thay đổi sau.

Sửa lỗi

  • Giải pháp cho ArrayIndexOutOfBounds khi sắp xếp một bộ sưu tập trống. (I65245)

Phiên bản 1.4.3

Ngày 7 tháng 8 năm 2024

Phát hành androidx.collection:collection-*:1.4.3. Phiên bản 1.4.3 bao gồm các thay đổi sau.

Sửa lỗi

  • Khắc phục lỗi hỏng có thể xảy ra trong ScatterMap, ScatterSet và các biến thể gốc của chúng. (I38a4a, b/352560465)
  • Tối ưu hoá hiệu suất. Cụ thể:
    • Thay thế các lệnh gọi đến check()required() bằng các biến thể không gửi trường hợp ngoại lệ cùng dòng. Điều này làm giảm kích thước tệp nhị phân cuối cùng và quan trọng hơn là giảm một chút áp lực của bộ nhớ đệm i.
    • Cải thiện removeDeletedMarkers() trong nhóm bộ sưu tập "scatter". Phiên bản mới xoá 8 điểm đánh dấu đã xoá cùng một lúc và bỏ qua các lượt ghi tốn kém hơn trong quá trình này. (Ic0566)

Phiên bản 1.4.2

Ngày 24 tháng 7 năm 2024

Phát hành androidx.collection:collection-*:1.4.2. Phiên bản 1.4.2 bao gồm các thay đổi sau.

Tính năng mới

  • Bao gồm các mục tiêu Kotlin Multiplatform bổ sung: watchos, tvos, linuxArm64. (b/352543988)

Phiên bản 1.4.1

Ngày 10 tháng 7 năm 2024

Phát hành androidx.collection:collection-*:1.4.1. Phiên bản 1.4.1 bao gồm các thay đổi sau.

Sửa lỗi

  • Xoá các mốc đã xoá khỏi Bản đồ/Bộ khi đổi kích thước. (7a996c5, b/345960092)

Phiên bản 1.4.0

Ngày 24 tháng 1 năm 2024

Phát hành androidx.collection:collection-*:1.4.0. Phiên bản 1.4.0 bao gồm các thay đổi sau.

Thay đổi quan trọng kể từ phiên bản 1.3.0

Thêm các bộ sưu tập mới có hiệu suất cao để lưu trữ các dữ liệu gốc mà không cần đóng gói:

  • MutableScatterMapScatterMap – Các lớp có MutableMap và API giống như bản đồ
  • MutableScatterSetScatterSet – Các lớp có MutableSet và API giống tập hợp
  • MutableObjectListObjectList – Các lớp có MutableList và API giống danh sách

Ví dụ: một bản đồ có khoá số nguyên và giá trị loại tham chiếu là IntObjectMap<T>. Một bản đồ có khoá dài và giá trị float là LongFloatMap. Không có phiên bản nào có tên ObjectObjectMap vì tên này thuộc ScatterMap/MutableScatterMap.

Phiên bản 1.4.0-rc01

Ngày 10 tháng 1 năm 2024

Phát hành androidx.collection:collection-*:1.4.0-rc01 mà không có thay đổi nào. Phiên bản 1.4.0-rc01 bao gồm các thay đổi sau.

Phiên bản 1.4.0-beta02

Ngày 29 tháng 11 năm 2023

Phát hành androidx.collection:collection-*:1.4.0-beta02. Phiên bản 1.4.0-beta02 bao gồm các thay đổi sau.

Tính năng mới

  • Cải thiện hiệu suất của FloatFloatPair. (If5537)

Sửa lỗi

  • Trình duyệt ScatterMap.asMap() hiện trả về các thực thể mới (I28932, b/310365754)

Phiên bản 1.4.0-beta01

Ngày 15 tháng 11 năm 2023

Phát hành androidx.collection:collection-*:1.4.0-beta01. Phiên bản 1.4.0-beta01 bao gồm các thay đổi sau.

Sửa lỗi

  • Khắc phục lỗi ListIterator đặt giá trị không chính xác trong ObjectList, có thể dẫn đến sự cố do IndexOutOfBoundsException. (I3bd8a, b/307049391)

Phiên bản 1.4.0-alpha02

Ngày 18 tháng 10 năm 2023

Phát hành androidx.collection:collection-*:1.4.0-alpha02. Phiên bản 1.4.0-alpha02 bao gồm các thay đổi sau.

Thay đổi về API

  • Thêm phương thức nạp chồng cho put để trả về giá trị trước đó khi giá trị này được thay thế cho tất cả các bộ sưu tập gốc, chẳng hạn như FloatFloatMap.
  • Chuyển đổi các phương thức removeIf trên các bộ sưu tập nguyên gốc, chẳng hạn như MutableFloatFloatMap thành nội tuyến. Điều này đảm bảo rằng lambda cho removeIf không được phân bổ.

Phiên bản 1.4.0-alpha01

Ngày 4 tháng 10 năm 2023

Phát hành androidx.collection:collection-*:1.4.0-alpha01. Phiên bản 1.4.0-alpha01 bao gồm các thay đổi sau.

Tính năng mới

Chúng tôi đã thêm các bộ sưu tập mới có hiệu suất cao, có mức hao tổn phân bổ thấp và hiệu suất cao:

  • MutableScatterMapScatterMap – Các lớp có MutableMap và API giống như bản đồ
  • MutableScatterSetScatterSet – Các lớp có MutableSet và API giống tập hợp
  • MutableObjectListObjectList – Các lớp có MutableList và API giống danh sách

Thêm các bộ sưu tập mới có hiệu suất cao để lưu trữ các dữ liệu gốc mà không cần đóng gói:

  • Mutable[Int|Float|Long]List – Các lớp có API giống MutableList<Int|Float|Long>. [Int|Float|Long]List chỉ có thể đọc cũng tồn tại. Ví dụ: số nguyên có thể được lưu giữ trong IntList.
  • Mutable[Int|Float|Long]Set – Các lớp có API giống MutableSet<Int|Float|Long>. [Int|Float|Long]Set chỉ có thể đọc cũng tồn tại. Ví dụ: các số nguyên có thể được lưu giữ trong một IntSet.
  • Mutable[Int|Float|Long|Object][Int|Float|Long|Object]Map – Các lớp có API giống Mutable<Int|Float|Long,T, Int|Float|Long|T>. [Int|Float|Long|Object][Int|Float|Long|Object]Map chỉ có thể đọc cũng tồn tại. Ví dụ: một bản đồ có khoá số nguyên và giá trị loại tham chiếu là IntObjectMap<T>. Một bản đồ có khoá dài và giá trị float là LongFloatMap. Không có phiên bản nào có tên ObjectObjectMap vì tên này thuộc ScatterMap/MutableScatterMap.

Phiên bản 1.3.0

Phiên bản 1.3.0

Ngày 4 tháng 10 năm 2023

Phát hành androidx.collection:collection-*:1.3.0. Phiên bản 1.3.0 bao gồm các thay đổi sau.

Những thay đổi quan trọng kể từ phiên bản 1.2.0

  • Giờ đây, bạn có thể sử dụng Tập hợp trong các dự án Kotlin Đa nền tảng. Xin lưu ý rằng các mục tiêu không phải Android của Bộ sưu tập vẫn đang trong giai đoạn thử nghiệm, nhưng chúng tôi quyết định hợp nhất các phiên bản để giúp nhà phát triển dễ dàng thử nghiệm hơn.
  • Tất cả nguồn đã được di chuyển sang Kotlin. Trong quá trình thay đổi này, nhiều API hiện được nhập đúng cách cho giá trị rỗng và một số thành viên riêng tư của gói đã trở thành internal. Danh sách các thay đổi chính xác có trong ghi chú phát hành nhỏ cho phiên bản 1.3.x dưới đây.
  • Cùng với quá trình di chuyển Kotlin, collection-ktx đã được hợp nhất với cấu phần phần mềm bộ sưu tập chính. Bạn có thể yên tâm xoá mọi phần phụ thuộc trên collection:collection-ktx để chuyển sang collection:collectioncollection-ktx hiện đang trống.

Phiên bản 1.3.0-rc01

Ngày 6 tháng 9 năm 2023

Phát hành androidx.collection:collection-*:1.3.0-rc01 mà không có thay đổi nào. Phiên bản 1.3.0-rc01 bao gồm các thay đổi sau.

Phiên bản 1.3.0-beta01

Ngày 9 tháng 8 năm 2023

Phát hành androidx.collection:collection-*:1.3.0-beta01. Phiên bản 1.3.0-beta01 bao gồm các thay đổi sau.

Phiên bản 1.3.0-alpha04

Ngày 24 tháng 3 năm 2023

Phát hành androidx.collection:collection-*:1.3.0-alpha04.

Sửa lỗi

  • Xoá các quy tắc ràng buộc phần phụ thuộc khỏi cấu phần phần mềm Maven để giải quyết vấn đề bản dựng trong Mục tiêu gốc Kotlin (b/274786186, KT-57531).

Phiên bản 1.3.0-alpha03

Ngày 22 tháng 3 năm 2023

Phát hành androidx.collection:collection-*:1.3.0-alpha03. Phiên bản 1.3.0-alpha03 bao gồm các thay đổi sau.

Tính năng mới

  • Giờ đây, bạn có thể sử dụng Tập hợp trong các dự án KMM. Xin lưu ý rằng các mục tiêu không phải Android của Bộ sưu tập vẫn đang trong giai đoạn thử nghiệm, nhưng chúng tôi đã quyết định hợp nhất các phiên bản để giúp nhà phát triển dễ dàng thử nghiệm hơn.

Thay đổi về API

  • ArraySet hiện triển khai MutableCollections thay vì AbstractMutableCollection để cho phép triển khai toArray hiệu quả hơn về bộ nhớ (I1ac32)

Sửa lỗi

  • ArraySet.toArray hiện chỉ có trên JVM vì nó luôn chỉ được đưa vào để tương thích với Java. Người dùng Kotlin thường nên sử dụng trình trợ giúp .toTypedArray của stdlib. Trình trợ giúp này cung cấp chức năng giống hệt với độ an toàn về kiểu được thêm vào. (I2c59b)

Phiên bản 1.3.0-alpha02

Ngày 27 tháng 7 năm 2022

Phát hành androidx.collection:collection:1.3.0-alpha02androidx.collection:collection-ktx:1.3.0-alpha02. Phiên bản 1.3.0-alpha02 bao gồm các thay đổi sau.

Thay đổi về API

  • SparseArrayCompat hiện có sẵn cho các nền tảng không phải jvm từ cấu phần phần mềm phổ biến (Ic9bd0, b/219589118, b/228347315)
  • CircularIntArray hiện có sẵn cho các nền tảng không phải jvm từ cấu phần phần mềm phổ biến (I3d8ef, b/228344943)
  • LongSparseArray hiện có sẵn cho các nền tảng không phải jvm từ cấu phần phần mềm phổ biến (I73149, b/228347315)

Phiên bản 1.3.0-alpha01

Ngày 29 tháng 6 năm 2022

Phát hành androidx.collection:collection:1.3.0-alpha01androidx.collection:collection-ktx:1.3.0-alpha01. Phiên bản 1.3.0-alpha01 bao gồm các thay đổi sau.

Tính năng mới

  • collection-ktx phần mở rộng đã được di chuyển vào cấu phần phần mềm chính của bộ sưu tập, androidx.collection:collection. Thay đổi này giúp người dùng Kotlin có thể truy cập vào các tiện ích -kt từ trước mà không cần phụ thuộc -ktx, trong khi vẫn duy trì khả năng tương thích đối với người dùng hiện có. Việc duy trì những tiện ích này trong một cấu phần phần mềm -ktx riêng biệt sẽ không còn có lợi vì cấu phần phần mềm chính đã chuyển sang Kotlin. (I6eef2)

Thay đổi về API

  • ArraySet hiện mở rộng AbstractMutableCollection và không còn triển khai trực tiếp giao diện Bộ sưu tập. (If6da0, b/230860589)
  • Đã chuyển đổi ArraySet thành Kotlin. Do thao tác nhập nghiêm ngặt hơn, một số lệnh gọi Kotlin có thể không biên dịch được nữa. (Id68c1, b/230860589)
    • Các lệnh gọi sau có loại đối số T, không phải T?:
      • ArraySet<T>.contains(null)
      • ArraySet<T>.add(null)
      • ArraySet<T>.remove(null)
    • Các lệnh gọi sau có loại trả về T?, không phải T!:
      • ArraySet<T?>.valueAt(n)
      • ArraySet<T?>.removeAt(n)
      • ArraySet<T?>().iterator().next()
    • Bạn sẽ không thể thực hiện các lệnh gọi sau đây từ Kotlin:
      • set.toArray() - sử dụng set.toTypedArray()
      • set.toArray(array) - sử dụng set.forEachIndexed(array::set)
  • Kết hợp hàm dựng quá tải cho SparseArrayCompat làm đối số không bắt buộc cho người dùng Kotlin. (If8407, b/227474719)
  • Xoá cú pháp toán tử cho SparseArrayCompat.get(key, defaultValue).. Thao tác này vẫn cho phép cú pháp toán tử của .get(key), nhưng điều chỉnh tốt hơn giao diện API của SparseArrayCompat với các lớp khác trong thư viện này. (I9a38d)
  • Di chuyển LongSparseArray tiện ích sang cấu phần phần mềm chính, androidx.collection:collection. Thay đổi này giúp người dùng Kotlin có thể truy cập vào các tiện ích -kt từ trước mà không cần phụ thuộc -ktx, trong khi vẫn duy trì khả năng tương thích đối với người dùng hiện có. Việc duy trì những tiện ích này trong một cấu phần phần mềm -ktx riêng biệt sẽ không còn có lợi vì cấu phần phần mềm chính đã chuyển sang Kotlin. (I8659a)
  • Chuyển đổi LongSparseArray thành Kotlin. Thay đổi này sẽ làm giảm giá trị null rõ ràng đối với các loại của thay đổi đó, đây là thay đổi tương thích nhị phân, nhưng có thể gây ra sự không tương thích nguồn. Cụ thể: * .isEmpty không còn truy cập được dưới dạng tài sản, bạn phải truy cập vào tài sản này dưới dạng lệnh gọi hàm trong Kotlin – .isEmpty() (Idfd0f)
  • Chuyển đổi SimpleArrayMap thành Kotlin. Thay đổi này tạo ra một vài thay đổi không tương thích do kết quả của việc tương tác Java-Kotlin và khả năng xác định chính xác tính chất rỗng của các loại trong nguồn.
    • Các API riêng tư của gói, .mSize, .mArray, .mHashes, .indexOf(), .indexOfNull().indexOfValue(), đã được chuyển sang chế độ riêng tư – đây về mặt kỹ thuật là thay đổi nhị phân không tương thích, nhưng thể hiện khả năng hiển thị dự định của các trường này và là giá trị gần nhất mà chúng tôi có thể đạt được trong Kotlin vì nó không bao gồm cách chỉ định chế độ hiển thị riêng tư về gói.
    • Tính chất rỗng của một số loại hiện đã được xác định đúng, các phương thức bị ảnh hưởng là: .getOrDefault, .keyAt, .valueAt, .setValueAt, .put, .putIfAbsent, .removeAt, .replace.
    • Đối với người dùng Kotlin, giờ đây, .isEmpty() chỉ dùng được dưới dạng hàm thay vì quyền truy cập vào thuộc tính. (I271b7, b/182813986)
  • Chuyển đổi CircularArray thành Kotlin. Các thay đổi đáng chú ý:

    • Sửa giá trị null của các giá trị chung thành giá trị null, điều này trước đây không thể khai báo, nhưng đã được thực thi trong tất cả các API công khai.
    • Do khả năng tương tác Java của Kotlin, trước đây bạn có thể truy cập vào một số phương thức nhất định dưới dạng cả thuộc tính hoặc hàm. Tuy nhiên, để giảm sự trùng lặp trong khi vẫn duy trì khả năng tương thích nhị phân, bạn cần phải xóa các thay đổi này. Đây là một thay đổi không tương thích với nguồn. Các lệnh gọi bị ảnh hưởng là: .isEmpty, .getLast().getFirst(). (Ifffac)
  • Chuyển đổi CircularIntArray thành Kotlin. Do khả năng tương tác Java của Kotlin, trước đây bạn có thể truy cập vào một số phương thức nhất định dưới dạng cả thuộc tính hoặc hàm. Tuy nhiên, để giảm tình trạng trùng lặp trong khi vẫn duy trì khả năng tương thích nhị phân, bạn cần phải xóa những nội dung này. Đây là thay đổi không tương thích với nguồn. Các cuộc gọi bị ảnh hưởng là: .isEmpty, .getLast().getFirst(). (Ie36ce)

  • Chuyển đổi LruCache thành Kotlin (Ia2f19)

  • Chuyển đổi SparseArrayCompat thành Kotlin. (If6fe8)

    Một thay đổi nhỏ về hành vi được thêm vào SparseArrayCompat.valueAt(), không còn trả về null một cách không chính xác cho các lệnh gọi chưa khởi tạo nằm ngoài giới hạn của size() nhưng trong phạm vi dung lượng ban đầu đã cung cấp.

    Thay đổi này cũng áp dụng giá trị null chính xác cho một số loại trước đây bị thiếu.

    • .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)

Phiên bản 1.2.0

Phiên bản 1.2.0

Ngày 1 tháng 12 năm 2021

Phát hành androidx.collection:collection:1.2.0androidx.collection:collection-ktx:1.2.0. Phiên bản 1.2.0 bao gồm các thay đổi sau.

Thay đổi quan trọng kể từ phiên bản 1.1.0

  • Thêm một hàm khởi tạo mảng vào ArraySet. (Id7f19)
  • Bảo đảm entrySet() tuân thủ API bằng việc triển khai entrySet().toArray(), remove(), removeAll()retainAll(), đồng thời xoá phương thức triển khai entrySet().addAll() (I5d505)

Phiên bản 1.2.0-rc01

Ngày 17 tháng 11 năm 2021

Phát hành androidx.collection:collection:1.2.0-rc01androidx.collection:collection-ktx:1.2.0-rc01. Phiên bản 1.2.0-rc01 bao gồm các thay đổi sau.

Thay đổi về API

  • Không có thay đổi nào so với phiên bản thử nghiệm trước đó.

Phiên bản 1.2.0-beta01

Ngày 13 tháng 10 năm 2021

Phát hành androidx.collection:collection:1.2.0-beta01androidx.collection:collection-ktx:1.2.0-beta01. Phiên bản 1.2.0-beta01 bao gồm các thay đổi sau.

Sửa lỗi

  • Bảo đảm entrySet() tuân thủ API bằng việc triển khai entrySet().toArray(), remove(), removeAll()retainAll(), đồng thời xoá phương thức triển khai entrySet().addAll() (I5d505)

Phiên bản 1.2.0-alpha01

Ngày 16 tháng 12 năm 2020

Phát hành androidx.collection:collection:1.2.0-alpha01androidx.collection:collection-ktx:1.2.0-alpha01. Phiên bản 1.2.0-alpha01 bao gồm các thay đổi sau.

Thay đổi về API

  • Thêm một hàm khởi tạo mảng vào ArraySet. (Id7f19)

Phiên bản 1.1.0

Phiên bản 1.1.0

Ngày 5 tháng 6 năm 2019

Phát hành androidx.collection:collection:1.1.0androidx.collection:collection-ktx:1.1.0. Bạn có thể tìm các thay đổi có trong phiên bản 1.1.0 tại đây.

Dưới đây là bản tóm tắt các thay đổi từ phiên bản 1.0.0 đến 1.1.0:

Tính năng mới

  • Sử dụng cách triển khai hiệu quả hơn cho các hàm containsisNotEmpty trong cấu phần phần mềm 'collection-ktx'. (aosp/866529)

Thay đổi về API

  • Thêm putIfAbsent vào LongSparseArray, SimpleArrayMapSparseArrayCompat (aosp/772608)
  • Thêm getOrDefault vào SimpleArrayMap (aosp/772607)
  • Thêm remove hai đối số vào LongSparseArray, SimpleArrayMapSparseArrayCompat. Ngừng sử dụng các tiện ích mở rộng KTX tương ứng cho chức năng này. (aosp/772482)
  • Thêm replace hai đối số vào LongSparseArray, SimpleArrayMapSparseArrayCompat (aosp/772483)
  • Thêm replace ba đối số vào LongSparseArray, SimpleArrayMapSparseArrayCompat (aosp/772484)
  • Ngừng sử dụng các phương thức delete thừa. Phương thức remove cung cấp API và chức năng giống nhau và khớp với API do Maps đặc biệt sử dụng. (aosp/866053)

Sửa lỗi

  • Thay đổi SimpleArrayMap để đồng bộ hoá bộ nhớ đệm toàn cầu nội bộ của các mảng trên SimpleArrayMap.class thay vì ArrayMap.class. Điều này đảm bảo rằng nếu bạn chỉ đang sử dụng SimpleArrayMap, thì bạn có thể xoá ArrayMap bằng các công cụ rút gọn mã. (aosp/934557)

Phiên bản 1.1.0-rc01

Ngày 7 tháng 5 năm 2019

Phát hành androidx.collection:collection:1.1.0-rc01androidx.collection:collection-ktx:1.1.0-rc01. Bạn có thể xem các thay đổi trong phiên bản này tại đây.

Tính năng mới

  • Sử dụng cách triển khai hiệu quả hơn cho các hàm containsisNotEmpty trong cấu phần phần mềm 'collection-ktx'. (aosp/866529)

Phiên bản 1.1.0-beta01

Ngày 3 tháng 4 năm 2019

Phát hành androidx.collection:collection:1.1.0-beta01androidx.collection:collection-ktx:1.1.0-beta01. Bạn có thể xem các thay đổi trong phiên bản này tại đây.

Thay đổi về API

  • Phương thức được đề cập trong ghi chú phát hành alpha03 vì thay đổi giá trị @RestrictTo đã bị xoá. Thư viện AndroidX (hiện tại hoặc trước đây) không sử dụng phương thức này và phương thức này không cung cấp bất kỳ chức năng nào bị thiếu trong API công khai.

Sửa lỗi

  • Thay đổi SimpleArrayMap để đồng bộ hoá bộ nhớ đệm toàn cầu nội bộ của các mảng trên SimpleArrayMap.class thay vì ArrayMap.class. Điều này đảm bảo rằng nếu bạn chỉ đang sử dụng SimpleArrayMap, thì bạn có thể xoá ArrayMap bằng các công cụ rút gọn mã. (aosp/934557)

Phiên bản 1.1.0-alpha03

Ngày 13 tháng 3 năm 2019

Phát hành androidx.collection:collection:1.0.0-alpha03androidx.collection:collection-ktx:1.0.0-alpha03. Bạn có thể xem danh sách đầy đủ các thay đổi trong phiên bản này tại đây.

Thay đổi về API

  • Phương thức trên ArraySet trước đây được đánh dấu là @RestrictTo(LIBRARY_GROUP) đã được thay đổi thành @RestrictTo(LIBRARY_GROUP_PREFIX). Điều này hỗ trợ việc sử dụng trước đó của các thư viện AndroidX khác, hiện nằm trong các mã nhận dạng nhóm Maven khác. Phương thức này sẽ được công khai hoặc bị xoá trong 1.1.0-alpha04 vì các thư viện AndroidX khác sẽ không được nhận các API đặc biệt nếu các nhà phát triển khác không làm như vậy.

Phiên bản 1.1.0-alpha02

Ngày 30 tháng 1 năm 2019

Phát hành androidx.collection:collection 1.1.0-alpha02androidx.collection:collection-ktx 1.1.0-alpha02.

Thay đổi về API

  • Ngừng sử dụng các phương thức delete thừa. Các phương thức remove cung cấp API và chức năng giống nhau và khớp với API do Maps đặc biệt sử dụng. (aosp/866053)

Phiên bản 1.1.0-alpha01

Ngày 3 tháng Mười hai, 2018

Thay đổi về API

  • Thêm putIfAbsent vào LongSparseArray, SimpleArrayMapSparseArrayCompat (aosp/772608)
  • Thêm getOrDefault vào SimpleArrayMap (aosp/772607)
  • Thêm remove hai đối số vào LongSparseArray, SimpleArrayMapSparseArrayCompat. Ngừng sử dụng các tiện ích mở rộng KTX tương ứng cho chức năng này. (aosp/772482)
  • Thêm replace hai đối số vào LongSparseArray, SimpleArrayMapSparseArrayCompat (aosp/772483)
  • Thêm replace ba đối số vào LongSparseArray, SimpleArrayMapSparseArrayCompat (aosp/772484)