wear protolayout

  
Thư viện này cho phép xác định một tập hợp các bố cục của giao diện người dùng và các biểu thức không phải giao diện người dùng được kết xuất/đánh giá trên các nền tảng từ xa.
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 24 tháng 9 năm 2025 1.3.0 - - 1.4.0-alpha01

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

Để thêm một phần phụ thuộc trên wear-protolayout, bạn phải thêm kho lưu trữ Maven của Google vào dự án. Hãy đọ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:

Groovy

dependencies {
    // Use to implement support for Wear ProtoLayout Expressions
    implementation "androidx.wear.protolayout:protolayout-expression:1.3.0"

    // Use to implement support for Wear ProtoLayout
    implementation "androidx.wear.protolayout:protolayout:1.3.0"

    // Use to utilize components and layouts with Material design in your ProtoLayout
    implementation "androidx.wear.protolayout:protolayout-material:1.3.0"
}

Kotlin

dependencies {
    // Use to implement support for Wear ProtoLayout Expressions
    implementation("androidx.wear.protolayout:protolayout-expression:1.3.0")

    // Use to implement support for Wear ProtoLayout
    implementation("androidx.wear.protolayout:protolayout:1.3.0")

    // Use to utilize components and layouts with Material design in your ProtoLayout
    implementation("androidx.wear.protolayout:protolayout-material:1.3.0")
}

Để biết thêm thông tin về các phần phụ thuộc, hãy xem bài viết Thêm phần phụ thuộc vào 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.4

Phiên bản 1.4.0-alpha01

Ngày 24 tháng 9 năm 2025

Phát hành androidx.wear.protolayout:protolayout-*: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

  • Thêm phương thức hỗ trợ cho LayoutModifier giúp một phần tử mờ dần khi ô trở nên hiển thị. (I38531, b/390345969)
  • Đã thêm materialScopeWithResources để hỗ trợ khái niệm M3 MaterialScope, đồng thời xử lý việc đăng ký tài nguyên tự động. Trong đó, đã thêm các phương thức trợ giúp mới cho hình ảnh (backgroundImage avatarImage và biểu tượng) giúp bạn không cần đăng ký tài nguyên theo cách thủ công trong onTileResourceRequest khi sử dụng. (I525bd, b/428692714)
  • ProtoLayout Các trợ giúp Kotlin cho ImageImageResources để sử dụng với ProtoLayoutScope và tính năng đăng ký tài nguyên tự động. (Iada82, b/430584304)
  • Thêm phương thức getter cho số lượng thuộc tính Lottie được phép tuỳ chỉnh trong một ảnh động Lottie. (I73733, b/436532706)
  • Thêm API vào AndroidLottieResourceByResId để cho phép tuỳ chỉnh ảnh động Lottie thông qua các thuộc tính và thêm API để tạo thuộc tính cho khe tạo giao diện bằng mã nhận dạng khe theo màu sắc đã chỉ định. (I301b3, b/423581481)
  • Thêm các API nhà cung cấp để chấp nhận PendingIntent làm thao tác nhấp (I01978, b/433802488)
  • Thêm API mới trong Image.BuildersetImageResource để đặt trực tiếp đối tượng tài nguyên cho Hình ảnh trong onTileRequest mà không cần đăng ký đối tượng đó trong quá trình ánh xạ trong onTileResourcesRequest. (Ifa69a, b/428693523)
  • Đã thêm khái niệm ProtoLayoutScope để chuẩn bị cho việc xử lý tài nguyên tốt hơn trong Tiles. (I132ce, b/428692423)
  • ProtoLayout Material3 MaterialScope hiện hiển thị trường Context ở chế độ công khai để sử dụng trong các phương thức trong phạm vi mà không cần truyền trường này. (I0e5cc, b/414559956)
  • Công khai các API ngữ nghĩa tiêu đề (I75299, b/413653475)
  • Hiển thị các hằng số ARC_DIRECTION_* ở chế độ công khai để sử dụng trong Arc/ArcLine/ArcText/DashedArcLine. (I83959, b/427556439)

Thay đổi về API

  • Chúng tôi đã ngừng sử dụng các phương thức Image.Builder()Image.Builder.setResourceId để chuyển sang API đăng ký tài nguyên tự động mới, có trong các API Image.Builder(ProtoLayoutScope)Image.Builder.setImageResource. Các API này giúp bạn không cần ghi đè onTileResourcesRequest. (I7bfe6, b/432758526)
  • Di chuyển các API để tạo ProtoLayoutScope từ hạn chế sang công khai. Tuy nhiên, bạn không nên dùng các lệnh gọi này vì hệ thống đã xử lý những lệnh gọi đó. (I1d8e8, b/432758251)

Sửa lỗi

  • Thêm quy trình triển khai để hỗ trợ PendingIntent trong ProtoTiles (I38167, b/430610429)
  • Thêm phương thức invalidateLayout. (Ief898)
  • Di chuyển minSdk mặc định từ API 21 sang API 23 (Ibdfca, b/380448311, b/435705964, b/435705223)
  • ImageResource hiện có các phương thức hashCodeequals. (I650ee, b/428692423, b/428693523)
  • Thêm thông báo proto mới PendingIntentAction và trình tạo trình bao bọc của thông báo đó (Ie2aca, b/427643502)
  • Giảm tần suất tạo thực thể ZoneId. (I284d3)
  • Áp dụng nội dung mô tả mặc định cho một khe textButton. (I0dc8a, b/415001534)
  • Sửa các phép tính để điều chỉnh số dòng tối đa ở phía trình kết xuất. (I933bc, b/414353620)

Phiên bản 1.3

Phiên bản 1.3.0

Ngày 4 tháng 6 năm 2025

Phát hành androidx.wear.protolayout:protolayout-*: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

  • Thiết kế Material 3 xuất hiện trên đồng hồ, với các thành phần và bố cục được tối ưu hoá cho màn hình tròn và có thể điều chỉnh kích thước phù hợp từ màn hình nhỏ đến màn hình lớn
    • Trong đó có thư viện protolayout-material3 chỉ dành cho Kotlin với nhiều API tương tự như Compose cho các thành phần và tính năng sau:
    • Giao diện màu động lấy từ hệ thống và mặt đồng hồ có giao diện Material3 mới nhất cho màu sắc, hình dạng và kiểu chữ
    • MaterialScope để xử lý tất cả các giá trị mặc định có ý kiến và tuỳ chỉnh dễ dàng hơn
    • iconEdgeButton, textEdgeButton
    • iconButton, textButton, button, imageButton, avatarButton, compactButton
    • titleCard, appCard, graphicDataCard, iconDataCard, textDataCard
    • circularProgressIndicator, segmentedCircularProgressIndicator
    • primaryLayout, buttonGroup
    • Tất cả các thành phần đều hoạt động ở mọi cấp độ SDK và phiên bản Trình kết xuất ProtoLayout, cung cấp các giải pháp dự phòng hợp lý khi có thể
  • Các API tương thích hơn với Kotlin và tương tự như Compose cho các phần tử ProtoLayout cơ bản
    • LayoutModifier có khả năng thêm hầu hết các đối tượng sửa đổi dưới dạng các hàm được liên kết (padding, contentDescription (bao gồm cả clearSemantics), background, clip, opacity, v.v.), có thể chuyển đổi thành đối tượng Modifiers hiện có
    • LayoutColorsLayoutString dưới dạng các loại có khả năng hỗ trợ dễ dàng hơn cho việc sử dụng các trường và ràng buộc động
    • textfontStyle
    • hỗ trợ bản đồ tốt hơn cho StateBuilder, bao gồm cả DynamicDataMap và các phương thức của nhà máy như intAppDataKey để dễ dàng tạo các đối tượng AppDataKey
  • Hỗ trợ ảnh động Lottie, bao gồm cả lựa chọn đặt các trình kích hoạt khác nhau về thời điểm ảnh động sẽ bắt đầu, chẳng hạn như khi bố cục được tải hoặc khi bố cục hiển thị
    • Cải thiện khả năng hỗ trợ chuyển màu:
    • API chuyển màu tuyến tính là một phần của Brush, có thể dùng trong các đối tượng sửa đổi Background cho các phần tử như Box, Spacer, v.v. …
    • Cho phép các giá trị màu động trong ColorStop dùng cho kiểu chuyển màu tuyến tính và kiểu chuyển màu quét
    • Sweep Gradient hiện có trong các đối tượng vòng cung hiện hỗ trợ màu động cũng như góc bắt đầu và góc kết thúc
  • Liên kết dữ liệu nền tảng trong protolayout-expression để nhận thông tin bất cứ khi nào chế độ hiển thị của bố cục thay đổi. Ví dụ: bạn có thể dùng thông tin này để ẩn một số phần của bố cục trong khi vuốt ô
  • Thư viện kiểm thử – protolayout-testing – đã được thêm vào để hỗ trợ phạm vi kiểm thử đơn vị dễ dàng hơn cho mọi phần tử ProtoLayout
  • Phần tử DashedArcLine mới với bộ tính năng cải tiến để đường kẻ có thể có dấu gạch ngang, thay vì ArcLine hiện có
  • Hỗ trợ ArcSpacer để đặt độ dài theo kích thước DP thay vì độ
  • Đã thêm trục độ tròn FontSetting áp dụng cho một số phông chữ

Phiên bản 1.3.0-rc01

Ngày 20 tháng 5 năm 2025

androidx.wear.protolayout:protolayout-*:1.3.0-rc01 được phát hành mà không có thay đổi nào so với bản phát hành trước. Phiên bản 1.3.0-rc01 bao gồm các thay đổi sau.

Phiên bản 1.3.0-beta02

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

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

Sửa lỗi

  • Chúng tôi đã thực hiện một điểm cải tiến quan trọng trong các giá trị thiết kế Typography (Kiểu chữ) được áp dụng trên API 36 trở lên. Lý do là vì từ API 36, tất cả các Ô sẽ ở trong phông chữ hệ thống, nên thay đổi này sẽ giúp tăng tính nhất quán trong băng chuyền Ô. (If316f)
  • Các trình tạo Text,Spacer, ArcLineDashedArcLine sẽ không gửi nếu bạn chưa đặt layoutConstraints cho các giá trị động. Xin lưu ý rằng các trình kết xuất cũ vẫn yêu cầu bạn đặt layoutConstraints và sẽ bỏ qua mọi giá trị động chưa được đặt. (Ic52e8)
  • Thêm đối tượng sửa đổi ngữ nghĩa tiêu đề để cho biết rằng một phần tử bố cục là tiêu đề cho một phần nội dung nhằm hỗ trợ khả năng tiếp cận, đồng thời đánh dấu văn bản trong khe tiêu đề của primaryLayout là tiêu đề hỗ trợ tiếp cận theo mặc định. (Iae1fb)
  • Hoàn thiện trải nghiệm người dùng cuối của primaryLayout, trong đó khoảng cách giữa khe tiêu đề và khe chính giảm xuống còn 4 dp thay vì 6 dp trên màn hình nhỏ hơn. (I0e056)
  • Áp dụng nội dung mô tả mặc định cho textEdgeButton. (Ifaf8b)
  • Bản cập nhật nhỏ cho khoảng đệm bên trong avatarButton. (I0910b)

Phiên bản 1.3.0-beta01

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

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

Tính năng mới

Bản phát hành 1.3.0-beta01 của Wear ProtoLayout cho biết bản phát hành này của thư viện đã hoàn thiện về tính năng và API đã bị khoá (trừ những nơi được đánh dấu là thử nghiệm). Wear ProtoLayout 1.3 có các chức năng và API mới sau đây:

  • Thiết kế Material 3 xuất hiện trên đồng hồ, với các thành phần và bố cục được tối ưu hoá cho màn hình tròn và có thể điều chỉnh kích thước phù hợp từ màn hình nhỏ đến màn hình lớn
    • Trong đó có thư viện protolayout-material3 chỉ dành cho Kotlin với nhiều API tương tự như Compose cho các thành phần và tính năng sau:
    • Giao diện màu động lấy từ hệ thống và mặt đồng hồ có giao diện Material3 mới nhất cho màu sắc, hình dạng và kiểu chữ
    • MaterialScope để xử lý tất cả các giá trị mặc định có ý kiến và tuỳ chỉnh dễ dàng hơn
    • iconEdgeButton, textEdgeButton
    • iconButton, textButton, button, imageButton, avatarButton, compactButton
    • titleCard, appCard, graphicDataCard, iconDataCard, textDataCard
    • circularProgressIndicator, segmentedCircularProgressIndicator
    • primaryLayout, buttonGroup
    • Tất cả các thành phần đều hoạt động ở mọi cấp độ SDK và phiên bản ProtoLayout Renderer, cung cấp các giải pháp dự phòng hợp lý nếu có thể
  • Các API tương thích hơn với Kotlin và tương tự như Compose cho các phần tử ProtoLayout cơ bản
    • LayoutModifier có khả năng thêm hầu hết các đối tượng sửa đổi dưới dạng các hàm được liên kết (padding, contentDescription (bao gồm cả clearSemantics), background, clip, opacity, v.v.), có thể chuyển đổi thành đối tượng Modifiers hiện có
    • LayoutColorsLayoutString dưới dạng các loại có khả năng hỗ trợ dễ dàng hơn cho việc sử dụng các trường và ràng buộc động
    • textfontStyle
    • hỗ trợ bản đồ tốt hơn cho StateBuilder, bao gồm cả DynamicDataMap và các phương thức của nhà máy như intAppDataKey để dễ dàng tạo các đối tượng AppDataKey
  • Hỗ trợ ảnh động Lottie, bao gồm cả lựa chọn đặt các trình kích hoạt khác nhau về thời điểm ảnh động sẽ bắt đầu, chẳng hạn như khi bố cục được tải hoặc khi bố cục hiển thị
    • Cải thiện khả năng hỗ trợ chuyển màu:
    • API chuyển màu tuyến tính là một phần của Brush, có thể dùng trong các đối tượng sửa đổi Background cho các phần tử như Box, Spacer, v.v. …
    • Cho phép các giá trị màu động trong ColorStop dùng cho kiểu chuyển màu tuyến tính và kiểu chuyển màu quét
    • Sweep Gradient hiện có trong các đối tượng vòng cung hiện hỗ trợ màu động cũng như góc bắt đầu và góc kết thúc
  • Liên kết dữ liệu nền tảng trong protolayout-expression để nhận thông tin bất cứ khi nào chế độ hiển thị của bố cục thay đổi. Ví dụ: bạn có thể dùng thông tin này để ẩn một số phần của bố cục trong khi vuốt ô
  • Thư viện kiểm thử – protolayout-testing – đã được thêm vào để hỗ trợ phạm vi kiểm thử đơn vị dễ dàng hơn cho mọi phần tử ProtoLayout
  • Phần tử DashedArcLine mới với bộ tính năng cải tiến để đường kẻ có thể có dấu gạch ngang, thay vì ArcLine hiện có
  • Hỗ trợ ArcSpacer để đặt độ dài theo kích thước DP thay vì độ
  • Đã thêm trục độ tròn FontSetting áp dụng cho một số phông chữ

Phiên bản 1.3.0-alpha10

Ngày 12 tháng 3 năm 2025

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

Tính năng mới

  • Thêm trình trợ giúp cho Brush trong Trình sửa đổi nền Kotlin. (I995de)
  • Trường Ngữ cảnh Android bắt buộc đã được công khai trong MaterialScope để cho phép sử dụng dễ dàng hơn trong các hàm của nhà phát triển đang tạo thành phần cho thẻ thông tin Material3. (I7df73)

Thay đổi về API

  • Đổi tên API platformVisibilityStatus thành PlatformEventSources.isLayoutVisible và thêm một API thử nghiệm mới PlatformEventSources.isLayoutUpdatePending. (Ie1e04)

Sửa lỗi

  • Giờ đây, các lề cho primaryLayout được làm tròn lên đúng cách, điều này có thể ảnh hưởng đến một số bố cục lên đến 2dp không gian ít hơn cho khe chính. (I8f5d3)
  • Làm rõ giao diện màu động mặc định trong các thành phần ProtoLayout Material3. (Iff5f3)
  • Theo mặc định, kiểu chữ Typography.NUMERAL_* không còn ở dạng bảng/đơn cách nữa. Nếu văn bản đang chuyển động, bạn nên thêm chế độ cài đặt FontSetting.tabularNum() vào văn bản đó. Trong tất cả các trường hợp khác, bạn không cần dùng lựa chọn đơn cách này và sẽ có nhiều ký tự hơn nếu không dùng. (Id3cd9)
  • Làm rõ giao diện màu động mặc định trong các thành phần ProtoLayout Material3. (I9d831)

Phiên bản 1.3.0-alpha09

Ngày 26 tháng 2 năm 2025

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

Tính năng mới

  • Thêm đối tượng sửa đổi thử nghiệm cho enterTransitionexitTransition (I4a4d6)
  • Chúng tôi đã thêm chế độ liên kết nền tảng bổ sung để nhận trạng thái hiển thị của bố cục đầy đủ, bất cứ khi nào trạng thái này thay đổi. (I250c3)
  • Cho phép chèn trạng thái ứng dụng thử nghiệm và dữ liệu nền tảng vào LayoutElementAssertionsProvider để đánh giá các giá trị động. (Ib5fcb)
  • Thêm bộ lọc góc vào thư viện thử nghiệm protolayout (Ie2361)
  • ButtonColors, CardColorsProgressIndicatorColors hiện hỗ trợ phương thức sao chép, với tuỳ chọn ghi đè một số tham số. (Ie2054)

Thay đổi về API

  • Thêm tính năng hỗ trợ liên kết dữ liệu động vào thư viện kiểm thử (Ib98de)
  • Khắc phục imageButton khi dùng với hàm backgroundImage bằng cách xoá lớp phủ. Ngoài ra, cho phép hàm backgroundImage chỉ định giá trị rỗng cho màu lớp phủ, tức là lớp phủ sẽ không được áp dụng. (Ibec3c)

Sửa lỗi

  • Thay đổi phương thức hasValueOfType mặc định để gửi UnsupportedOperationException thay vì IllegalArgumentException. (Ia36c3)
  • Các giá trị mã thông báo màu mặc định được cập nhật để phản ánh thông số kỹ thuật mới nhất. (I75d44)
  • Khắc phục vấn đề răng cưa xuất hiện trên các đường vòng cung trong trình kết xuất thẻ thông tin AndroidX. (I88190)

Phiên bản 1.3.0-alpha08

Ngày 12 tháng 2 năm 2025

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

Tính năng mới

  • Thêm tham số danh sách FontSetting cho văn bản Material3. (Ic102d)
  • Thêm lớp DynamicDataMapStateBuilder hiện hỗ trợ để có API Kotlin an toàn về kiểu tốt hơn cho các trạng thái ứng dụng (I012ba)
  • Thêm các phương thức của nhà máy như intAppDataKey để dễ dàng tạo các đối tượng AppDataKey (Icea2a)
  • DynamicDataValue hiện có phương thức hasValueOfType(Class<?>) ngoài các phương thức hasInt/hasColor/.... (I4f7a6)
  • Chúng tôi đã thêm errorDim vào Material3 ProtoLayout ColorScheme cho các lỗi có mức độ ưu tiên cao hoặc hành động khẩn cấp, chẳng hạn như cảnh báo an toàn. (Ia17bb)
  • Chúng tôi đã thêm một biện pháp bảo vệ để tránh sự cố khi truy cập vào chế độ cài đặt chung về giảm chuyển động. Sự cố này xảy ra trên một số nền tảng không cung cấp chế độ cài đặt đó. (I01e2c)

Thay đổi về API

  • addKeyToValueMapping được đổi tên thành addToStateMap và các phương thức DynamicDataMap.put bị xoá vì chúng dư thừa. (Ibe9dd)
  • Kiểu chữ Material3 hiện hỗ trợ trục biến thiên về độ tròn cho các phông chữ hệ thống hỗ trợ trục này. ProtoLayout FontSetting hỗ trợ trục độ tròn cho những phông chữ hỗ trợ trục này. (I33eb5)
  • Đổi tên multilineAlignment thành căn chỉnh trong phương thức văn bản Material3. (I2b66b)
  • Cập nhật chỉ báo tiến trình dạng xoay tròn thành loại Hộp, đồng thời chỉ định mainContent trong constructGraphic thành loại Hộp (I5a3dc)
  • Hỗ trợ tốt hơn cho việc sử dụng chỉ báo tiến trình dạng xoay tròn trong biểu đồ (I039db)

Sửa lỗi

  • Cho phép các giá trị động trong ColorStop và cả góc bắt đầu/kết thúc trong SweepGradient. (I0146d)
  • Các bản sửa lỗi trong Tài liệu. (I4a63a)
  • Cập nhật các thành phần Material 3 (graphicCardavatarButton) để cung cấp giải pháp dự phòng khi không hỗ trợ phương diện mở rộng weight (ví dụ: dưới API 33). Cập nhật thành phần văn bản để dự phòng về TEXT_OVERFLOW_ELLIPSIZE_END khi trình kết xuất không hỗ trợ TEXT_OVERFLOW_ELLIPSIZE. (I19e2c)
  • Nội dung cập nhật tài liệu cho PrimaryLayoutMargins. (Ibaf7b)

Phiên bản 1.3.0-alpha07

Ngày 29 tháng 1 năm 2025

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

Tính năng mới

  • Đã thêm lựa chọn API để đặt các điều kiện kích hoạt khác nhau cho ảnh động Lottie. Ngoài ra, đã thêm API cho các điều kiện kích hoạt được kích hoạt khi bố cục hiển thị (I8272d)
  • Đã thêm đối tượng sửa đổi border, visibilityopacity. (I6d3dd)
  • Thêm nút hình đại diện vào thành phần ProtoLayout Material3. (Idb5ae)
  • Giờ đây, bạn có thể tuỳ chỉnh lề (bên và trong một số trường hợp là lề dưới) trong Material3 primaryLayout. (Ib22f6)
  • Thêm biến thể phân đoạn của chỉ báo tiến trình dạng xoay tròn. (I6a648)
  • Thêm thành phần nút thu gọn vào ProtoLayout Material3. (Ia3c5c)
  • Thêm các thành phần nút hình viên thuốc và nút hình ảnh vào ProtoLayout Material3. (Ifb88a)

Thay đổi về API

  • LayoutModfier.foldIn hiện được gọi là foldRight để phản ánh chính xác hơn hành vi dự kiến của nó (Idf242)
  • Điều kiện kích hoạt VisibleOnce hiện đang thử nghiệm. (Ib2d26)
  • Xoá withOpacity khỏi API công khai vì có một thư viện đồ hoạ thay thế. (I030c2)
  • Đổi tên các phương thức cấp cao nhất trong LayoutString.ktLayoutColor.kt để có tên thân thiện với Java. (I7aff0)
  • Xoá các kiểu chữ không phải ProtoLayout trong Material3. (Idd9ae)
  • Thêm hậu tố Color vào các trường trong lớp *Colors trong Material3. (I2d114)

Sửa lỗi

  • Thêm chế độ dự phòng EdgeButton cho trình kết xuất cũ không hỗ trợ các góc bất đối xứng. (I63364)
  • Thêm phương thức triển khai dự phòng của chỉ báo tiến trình dạng xoay tròn bằng trình kết xuất cũ. (I0f134)

Phiên bản 1.3.0-alpha06

Ngày 15 tháng 1 năm 2025

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

Tính năng mới

  • LayoutColor để hỗ trợ cả kiểu màu tĩnh và động (I4c89b)
  • Đã thêm thành phần ProtoLayout Material3 textButton. (Id680d)
  • Thêm thành phần iconButton ProtoLayout Material3. (Ica3f0)
  • Thêm thành phần vùng chứa nút ProtoLayout Material3. (I17a38)
  • Thêm tính năng hỗ trợ đối tượng sửa đổi ngữ nghĩa có thể liên kết vào protolayout-material3 (I4af62)
  • Đã thêm một phân đoạn CircularProgressIndicator Material3 ProtoLayout (I2c8a2)
  • Thêm các đối tượng sửa đổi padding,metadata (I8720a)
  • Thêm đối tượng sửa đổi background,clipclickable (I35478)
  • Thêm LinearGradient vào Brush và cho phép dùng trong Background Modifier. (Ic4dea)
  • Thêm kích thước nhỏ cho appCard và titleCard. (I91f98)
  • Thêm thành phần ProtoLayout Material3 graphicDataCard. (I92be7)
  • Thêm các thành phần ProtoLayout Material3 iconDataCardtextDataCard. (I4e1e4)
  • Thêm thành phần ProtoLayout Material3 appCard. (Id4c57)
  • Tóm tắt EdgeButtonColors đến ButtonColors. (I83624)
  • Thêm thành phần ProtoLayout Material3 titleCard. (I2dc72)

Thay đổi về API

  • API ProtoLayout Material3 hiện chấp nhận LayoutString để hỗ trợ cả văn bản tĩnh và văn bản động. (I9c24a)

Sửa lỗi

  • Thêm cách triển khai trình kết xuất để tăng DashedArcLine (I0c700)
  • Thay đổi trình kết xuất để cho phép ArcSpacer lấy độ dài dp. (I1437b)

Phiên bản 1.3.0-alpha05

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

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

Tính năng mới

  • Thêm LayoutString để hỗ trợ các trường chuỗi bố cục có thể liên kết. (Ida650)
  • Đã thêm thành phần vùng chứa thẻ ProtoLayout Material3. (Ic985a)

Sửa lỗi

  • Thư viện này hiện sử dụng chú giải về khả năng rỗng JSpecify, là loại chú giải sử dụng. Nhà phát triển Kotlin nên sử dụng đối số trình biên dịch sau đây để thực thi việc sử dụng chính xác: -Xjspecify-annotations=strict (đây là đối số mặc định bắt đầu từ phiên bản 2.1.0 của trình biên dịch Kotlin). (Id1f9b, b/326456246)

Phiên bản 1.3.0-alpha04

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

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

Tính năng mới

  • Cập nhật hình dạng Material3 thành một lớp có các trường lưu giữ giá trị Góc thực tế, giống như trong Wear Compose. (Ied8cd)
  • Đã cập nhật màu Material3 để bao gồm khái niệm ColorScheme, giống như trong Wear Compose. (If645e)
  • Thêm nhiều đối tượng so khớp thường dùng vào thư viện kiểm thử. (Ie5cec)

Phiên bản 1.3.0-alpha03

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

Phát hành androidx.wear.protolayout:protolayout-*: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

  • Thêm LayoutElementAssertionsProvider, LayoutElementAssertionLayoutElementMatcher vào thư viện thử nghiệm (Id1110)

Phiên bản 1.3.0-alpha02

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

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

Tính năng mới

  • Phiên bản đầu tiên của thư viện Material 3. Bao gồm các thành phần text, edgeButton, buttonGroupprimaryLayout.

Bản sửa lỗi bảo mật

  • Kể từ thay đổi này, androidx sẽ biên dịch dựa trên protobuf 4.28.2 để giải quyết CVE-2024-7254. Nâng cấp phần phụ thuộc của bạn trên phiên bản 1.3.0-alpha01 của androidx.wear.protolayout:protolayout-protoandroidx.wear.protolayout:protolayout-external-protobuf lên 1.3.0-alpha02 để giải quyết nguy cơ dễ bị tấn công.

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

Phiên bản 1.3.0-alpha01

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

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

Sửa lỗi

  • Làm rõ rằng tên bộ phông chữ Roboto và Roboto Flex có sẵn hay không là tuỳ thuộc vào thiết bị. (I193be)
  • Đã bật bộ phông chữ Roboto Flex trong trình kết xuất Thẻ thông tin AndroidX. (I08e94)

Phiên bản 1.2

Phiên bản 1.2.1

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

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

Bản sửa lỗi bảo mật

  • Kể từ thay đổi này, androidx sẽ biên dịch dựa trên protobuf 4.28.2 để giải quyết CVE-2024-7254. Nâng cấp phần phụ thuộc của bạn trên phiên bản 1.2.0 của androidx.wear.protolayout:protolayout-protoandroidx.wear.protolayout:protolayout-external-protobuf lên 1.2.1 để giải quyết nguy cơ gây ra lỗ hổng.

Phiên bản 1.2.0

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

Phát hành androidx.wear.protolayout:protolayout-*: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

  • FontStyle đã được cập nhật để có thêm chế độ hỗ trợ phông chữ cho các trục biến đổi và API chọn phông chữ hiệu quả hơn để hỗ trợ phông chữ linh hoạt sắp ra mắt.
  • Hỗ trợ thêm các đối tượng sửa đổi:
    • Đối tượng sửa đổi biến đổi cung cấp tính năng dịch, xoay và mở rộng quy mô có hoặc không có ảnh động.
    • Chỉ định các giá trị khác nhau (ngang và dọc) cho từng bán kính góc.
  • Cải thiện khả năng tiếp cận của tất cả các đích chạm bằng cách mở rộng khu vực có thể nhấn của mọi phần tử sử dụng đối tượng sửa đổi Clickable (Có thể nhấp) thành ít nhất 48dp x 48dp.
  • Cải thiện PrimaryLayoutEdgeContentLayout bằng cách thêm setResponsiveContentInsetEnabled để hỗ trợ tốt hơn hành vi thích ứng của các bố cục này trên nhiều kích thước màn hình và cải thiện tính nhất quán của các ô.
  • Cải thiện khả năng điều chỉnh tỷ lệ/không điều chỉnh tỷ lệ của Văn bản Material cho tính năng điều chỉnh tỷ lệ phông chữ phi tuyến tính của Android 14.
  • Cải thiện khả năng hỗ trợ hướng bố cục từ phải sang trái trên tất cả các phần tử vòng cung.

Các thay đổi khác

Phiên bản 1.2.0-rc01

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

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

Sửa lỗi

  • Chúng tôi đã cố định Material Chip tiêu chuẩn để có thể dùng làm biểu tượng nếu không có nhãn chính hoặc nhãn phụ nào được truyền vào. (Iceef9)
  • Tài liệu về bố cục Material đã được cập nhật để bao gồm hình ảnh từ trang có liên quan, giúp bạn dễ dàng hiểu được bố cục. (I0256a)

Phiên bản 1.2.0-beta01

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

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

Tính năng mới

Bản phát hành 1.2.0-beta01 của Wear ProtoLayout cho biết bản phát hành này của thư viện đã hoàn thiện về tính năng và API đã bị khoá (ngoại trừ những nơi được đánh dấu là thử nghiệm). Wear ProtoLayout 1.2 có các chức năng và API mới sau đây:

  • FontStyle đã được cập nhật để hỗ trợ thêm các phông chữ như sau:
    • Đặt chế độ cài đặt biến thể phông chữ khác nhau, chẳng hạn như FontSetting.weightFontSetting.width
    • Đặt cùng chiều rộng cho tất cả các ký tự số – chữ số dạng bảng (chế độ cài đặt tính năng phông chữ FontSetting.tnum)
    • Cải thiện các API lựa chọn phông chữ để hỗ trợ các phông chữ linh hoạt sắp ra mắt bằng cách chỉ định tên bộ phông chữ ưu tiên sẽ được dùng.
  • Mở rộng đối tượng sửa đổi Corner để hỗ trợ việc chỉ định từng CornerRadius bằng các giá trị ngang và dọc riêng biệt để cho phép tạo các phần tử có góc không đối xứng.
  • Thêm đối tượng sửa đổi Transformation mới cung cấp tính năng dịch, xoay và chia tỷ lệ LayoutElement. Bạn có thể tạo hiệu ứng cho các phép biến đổi này bằng cách sử dụng các giá trị động.
  • Đã thêm setArcDirection với các lựa chọn Clockwise, CounterClockwiseNormal vào tất cả các phần tử vòng cung (Arc, ArcLineArcText) để hỗ trợ tốt hơn ở các hướng bố cục khác nhau (chẳng hạn như LTR và RTL).
  • Cải thiện khả năng hỗ trợ tiếp cận của tất cả các đích chạm bằng cách mở rộng vùng có thể nhấn của mọi phần tử sử dụng đối tượng sửa đổi Clickable thành ít nhất 48dp x 48dp.
  • Cải thiện PrimaryLayoutEdgeContentLayout bằng cách thêm setResponsiveContentInsetEnabled để hỗ trợ tốt hơn hành vi thích ứng của các bố cục này trên nhiều kích thước màn hình và cải thiện tính nhất quán của các ô. Thêm cảnh báo của linter để đề xuất sử dụng các API này bằng một bản sửa lỗi nhanh.
  • Cải thiện khả năng điều chỉnh tỷ lệ/không điều chỉnh tỷ lệ của Text Material cho tính năng điều chỉnh tỷ lệ phông chữ phi tuyến tính của Android 14.

Thay đổi về API

  • Tên bộ phông chữ mặc định (DEFAULT_SYSTEM_FONT) sẽ bị xoá vì được ngầm hiểu là không sử dụng API preferredFontFamilies. (I39dab)
  • Tham số được truyền vào FontSetting.width phải là số dương. (I1266f)

Phiên bản 1.2.0-alpha05

Ngày 26 tháng 6 năm 2024

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

Tính năng mới

  • Thêm phương thức hasText vào Material.CompactChip để kiểm tra xem nội dung văn bản đã được đặt hay chưa. (I6e8fc)

Thay đổi về API

  • FontFamily const được di chuyển vào FontStyle thay vì lớp Builder của nó. (I06ced)
  • Cập nhật API FontSetting.weightFontSetting.width để thêm chú thích Phạm vi và thay đổi tham số trọng số thành int. (Ia726c)

Sửa lỗi

  • Văn bản không thể điều chỉnh tỷ lệ trong thư viện Material hiện hoạt động chính xác với tính năng điều chỉnh tỷ lệ phông chữ phi tuyến tính của Android 14. (I6601e)

Phiên bản 1.2.0-alpha04

Ngày 29 tháng 5 năm 2024

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

Thay đổi về API

  • Đã thêm API góc không đối xứng để có thể chỉ định riêng bán kính của từng góc bằng 2 giá trị. (Icbd69)
  • Mở rộng API FontSetting để bao gồm:
    • chế độ cài đặt tính năng phông chữ, chẳng hạn như đặt phông chữ ở dạng bảng. (If12b7)
    • chế độ cài đặt biến thể phông chữ, chẳng hạn như đặt chiều rộng tuỳ chỉnh cho phông chữ có thể thay đổi. (I2b36d)
  • Đã thêm API bộ phông chữ vào FontStyle để cho phép chỉ định danh sách thứ tự của những bộ phông chữ nên dùng. (Iba9f5)
  • Đổi tên các hằng số cho chiều cao khoảng trống giữa nội dung và nhãn phụ trong LayoutDefaults của Material. Ban đầu, các hằng số này có tiền tố "Nội dung cạnh" để trở nên chung chung hơn vì có thể áp dụng cho cả PrimaryLayoutEdgeContentLayout. (I4dc32)

Sửa lỗi

  • Đã đổi tên các trục của phông chữ có thể thay đổi từ axisName thành axisTag. (I02ba3)

Phiên bản 1.2.0-alpha03

Ngày 14 tháng 5 năm 2024

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

Tính năng mới

  • Thêm API để thiết lập các giá trị trọng số tuỳ chỉnh cho FontStyle. (I7390a)

Sửa lỗi

  • Khắc phục lỗi trong getTouchDelegateInfo do bản đồ đích trống. (I2accf)

Phiên bản 1.2.0-alpha02

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

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

Thay đổi về API

  • Chúng tôi đã thêm tính năng hỗ trợ vô hiệu hoá hiệu ứng phản hồi gợn sóng trên từng phần tử có thể nhấp. (If1ede)
  • API để chuyển đổi đã bị xoá khỏi ArcModifiers vì không hỗ trợ tính năng đó (Ic0827)
  • Giờ đây, ArcDirectionProp Builder chờ đợi một giá trị trong hàm khởi tạo. (I76ada)
  • Phương thức PlatformDataValues.Builder.putAll sẽ cho phép hợp nhất một PlatformDataValue vào một PlatformDataValue khác. (I50ba3)
  • Text#setIsScalable đổi tên thành Text#setScalable. (If920e)
  • Văn bản Material có thể đặt xem có sử dụng kích thước có thể mở rộng (tăng lên khi người dùng thay đổi cỡ chữ) hay không. (Ibc849)
  • Chúng tôi đã thêm lựa chọn đặt nội dung mô tả thành TitleChip. (I5d21f)
  • Đã sửa lỗi CompactChip để hoạt động chính xác với chỉ biểu tượng và cập nhật API để cho phép lựa chọn này. (I6589e)

Sửa lỗi

  • Khắc phục vấn đề có thể xảy ra trùng lặp dữ liệu nền tảng trong quá trình khởi tạo. (Iba0fd)
  • Giới thiệu một getter mới cho DynamicDataNode để truy xuất chi phí của nút. Chi phí này được dùng khi bạn nhận được hạn mức nút động. Hiện tại, các Nút có giá trị cố định sẽ có chi phí là 0, tất cả các nút khác sẽ có chi phí là 1. (Ia33e1)
  • Xoá logic đếm khỏi NO_OP_QUOTA_MANAGER. (Ib50b8)
  • Chúng tôi đã thêm một quy tắc Lint (tìm lỗi mã nguồn) để báo cáo cảnh báo khi PrimaryLayout được dùng mà không có setResponsiveContentInsetEnabled và cung cấp một bản sửa lỗi nhanh. (I12025)
  • Có giới hạn về số lượng nút biểu thức động. (Iffae8)

Phiên bản 1.2.0-alpha01

Ngày 6 tháng 3 năm 2024

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

Tính năng mới

  • Giờ đây, các phần tử ProtoLayout Arc có thể thêm ArcDirection (Clockwise, Counterclockwise hoặc Normal) vào đó. Việc thêm hành vi này vào Arc, ArcLine hoặc ArcText sẽ khắc phục hành vi của chúng trên bố cục RTL. (I90699)
  • EdgeContentLayout đã được cập nhật bằng một bộ thiết lập setResponsiveContentInsetEnabled mới để đạt được sự điều chỉnh tốt hơn theo nguyên tắc trải nghiệm người dùng, tính nhất quán trong các Ô bằng cách đặt nhãn chính ở vị trí cố định trên cùng và phần lồng phản hồi cho các nhãn. (I60175)
  • Chúng tôi đã thêm PrimaryLayout.setResponsiveContentInsetEnabled để thêm phần lồng ghép thích ứng vào nhãn chính, nhãn phụ và khối chip dưới cùng trong bố cục này, nhằm tránh nội dung bị tràn ra ngoài cạnh màn hình. (I0c457)
  • Thêm phương thức để xoá lề ngoài khỏi CircularProgressIndicator để có thể dùng làm một thành phần nhỏ hơn. (I55c06)

Thay đổi về API

  • Giờ đây, trình kết xuất ô loại trừ khoảng đệm phông chữ trên tất cả các phần tử văn bản theo mặc định, mà không có lựa chọn nào để đưa khoảng đệm đó vào. (I3e300)

Sửa lỗi

  • Khắc phục vấn đề về căn chỉnh văn bản khi tất cả các thuộc tính ellipsize, letter spacing và center align đều được dùng trên Văn bản. (I716c7)
  • Thêm giải pháp tạm thời cho vấn đề vẽ cung skia. (I08f09)
  • Sửa hướng vẽ ArcLine cho bố cục RTL. (I6c141)

Phiên bản 1.1

Phiên bản 1.1.0

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

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

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

  • Hỗ trợ chuyển màu và thể hiện chính xác hơn các độ dài lớn hơn 360 độ trong ArcLine.
  • Định dạng ngày giờ hỗ trợ nhiều múi giờ cho các loại dữ liệu động.
  • Các lựa chọn tự động điều chỉnh kích thước và cắt bớt văn bản tốt hơn để xử lý văn bản bị cắt bớt.
  • Spacer hỗ trợ các phương diện mở rộng với trọng số không bắt buộc.
  • Chú thích yêu cầu về phiên bản giản đồ cho tất cả các API ProtoLayout.
  • Mở rộng vùng đích cho mọi phần tử Clickable thành 48 dp x 48 dp để đáp ứng các yêu cầu về khả năng hỗ trợ tiếp cận.
  • Theo mặc định, khoảng đệm phông chữ sẽ bị tắt và là hành vi duy nhất trên tất cả các phần tử Văn bản và thành phần Material có chứa văn bản.

Các thay đổi khác

Phiên bản 1.1.0-rc01

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

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

Sửa lỗi

  • PlatformTimeUpdateNotifierImpl đánh dấu ngay sau khi bật tính năng cập nhật. (I77145)
  • Đã khắc phục CircularProgressIndicator cho bố cục RTL. Từ giờ trở đi, nó sẽ xoay theo chiều kim đồng hồ trong mọi trường hợp. (I95ee3)
  • Thêm giải pháp tạm thời cho vấn đề vẽ cung skia. (I08f09)

Phiên bản 1.1.0-beta01

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

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

Tính năng mới

Bản phát hành 1.1.0-beta01 của Wear ProtoLayout cho biết bản phát hành này của thư viện đã hoàn thiện về tính năng và API đã bị khoá (trừ những nơi được đánh dấu là thử nghiệm). Wear ProtoLayout 1.1 có các chức năng và API mới sau đây:

  • ArcLine hiện hỗ trợ chuyển màu bằng cách thêm Brush với SweepGradient và có bóng trên nắp để thể hiện rõ hơn độ dài lớn hơn 360 độ bằng cách thêm Shadow vào StrokeCap hiện có.
  • DynamicInstant hỗ trợ định dạng ngày giờ theo múi giờ. DynamicInstantDynamicDuration có thể được dùng làm loại dữ liệu trạng thái hoặc nền tảng.
  • Tính năng tự động điều chỉnh kích thước cho cỡ chữ, cho phép đặt nhiều kích thước thành FontStyle.setSizes, trong đó Cỡ chữ sẽ tự động điều chỉnh tỷ lệ dựa trên khoảng trống mà nó có bên trong thành phần mẹ. Ngoài ra, chúng tôi đã cải thiện các lựa chọn cắt bớt cho văn bản tràn bằng cách thêm TEXT_OVERFLOW_ELLIPSIZE và ngừng sử dụng TEXT_OVERFLOW_ELLIPSIZE_END.
  • Spacer hiện hỗ trợ việc mở rộng các phương diện với trọng số không bắt buộc. Để tạo ExpandedDimensionProp, chúng tôi đã thêm một phương thức trợ giúp DimensionBuilders.weight.
  • Hỗ trợ việc ẩn và hiện linh hoạt các phần tử bố cục bằng Modifier.visible. Điều này bao gồm việc có các giá trị linh động trong BoolProp.
  • Tất cả API ProtoLayout hiện đều có chú thích yêu cầu về phiên bản giản đồ và bạn có thể kiểm tra phiên bản trước khi gọi một API mới hơn.
  • Mọi phần tử có Clickable hiện có vùng đích được mở rộng ít nhất là 48x48 trong trình kết xuất để hỗ trợ tốt hơn các yêu cầu về khả năng hỗ trợ tiếp cận.
  • Sau các thành phần Material và sáng kiến Compose khác, giờ đây, chúng tôi đã tắt tính năng đệm phông chữ theo mặc định trên tất cả các phần tử Text. Ngoài ra, AndroidTextStyle và các phương thức thiết lập liên quan đã bị xoá khỏi API công khai. kèm theo các bản sửa lỗi sau:
  • Đã thêm một phương thức thiết lập để định vị nội dung cạnh trong EdgeContentLayout để nội dung đó có thể được định vị trước nội dung khác.
  • Liên tục gửi một ngoại lệ khi gặp phải giá trị enum không nhận dạng được.
  • Làm mất hiệu lực kết quả của một biểu thức khi biểu thức đó tạo ra một giá trị số không hợp lệ (NaN hoặc vô hạn) hoặc gửi một ArithmeticException.

Thay đổi về API

  • Cập nhật API SweepGradient để cho phép chấp nhận màu sắc hoặc ColorStops trong hàm khởi tạo. (I6676f)

Sửa lỗi

  • Thêm một API bị hạn chế và hỗ trợ trình kết xuất để đặt hướng vẽ các phần tử hình vòng cung. (Idef5a)
  • RoundMode mặc định là Floor trong FloatToInt32Node khi không được chỉ định. Nút này vẫn sẽ gửi một trường hợp ngoại lệ nếu RoundMode được cung cấp không được nhận dạng. (I1b2d8)

Phiên bản 1.1.0-alpha04

Ngày 13 tháng 12 năm 2023

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

Tính năng mới

  • Lớp VersionInfo không triển khai giao diện Comparable. (I8d13c)
  • Trình kết xuất hiện hỗ trợ lựa chọn TEXT_OVERFLOW_ELLIPSIZE. (I7f085)

Thay đổi về API

  • Tuỳ chọn tràn văn bản TEXT_OVERFLOW_ELLIPSIZE_END hiện không còn được dùng nữa. Vui lòng sử dụng API TEXT_OVERFLOW_ELLIPSIZE mới có hành vi tương tự. (I822d8)
  • Sau các thành phần Material và sáng kiến Compose khác, giờ đây, chúng tôi đã tắt khoảng đệm phông chữ theo mặc định trên tất cả các phần tử Văn bản. Ngoài ra, AndroidTextStyle và các phương thức setter liên quan đã bị xoá khỏi API công khai. (I79094, Ib0b03, I32959, Iaf7d5, Ifa298, I0a4ae, Ida9d3)
  • Modifier.hidden được thay thế bằng Modifier.visible (I56902)
  • FontStyle#setSizes hiện chấp nhận int thay vì các đối số SpProp. (I02b37)

Sửa lỗi

  • Gửi một ngoại lệ khi gặp phải giá trị enum Undefined hoặc Unrecognized. (I9d2cf)
  • Tái cấu trúc DynamicTypeBindingRequest. (I27b57)
  • Làm mất hiệu lực kết quả của một biểu thức khi biểu thức đó tạo ra một giá trị số không hợp lệ (NaN hoặc vô hạn) hoặc gửi một ArithmeticException. (I681ae)

Phiên bản 1.1.0-alpha03

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

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

Tính năng mới

  • Thêm tính năng hỗ trợ thử nghiệm để ẩn/hiện các phần tử bố cục một cách linh động (I64a78)
  • Thêm tính năng hỗ trợ giá trị động vào BoolProp (I2fe96)
  • Thêm chú thích yêu cầu về phiên bản giản đồ vào các API ProtoLayout (I0f03c)
  • Mở rộng API bằng lựa chọn mới trong TextOverflow để cắt bớt Văn bản trong một vùng chứa mẹ cố định ngay cả khi chưa đạt đến số dòng tối đa (nhưng không có đủ không gian cho Văn bản). (I110a9)
  • Thêm phương thức hỗ trợ DimensionBuilders.weight để tạo ExpandedDimensionProp có trọng số. (I4f72b)
  • DynamicInstantDynamicDuration có thể được dùng làm loại dữ liệu trạng thái hoặc nền tảng. (I6819f)

Thay đổi về API

  • Cập nhật API để ẩn DynamicZonedDateTime và chuyển tất cả các thao tác của API này sang DyanamicInstant (I34b94)
  • Thành phần Spacer hiện hỗ trợ phương diện Mở rộng cho chiều rộng/chiều cao. (Ie7c94)
  • Hỗ trợ tiện ích khu vực mục tiêu của lượt nhấp trong Trình kết xuất (I39c79)

Phiên bản 1.1.0-alpha02

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

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

Tính năng mới

  • Thêm trường ArcLine StrokeCap Shadow vào API. (I830ec)
  • Mở rộng API để có thể chỉ định chiều rộng hoặc chiều cao của Spacer để mở rộng. (I757ca)
  • Chúng tôi đã thêm một API thử nghiệm để tự động điều chỉnh kích thước văn bản dựa trên khoảng trống mà văn bản có bên trong thành phần mẹ. (Ibbe63)
  • Hỗ trợ kích thước tối thiểu có thể nhấp (I178e3)
  • Thêm tính năng hỗ trợ trình kết xuất cho StrokeCap Shadow. (I48b17)
  • Thêm tính năng hỗ trợ trình kết xuất cho Chuyển màu quét trong ArcLine. (I4d5bb)

Phiên bản 1.1.0-alpha01

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

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

Tính năng mới

  • Thêm lựa chọn cọ vẽ vào Arcline, có hỗ trợ SweepGradient. (Ie7ce3)
  • Thêm tính năng hỗ trợ định dạng ngày giờ theo múi giờ. (Ibfae0)
  • Đã thêm các giao thức và trình bao bọc Java cần thiết để định dạng ngày giờ theo múi giờ. (I97126)
  • Đã thêm các phương thức getter để đọc lại giá trị được lưu trữ trong một DynamicDataValue. (Ie6cea)
  • Đã thêm một phương thức thiết lập để định vị nội dung cạnh trong EdgeContentLayout để nội dung đó có thể được định vị trước nội dung khác. (Ie8e8a)

Sửa lỗi

  • Khắc phục vấn đề khi một biểu thức có nhiều lượt đăng ký nguồn dữ liệu thời gian không được cập nhật ngay lập tức. (I8e1a8)
  • Khắc phục một lỗi để căn giữa phần tử gốc trong quá trình cập nhật chênh lệch. (Ie48f7)
  • Các giá trị ràng buộc bố cục chưa đặt (hoặc trống) sẽ không bị bỏ qua nữa. (Ibc785)
  • Giảm độ trễ giữa thời điểm bố cục hiển thị và thời điểm các nút trong quy trình của bố cục được khởi chạy. (I38d4e)

Phiên bản 1.0

Phiên bản 1.0.0

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

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

Các tính năng chính của phiên bản 1.0.0

Thư viện ProtoLayout giới thiệu các API để tạo bố cục và biểu thức có thể dùng trên nhiều nền tảng Wear OS. Ví dụ: thư viện Thẻ thông tin sử dụng các API này để hỗ trợ liên kết dữ liệu nền tảng (để cập nhật dữ liệu thẻ thông tin nhanh hơn) và ảnh động.

Phiên bản 1.0.0-rc01

Ngày 26 tháng 7 năm 2023

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

  • Để di chuyển từ Tiles sang ProtoLayout, vui lòng làm theo hướng dẫn tại đây.

Thay đổi về API

  • Chúng tôi đã xoá các phương thức setLayoutConstraintForDynamicAnchorAnglegetLayoutConstraintForDynamicAnchorAngle khỏi phần tử Arc. Các phương thức này được thêm nhầm và không ảnh hưởng đến bố cục được cung cấp. (If7d01)
  • Chúng tôi đã giới hạn độ sâu tối đa mà bố cục của ProtoLayout có thể có là 30 LayoutElements lồng nhau. (I8a74b)

Sửa lỗi

  • Chúng tôi đã thêm một quy trình kiểm tra để đưa ra thông báo lỗi nếu DynamicColor được đặt cho SpanText. (I0e5bc)
  • Đơn vị nguồn dữ liệu DAILY_CALORIES là kcal. (Iaa785)

Phiên bản 1.0.0-beta01

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

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

Tính năng mới

  • Cho phép đặt đồng hồ cho các kiểm thử liên kết thời gian. (I05622)

Thay đổi về API

  • PlatformDataReceiver.onData()StateBuilders.Builder.addKeyToValueMapping hiện chấp nhận việc ánh xạ an toàn theo kiểu từ DynamicDataKey sang DynamicDataValue thay vì các giá trị chung không an toàn. Điều đó có nghĩa là DynamicDataValue hiện được nhập bằng DynamicType. Các hằng số HEART_RATE_ACCURACY_X được di chuyển đến gốc của PlatformHealthSources, để khớp với vị trí của các hằng số Android khác. Hiện tại, các hằng số int HEART_RATE_ACCURACY_X được dùng trực tiếp trong DynamicHeartRateAccuracy.constant()DynamicHeartRateAccuracy.dynamicDataValueOf() thay vì hằng số giá trị. (I82ff5)
  • Lớp PlatformHealthSources.Constants có thể được khởi tạo do nhầm lẫn. Vấn đề này hiện đã được khắc phục. (Icb849)
  • PlatformTimeUpdateNotifier#setReceiver hiện nhận được Runnable thay vì hàm SupplierExecutor để thông báo. (I9d938)
  • Chúng tôi đã thay đổi loại tham số trong PlatformTimeUpdateNotifier#setReceiver từ Callable thành Supplier. (I664bf)
  • CompactChipTitleChip hiện hỗ trợ việc thêm biểu tượng vào đó. (I5a01e)

Sửa lỗi

  • Cập nhật thông báo Prop bằng các trường động để sử dụng oneof (I81739)
  • Sử dụng lại việc triển khai phương thức thiết lập cho các phương thức nạp chồng có phương thức thiết lập (Ied70c)
  • Ghi lại dấu vân tay đúng cách trong các phương thức setter có phương thức nạp chồng (I86ed2)

Phiên bản 1.0.0-alpha11

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

Phát hành androidx.wear.protolayout:protolayout-*:1.0.0-alpha11. Phiên bản 1.0.0-alpha11 chứa những cam kết này.

Tính năng mới

  • Chúng tôi đã thêm một PlatformDataKey để đo độ chính xác của nhịp tim. (I7f9b8)

Thay đổi về API

  • Đổi tên StateBuilders#getIdToValueMapping thành getKeyToValueMapping và thay đổi loại trả về thành Map<<AppDataKey<?>,DynamicDataValue>. (Iaa7ae)
  • Đặt StateStore thành lớp cuối cùng (I408ca)
  • Giao diện TimeGateway đã được thay thế bằng PlatformTimeUpdateNotifier trong thư viện protolayout-expression-pipeline. Thư viện này cung cấp tần suất mong muốn để cập nhật dữ liệu thời gian. (I60869)
  • Đổi tên register/unregisterForData trong PlatformDataProvider thành set/clearReceiver (I14b02)
  • Trong Văn bản Material, getExcludeFontPadding đã được đổi tên thành hasExcludeFontPadding. (Iea01d)
  • Trình thiết lập để căn chỉnh nhãn một cách hoàn hảo đã được thêm vào tất cả các thành phần khối. Giờ đây, tất cả các khối đều có mục tiêu tối thiểu có thể nhấn. (I8ae92)
  • LayoutDefaults#BUTTON_MAX_NUMBER đổi tên thành MAX_BUTTONS (I84788)
  • DAILY_DISTANCE đổi tên thành DAILY_DISTANCE_M. (I4f758)

Sửa lỗi

  • Cập nhật tài liệu về các loại Prop để làm rõ lý do giá trị tĩnh được thực thi. Chỉ định giá trị mặc định được dùng nếu bạn không cung cấp giá trị tĩnh. (I155aa)
  • Không gian tên PlatformDataKey phải tuân theo quy ước đặt tên kiểu Java. (I47bda)

Phiên bản 1.0.0-alpha10

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

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

Tính năng mới

  • Thêm AppDataKey để truy cập vào trạng thái được đẩy của ứng dụng; Thêm PlatformDataKey để truy cập vào dữ liệu nền tảng; Thêm tính năng hỗ trợ không gian tên trong StateStore. (I7985e)
  • Hỗ trợ các thao tác EqualNotEqual cho DynamicBool. (I6a0c1)

Thay đổi về API

  • Lớp FontStyles hiện đã hoàn chỉnh (Iaa2ea)
  • Ngừng sử dụng LayoutElementBuilders#FontStyles. Vui lòng sử dụng androidx.wear.protolayout.Typography hoặc tạo FontStyle của riêng bạn. (Ic929b)
  • Ẩn giao diện lồng nhau Action#Builder khỏi giao diện Action. Các lớp LoadActionLaunchAction đã cung cấp các cách triển khai Builder. (I1d70c)
  • Cho phép sử dụng DynamicFloat với FloatProp. Xin lưu ý rằng FloatProp không yêu cầu các ràng buộc về bố cục vì không được dùng làm thuộc tính thay đổi bố cục. (I286ac)
  • Các thao tác LoalActionSetStateAction đã bị xoá vì chưa thực sự được hỗ trợ. (I5d6a6)
  • Thêm tính năng hỗ trợ định dạng ARGB_8888 cho tài nguyên hình ảnh nội tuyến. (I8a07c)
  • Đổi tên StateEntryValue thành DynamicDataValue và cập nhật các API trạng thái để sử dụng DynamicDataKey (If1c01)
  • Chúng tôi đang giới hạn số lượng mục được phép có trong StateStore để đảm bảo mức sử dụng bộ nhớ và thời gian cập nhật trạng thái được kiểm soát và hạn chế cho từng phiên bản của StateStore. Do đó, nhà phát triển cần đảm bảo rằng họ không có quá MAX_STATE_ENTRY_COUNT mục trong bản đồ, nếu không họ sẽ nhận được IllegalStateException khi tạo hoặc cập nhật StateStore. (Ibadb3)
  • Ẩn các lớp OnLoadTriggerOnConditionMetTrigger, đồng thời đổi tên setTrigger thành setCondition cho OnConditionMetTrigger. (Ibf629)
  • Vì lý do về hiệu suất và khả năng tương thích, các trình kết xuất ProtoLayout sẽ không hỗ trợ toàn bộ các tính năng trong tài nguyên AnimatedVectorDrawable. Chúng tôi sẽ đánh dấu những API đó là thử nghiệm cho đến khi có thể xác định được tập hợp được hỗ trợ. (Ic6daf)
  • Thêm các loại động cho quãng đường hằng ngày, lượng calo hằng ngày và số tầng hằng ngày. Các khoá cho nguồn thông tin về tình trạng của nền tảng hiện nằm trong PlatformHealthSources.Keys (Ib7637)
  • Phương thức Easing.cubicBezier thay thế CubicBezierEasing.Builder. Với cách này, lớp EasingFunction sẽ bị xoá và các hằng số làm chậm từ lớp đó hiện có thể truy cập trực tiếp từ giao diện Easing. Ngoài ra, setInfiniteRepeatable được thay thế bằng INFINITE_REPEATABLE_WITH_RESTARTINFINITE_REPEATABLE_WITH_REVERSE (Ib41e7)
  • Triển khai PlatformDataProvider để cung cấp dữ liệu về nhịp tim và số bước hằng ngày. Giao diện SensorGateway bị xoá khỏi API công khai. (I55b84)
  • Thêm PlatformDataProvider và cập nhật StateStore để đăng ký PlatformDataProvider khi nút yêu cầu khoá được nhà cung cấp hỗ trợ từ quy trình biểu thức. (Ib616a)
  • SensorGateway không còn là Closeable nữa vì không còn duy trì trạng thái nào. (I6b4f7)
  • Cho phép sử dụng FloatProp với DynamicFloat để theo dõi tiến trình trong CircularProgressIndicator. Điều này được hỗ trợ cho những trình kết xuất hỗ trợ phiên bản 1.2. Các trình kết xuất cũ sẽ dự phòng về staticValue nếu được cung cấp, nếu không thì về 0 (I0d91b)
  • Các hằng số MultiButtonLayout đã được tái cấu trúc thành lớp LayoutDefaults.MultiButtonLayoutDefaults. Lớp này hiện chứa các hằng số cho kích thước nút, tuỳ thuộc vào số lượng nút trong bố cục. (I13973)
  • Hỗ trợ việc sử dụng StringProp với DynamicString trong Văn bản Material. Điều này được hỗ trợ cho những trình kết xuất hỗ trợ phiên bản 1.2. Các trình kết xuất cũ sẽ quay lại giá trị tĩnh được cung cấp. Cập nhật loại dữ liệu trả về Text#getText từ String thành StringProp. (I7275b)

Phiên bản 1.0.0-alpha09

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

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

Tính năng mới

  • Chúng tôi đã thêm một phần tử bố cục tiện ích thử nghiệm. Xin lưu ý rằng bạn không thể sử dụng phương thức này theo mặc định và cần có một tiện ích kết xuất có khả năng hiểu được phần tử bố cục. (I6581d)
  • Thêm tính năng hỗ trợ StrokeCap cho ArcLine. (I94951)
  • Thêm tính năng hỗ trợ cho thao tác Tức thì có điều kiện. (I489a7)
  • Thêm tính năng hỗ trợ cho thao tác Thời lượng có điều kiện. (Iab469)
  • Thêm tính năng hỗ trợ tạo khoảng thời gian từ giây. (Ib5fa1)

Thay đổi về API

  • Các phương thức enable/disablePlatformSource đã bị xoá khỏi DynamicTypeEvaluator. Phương thức gọi phải chịu trách nhiệm cập nhật. (I78c6d)
  • Cho phép giới hạn kích thước của các loại dữ liệu được liên kết. (Ie2966)
  • Thêm tính năng hỗ trợ cho nội dung mô tả động trong protolayout-material. (I62c8e)
  • Sử dụng long và @IntRange cho thời lượng và độ trễ trong AnimationParameters. (I388b6)

Phiên bản 1.0.0-alpha08

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

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

Tính năng mới

  • AndroidTextStyle đã được thêm vào LayoutElementBuilders. (I8d967)
  • Chúng tôi đã thêm tính năng hỗ trợ việc đặt khoảng đệm loại trừ phông chữ trong Văn bản Material ProtoLayout. (I17f5d)
  • ARGB_8888 hiện được hỗ trợ cho hình ảnh nội tuyến. (I18c1e)
  • DynamicColor hiện hỗ trợ thao tác onCondition. (I10927)

Thay đổi về API

  • Hỗ trợ thời lượng tuỳ chỉnh cho ảnh động đảo ngược (I3251f)
  • Chúng ta đã thêm đối tượng sửa đổi SemanticDescription. Ngoài ra, ContentDescription không liên kết được. (I3f1d)
  • Phương thức DynamicBool.isFalse() hiện được thay thế bằng DynamicBool.negate()DynamicBool.isTrue() đã bị xoá. Ngoài ra, các giá trị NaN DynamicFloat và việc thu hẹp DynamicInt32 thành DynamicFloat hiện sẽ phát ra một kết quả động không hợp lệ. (I6ac1e)
  • Trình định dạng số nguyên và số thực hiện sử dụng mẫu Trình tạo. (Ieb213)

Sửa lỗi

  • Giá trị tĩnh dự phòng đã bị xoá khỏi các trường có thể tạo hiệu ứng. (Ifcb01)
  • Xoá DynamicTypeValueReceiver#onPreUpdate. (I2dc35)
  • Độ dài của chuỗi trong biểu thức động hiện đã bị giới hạn. (I4c93)
  • Giờ đây, các phần phụ thuộc gradle được đặt chính xác thành api thay vì implementation khi cần. (I40503)

Phiên bản 1.0.0-alpha07

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

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

Tính năng mới

  • Thêm tính năng hỗ trợ giá trị động vào StringProp (I04342)
  • Đánh dấu các phần tử bố cục có thể liên kết (Ia110b)

Thay đổi về API

  • sensorGateway#registerSensorGatewayConsumer lấy loại dữ liệu làm tham số thay vì phương thức trong Consumer. (Icf314)
  • ObservableStateStore đổi tên thành StateStore (Ieb0e2)
  • Đã thêm DynamicTypeEvaluator.Builder thay vì các đối số của hàm dựng để cho phép thêm nhiều đối số không bắt buộc, bao gồm cả ObservableStateStore hiện mặc định là một kho lưu trữ trống. (I6f832)
  • Đã tái cấu trúc thứ tự của các tham số trong DynamicTypeEvaluator. (Ic1ba4)

Sửa lỗi

  • Truyền chính xác các tín hiệu từ nguồn cảm biến nền tảng đến các nút hạ lưu (I5a922)

Phiên bản 1.0.0-alpha06

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

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

Tính năng mới

  • Chúng tôi đã thêm một API thử nghiệm để sử dụng nhịp tim và số bước chân hằng ngày trong các biểu thức động (Ifd711)
  • Chúng tôi đã thêm tính năng hỗ trợ độ trễ đảo ngược và chuyển tiếp cho ảnh động. (Ic25f7)
  • Chúng tôi đã thêm tính năng hỗ trợ DynamicColor cho Đường viền và Nền
  • Chúng tôi đã thêm tính năng hỗ trợ giá trị động cho các loại trong DimensionBuilder
  • Bố cục và các thành phần từ tiles-material sẽ chuyển sang protolayout-material

Thay đổi về API

  • LoadActionListener đã được thêm vào ProtoLayoutViewInstance. (If7806)

Sửa lỗi

  • Thêm FloatNodesTest (Id7281)
  • Khắc phục sự cố trình kết xuất khi không tải được bitmap có cấu trúc.

Phiên bản 1.0.0-alpha05

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

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

Tính năng mới

  • Chúng tôi đã thêm một ảnh động "cập nhật nội dung" thử nghiệm vào đối tượng Modifiers. Ảnh động này sẽ kích hoạt bất cứ khi nào phần tử (có đối tượng sửa đổi này) hoặc một trong các phần tử con của phần tử đó thay đổi trong quá trình cập nhật bố cục. (bd03e5d)

Thay đổi về API

  • Chúng tôi đã thêm forwardRepeatDelayMillisreverseRepeatDelayMillis vào Repeatable. Chúng tôi cũng đã đổi tên delayMillis trong AnimationSpec thành startDelayMillis (Ifb266)
  • Các phương thức DynamicTypeEvaluator.bind hiện chấp nhận một Trình thực thi. (I346ab)
  • Chúng tôi đã thêm phương thức startEvaluation vào BoundDynamicType để kích hoạt quá trình đánh giá sau khi loại động được liên kết. (I19908)

Sửa lỗi

  • Đối tượng Animator sẽ được dùng lại cho các ảnh động tiếp theo của một phần tử. (Ia3be9)

Phiên bản 1.0.0-alpha04

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

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

Tính năng mới

  • Giờ đây, ObservableStateStore cũng sẽ thông báo cho trình nghe khi một khoá bị xoá.
  • Chúng tôi đã thêm phiên bản giản đồ kết xuất đồ hoạ và tỷ lệ phông chữ vào DeviceParameters (có thể dùng để tạo bố cục theo điều kiện nhằm phản hồi nhiều phiên bản và chế độ cài đặt phông chữ).
  • Chúng tôi đã thêm tính năng hỗ trợ tạo ảnh động cho các giá trị DynamicInt32 (I05485)
  • Chúng tôi đã thêm điều kiện kích hoạt OnLoadOnConditionalMet. Bạn có thể dùng chúng để bắt đầu tạo ảnh động hỗ trợ điều kiện kích hoạt.
  • Chúng tôi đã thêm trọng số bố cục cho thứ nguyên mở rộng và kích thước tối thiểu cho thứ nguyên được bao bọc.
  • Chúng tôi đã thêm các loại động thời điểm và khoảng thời gian. Bạn có thể dùng chúng để biểu thị một thời điểm hoặc khoảng thời gian trong một biểu thức động.
  • Chúng tôi đã thêm tính năng hỗ trợ AnimatedVectorDrawableSeekableAnimatedVectorDrawable dưới dạng tài nguyên bố cục.

Các thay đổi về API

  • Dữ liệu cảm biến yêu cầu API 29 trở lên. (I8099e)
  • Chúng tôi đã thêm 2 phương thức trợ giúp launchAction (để chạy Hoạt động).

Sửa lỗi

  • Đổi tên set/getSpec thành set/getAnimationSpec trong ảnh động Thẻ thông tin (I3d74b)

Phiên bản 1.0.0-alpha03

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

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

Tính năng mới

  • Chúng tôi thêm toByteArray()fromByteArray() vào các loại Dynamic trong thư viện protolayout-express.
  • Chúng tôi thêm toString() vào các loại Dynamic trong thư viện protolayout-expression.
  • Chúng tôi thêm tính năng hỗ trợ đánh giá cho các loại Dynamic. Bạn có thể sử dụng lớp DynamicTypeEvaluator từ thư viện protolayout-expression-pipeline để đánh giá (và nhận các giá trị cập nhật) cho một loại Dynamic tạo trước đó (DynamicString, DynamicFloat...)
  • Khi không thể phát ảnh động (do trình đánh giá đã tắt hoặc số ảnh động đang chạy đã đạt đến giới hạn đã đặt), các giá trị tĩnh được đặt trên nút có thể tạo ảnh động sẽ được dùng để thay thế ảnh động.

Phiên bản 1.0.0-alpha02

Ngày 25 tháng 1 năm 2023

Phát hành androidx.wear.protolayout:protolayout:1.0.0-alpha02, androidx.wear.protolayout:protolayout-expression:1.0.0-alpha02androidx.wear.protolayout:protolayout-proto:1.0.0-alpha02. Phiên bản 1.0.0-alpha02 bao gồm các thay đổi sau.

Tính năng mới

  • Các trình xây dựng bố cục từ androidx.wear.tiles:tiles sẽ chuyển sang androidx.wear.protolayout:protolayout. Bản phát hành alpha tiếp theo sẽ không còn dùng các phần tử trong androidx.wear.tiles:tiles nữa.

Phiên bản 1.0.0-alpha01

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

Phát hành androidx.wear.protolayout:protolayout-expression:1.0.0-alpha01androidx.wear.protolayout:protolayout-proto:1.0.0-alpha01. Phiên bản 1.0.0-alpha01 bao gồm các thay đổi sau.

Tính năng mới

  • Bản phát hành này giới thiệu một thư viện mới có tên "Biểu thức ProtoLayout" để tạo biểu thức từ các biến động.