TV
| 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 16 tháng 7 năm 2025 | 1.0.1 | - | - | 1.1.0-alpha01 |
Khai báo phần phụ thuộc
Để thêm các phần phụ thuộc trên tv-foundation và tv-material, 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:
Groovy
dependencies { implementation "androidx.tv:tv-foundation:1.0.0-alpha12" implementation "androidx.tv:tv-material:1.1.0-alpha01" }
Kotlin
dependencies { implementation("androidx.tv:tv-foundation:1.0.0-alpha12") implementation("androidx.tv:tv-material:1.1.0-alpha01") }
Để 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.
Xem tài liệu về Công cụ theo dõi lỗi để biết thêm thông tin.
Không có ghi chú phát hành cho cấu phần phần mềm này.
Tv-Material Phiên bản 1.1
Phiên bản 1.1.0-alpha01
Ngày 15 tháng 1 năm 2025
Phát hành androidx.tv:tv-material:1.1.0-alpha01. Phiên bản 1.1.0-alpha01 bao gồm các thay đổi sau.
Thay đổi về API
- Thay đổi
FocusEnterExitScope.cancelFocus()thànhcancelFocusChange()(I89959) FocusProperties.entervàFocusProperties.exitđã được thay thế bằngonEntervàonExit, tương ứng,bằng cách sử dụng phạm vi của receiver thay vì tham sốFocusDirection. (I6e667)
Sửa lỗi
- Di chuyển
CompositingStrategy.OffScreentừ Surface sang Text để khắc phục tình trạng văn bản bị rung khi chia tỷ lệ. (I92b15f17) - Khắc phục lỗi quản lý tiêu điểm trong Băng chuyền (Ie508b721375)
- Surface (không tương tác) có cách triển khai đơn giản hơn so với các Surface tương tác. (I7ea545150)
Tv-Material Phiên bản 1.0
Phiên bản 1.0.1
Ngày 16 tháng 7 năm 2025
Phát hành androidx.tv:tv-material:1.0.1. Phiên bản 1.0.1 bao gồm các thay đổi sau.
Sửa lỗi
- Cập nhật chiều cao của
NavigationDrawerItemđể khớp với thông số kỹ thuật. (cf9a3ce) - Di chuyển cấu hình chiến lược kết hợp từ thành phần kết hợp Surface sang thành phần kết hợp Text. Điều này khắc phục lỗi trong đó Exoplayer không kết xuất trên các thành phần kết hợp Surface ở các phiên bản API Android thấp hơn. (9858ffb)
Phiên bản 1.0.0
Ngày 21 tháng 8 năm 2024
Phát hành androidx.tv:tv-material:1.0.0. Phiên bản 1.0.0 là bản phát hành ổn định đầu tiên của androidx.tv:tv-material.
Phiên bản 1.0.0-rc02
Ngày 7 tháng 8 năm 2024
Phát hành androidx.tv:tv-material:1.0.0-rc02. Phiên bản 1.0.0-rc02 bao gồm các thay đổi sau.
Sửa lỗi
- Đã khắc phục ảnh động văn bản bị giật trong thành phần kết hợp Surface. (3163319)
Phiên bản 1.0.0-rc01
Ngày 10 tháng 7 năm 2024
Phát hành androidx.tv:tv-material:1.0.0-rc01. Phiên bản 1.0.0-rc01 bao gồm các thay đổi sau.
Phiên bản 1.0.0-beta01
Ngày 1 tháng 5 năm 2024
Phát hành androidx.tv:tv-material:1.0.0-beta01. Phiên bản 1.0.0-beta01 bao gồm các thay đổi sau.
Thay đổi về API
ColorSchemevà các hàm tiện ích của nó hiện đã ổn định. (If34fa)LocalContentColorhiện đã ổn định (I60ee2)TypographyAPI hiện đã ổn định (I088d6)- Shapes API hiện đã ổn định (I0f5f4)
- Border API hiện đã ổn định (I69281)
- Glow API hiện đã ổn định (Iea5f1)
- Thành phần Biểu tượng hiện đã ổn định (I62c2d)
LocalTextStylesAPI hiện đã ổn định (Iaded8)MaterialThemeAPI hiện đã ổn định (I2f541)- Thành phần Văn bản hiện đã ổn định (Ib9e31)
- Giờ đây, thành phần
RadioButtonđã ổn định (Ia03c8) - Thành phần công tắc hiện đã ổn định (I6cea3)
- Các thành phần
Checkboxhiện đã ổn định (I7eafc) - Các thành phần Surface hiện đã ổn định (I58758, I04aca)
- Đổi tên
NonInteractiveSurfaceDefaultsthànhSurfaceDefaultsvàNonInteractiveSurfaceColorsthànhSurfaceColors(I0812e) - Selectable Surface hiện sử dụng thuật ngữ "select" (chọn) thay vì "check" (kiểm tra) vì cả hai đều có ý nghĩa ngữ nghĩa khác nhau (I5a206)
NavigationDrawervàNavigationDrawerScopehiện đã ổn định (I249c1)- Thành phần
NavigationDrawerItemhiện đã ổn định (Id6986) - Các thành phần Thẻ và
TabRowhiện đã ổn định (I92d92) - Các thành phần
Button,OutlinedButton,IconButton,OutlinedIconButtonvàWideButtonhiện đã ổn định (Ib4de8) - Các thành phần
Card,ClassicCard,CompactCard,WideClassicCard,StandardCardContainervàWideCardContainerhiện đã ổn định (I34390) - Đổi tên
StandardCardLayoutthànhStandardCardContainervàWideCardLayoutthànhWideCardContainer(I08883) - Xoá
CardContainerDefaults.ImageCardvà đổi tênCardDefaults.ContainerGradientthànhCardDefaults.ScrimBrush(I6adfe). Bạn có thể sử dụngCardthay choCardContainerDefaults.ImageCardtrong các vùng chứa thẻ. ListItemvàDenseListItemhiện đã ổn định (Idebd9)ListItemDefaults.ListItemShape,ListItemDefaults.FocusedDisabledBordervàListItemDefaults.SelectedContainerColorOpacityhiện ở chế độ riêng tư (I5d533)- Sắp xếp lại các tham số của
ListItemvà đổi tênListItemDefaults.ListItemElevationthànhListItemDefaults.TonalElevation(Id6841). Tham sốheadlineContentđã được di chuyển lên đầu thành phần kết hợp. Trước đây, bạn có thể sử dụng cú pháp lambda ở cuối của Kotlin để truyềnheadlineContent. Bây giờ, bạn sẽ phải sử dụng cú pháp tham số được đặt tên để cung cấpheadlineContent. LocalAbsoluteTonalElevationhiện là nội bộ (Ibfc65)- Đã xoá thành phần
ImmersiveList. Hãy xem mẫu này để tìm hiểu cách tự xây dựng. (Id48da) - Các thành phần tv-material có
MutableInteractionSourcetrong API đã được cập nhật để hiện cóMutableInteractionSourcecó thể rỗng và mặc định là rỗng. Không có thay đổi nào về ngữ nghĩa ở đây: truyền giá trị rỗng có nghĩa là bạn không muốn nângMutableInteractionSourcevà giá trị này sẽ được tạo bên trong thành phần nếu cần. Việc thay đổi thành giá trị rỗng cho phép một số thành phần không bao giờ phân bổMutableInteractionSourcevà cho phép các thành phần khác chỉ tạo một thực thể một cách gián tiếp khi cần, điều này giúp cải thiện hiệu suất trên các thành phần này. Nếu không dùngMutableInteractionSourcemà bạn truyền đến các thành phần này, thì bạn nên truyền giá trị rỗng. Bạn cũng nên thực hiện các thay đổi tương tự trong các thành phần của riêng mình. (I309b4, b/298048146) - Tham số
TextAligncủa thành phần Văn bản trên TV hiện không có giá trị rỗng (Ib73b1, b/299490814) - Giới thiệu một giá trị Unspecified đặc biệt cho các trường
TextAlign,TextDirection,HyphensvàLineBreakcủaParagraphTextStyleđể thay thế (I4197e, b/299490814)
Thay đổi về hành vi
- Giá trị mặc định của tham số
shapechoSurfacekhông tương tác đã được thay đổi thànhRectangleShape(I1b859cb) - Một số tính năng băng chuyền đã bị loại bỏ trong lần ra mắt phiên bản beta do các API cần thiết đang ở giai đoạn thử nghiệm (I0e755d4)
- Việc thay đổi
contentColortrongSurfacekhông còn tạo ảnh động giữa các trạng thái (I436e794f)
Phiên bản 1.0.0
Phiên bản 1.0.0-alpha12
Ngày 15 tháng 1 năm 2025
Phát hành androidx.tv:tv-foundation:1.0.0-alpha12. Phiên bản 1.0.0-alpha12 bao gồm các thay đổi sau.
Thay đổi về API
- Dọn dẹp bố cục lười biếng khỏi tv-foundation. Tham khảo ghi chú phát hành 1.0.0-alpha11 để di chuyển khỏi bố cục tải từng phần tv-foundation. (I2fdd3, b/358913893)
Phiên bản 1.0.0-alpha11
Ngày 10 tháng 7 năm 2024
Phát hành androidx.tv:tv-foundation:1.0.0-alpha11. Phiên bản 1.0.0-alpha11 bao gồm các thay đổi sau.
Thay đổi về API
- Tv Lazy Layouts đã ngừng hoạt động trong thư viện tv-foundation. Hãy tham khảo vé này để tìm hiểu cách di chuyển khỏi bố cục lười biếng của TV. (I0855f, b/332674072)
PlatformImeOptionshiện là một lớp cụ thể thay vì một giao diện. (If40a4)
Phiên bản 1.0.0-alpha10
Ngày 4 tháng 10 năm 2023
Phát hành androidx.tv:tv-foundation:1.0.0-alpha10 và androidx.tv:tv-material: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
- Giới thiệu
NavigationDrawerItemđể dùng trongNavigationDrawervàModalNavigationDrawer. (I4b491) - Thêm hồ sơ cơ sở vào thư viện tv-foundation. (2b57fd7)
- Thêm hồ sơ cơ sở vào thư viện tv-material. (1711ff5)
Thay đổi về API
- Đổi tên
NavigationDrawerScope.doesTabRowHaveFocusthànhNavigationDrawerScope.hasFocus. (I8286b) - Đổi tên
TabRowScope.isActivatedthànhTabRowScope.hasFocus. (Ic4273)
Sửa lỗi
- Khắc phục khả năng tương thích của Carousel với các mục liền kề sử dụng API khôi phục tiêu điểm. (7b2a7a4)
- Tắt chỉ báo phát sáng cho API_LEVEL dưới 28 vì hệ điều hành không hỗ trợ chỉ báo này. (6d3616f)
- Khắc phục sự cố ANR do vị trí mục không phù hợp trong các vùng chứa lười biếng khi cuộn nhanh theo hướng ngược lại. (642d65c)
- Xoá khoảng đệm nền trong Ngăn điều hướng phương thức. (69965b2)
- Cố định Scrim trong Ngăn điều hướng để được vẽ phía trên nội dung nền thay vì phía sau nội dung đó. (d4bbefb)
Phiên bản 1.0.0-alpha09
Ngày 6 tháng 9 năm 2023
Phát hành androidx.tv:tv-foundation:1.0.0-alpha09 và androidx.tv:tv-material:1.0.0-alpha09. Phiên bản 1.0.0-alpha09 bao gồm các thay đổi sau.
Các thay đổi về API
- Thêm giao diện
ReusableCompositionđể quản lý vòng đời và sử dụng lại các lần kết hợp phụ. (I812d1, b/252846775) - Đồng bộ hoá nhánh phát triển tv-foundation với compose-foundation. (I737c3, b/287011882)
- Thêm hàm quá tải của
LazyLayout, hàm này chấp nhận lambda củaLazyLayoutItemProvider, chứ không phải đối tượng đơn giản như trước đây. Hàm quá tải trước đây không còn được dùng nữa. (I42a5a) - Thêm
TvKeyboardAlignmentđể cho phép nhà phát triển định cấu hình vị trí bàn phím ảo thông quaAndroidImeOptions. (Idb772) - Thêm
rememberCarouselStateđể ghi nhớCarouselStatecóSavervào TV Material trong Compose. (Id7275) - Thay đổi tham số
scrimColor: Colorthành tham sốscrimBrush:Brushđể cho phép người dùng thêm các màu gradient vào tập lệnh. (I254d4)
Phiên bản 1.0.0-alpha08
Ngày 26 tháng 7 năm 2023
Phát hành androidx.tv:tv-foundation:1.0.0-alpha08 và androidx.tv:tv-material: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
- Ra mắt các thành phần Khối cho Compose Material cho TV. (I86da4)
- Thêm thành phần
ListItemcho Compose Material cho TV. (I3f0b3) - Thêm thành phần
DenseListItemcho Compose Material cho TV. (I536bf)
Các thay đổi về API
- Đánh dấu các API TV-Material công khai là Thử nghiệm. (I632e7)
- Ra mắt
TabRowScopeđể chia sẻ trạng thái từ thành phần kết hợpTabRowvới thành phần kết hợp Thẻ và thuộc tínhTabColors. (Ief587)
Phiên bản 1.0.0-alpha07
Ngày 7 tháng 6 năm 2023
Phát hành androidx.tv:tv-foundation:1.0.0-alpha07 và androidx.tv:tv-material:1.0.0-alpha07. Phiên bản 1.0.0-alpha07 bao gồm các thay đổi sau.
Các thay đổi về API
- Trong số chỉ báo tỷ lệ của các thành phần hiện đã có None (Không có) để vô hiệu hoá việc điều chỉnh theo tỷ lệ. (I50df5)
- Thêm tính năng hỗ trợ lượt nhấp kéo dài cho Bề mặt, Thẻ, và Nút của TV Material. (Id2b89)
CarouselItemvàCarouselScopeđã bị xoá. Ảnh động nội dung nền trước có thể được sử dụng trong trang trình bày bằng cách sử dụngModifier.animateEnterExittừAnimatedContentScope. (Ic038e)- Hợp nhất tham số
colorvàcontentColortrở thànhcolorscho Bề mặt TV Material. (Ie69eb) - Ra mắt thành phần kết hợp
RadioButtontrong TV Material. (I08690) - Ra mắt thành phần kết hợp
Switchtrong TV Material. (I45e29) - Ra mắt thành phần kết hợp
Checkboxtrong TV Material. (I6a45a) - Ra mắt Bề mặt không tương tác trong TV Material. (Ic5f85)
- Điều chỉnh các chỉ báo thành nội bộ. (Ibff82)
Phiên bản 1.0.0-alpha06
Ngày 19 tháng 4 năm 2023
Phát hành androidx.tv:tv-foundation:1.0.0-alpha06 và androidx.tv:tv-material: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
- Thêm phương thức triển khai Thẻ Material 3 được tối ưu hoá cho TV.
- Thêm phương thức triển khai Nút Material 3 được tối ưu hoá cho TV.
Các thay đổi về API
- Đổi tên
CarouselSlidevàslideCounttrongCarouselthànhCarouselItemvàitemCount. (Ie554c) - Đổi tên
forwardvàbackwardContentTransformsthànhStartToEndvàEndToStart. (Ie554c)
Sửa lỗi
- Xử lý nút Quay lại trên Bàn phím định hướng khi lấy tiêu điểm
NavigationDrawer. (d654f4)
Phiên bản 1.0.0-alpha05
Ngày 22 tháng 3 năm 2023
Phát hành androidx.tv:tv-foundation:1.0.0-alpha05 và androidx.tv:tv-material:1.0.0-alpha05. Phiên bản 1.0.0-alpha05 bao gồm các thay đổi sau.
Các thay đổi về API
- Ra mắt thành phần kết hợp Ngăn điều hướng bên ở trong
tv-material. Để tìm hiểu cách sử dụng thành phần kết hợp này, vui lòng tham khảo mẫu. (I12c08) - Ra mắt thành phần kết hợp Biểu tượng trong TV Material 3 (I72db9)
- Ra mắt thành phần kết hợp Bề mặt cho
tv-materialvới các chỉ báo như Đường viền, Độ sáng và Tỷ lệ, có thể được sử dụng để xây dựng các thành phần làm nổi bật rõ ràng phần tử được lấy tiêu điểm trên màn hình TV. (I4a6d8), (Iceea1), (Iee4d4), (I79edf), (Icb376) - Cập nhật
CarouselItemthànhCarouselSlideđể phù hợp với tên tham sốslideCounttrong API "Băng chuyền" (Ic4299)
Phiên bản 1.0.0-alpha04
Ngày 8 tháng 2 năm 2023
Phát hành androidx.tv:tv-foundation:1.0.0-alpha04 và androidx.tv:tv-material: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
- Trong các hàng, cột và lưới tải từng phần, pivot sẽ bị ghi đè (nếu cần) để đảm bảo toàn bộ mục được đưa vào khung hiển thị. (11d7e40)
- Thêm chế độ tuỳ chỉnh màu thẻ ở các trạng thái khác nhau. (21b2925)
- Băng chuyền hiện chấp nhận ảnh động tuỳ chỉnh để cuộn tiến và lùi theo cách thủ công. (431494a)
Các thay đổi về API
- Đổi tên
androidx.tv.materialthànhandroidx.tv.material3và làm phẳng cấu trúc gói trongandroidx.tv.material3. (I6ca52) - Chỉ báo trong hàng Chỉ báo băng chuyền hiện là một vùng có thể được nhà phát triển tuỳ chỉnh. (268af2a)
- Đổi tên
focusableItemthànhimmersiveListItem. Người dùng sẽ phải thêm đối tượng sửa đổifocusable()hoặcclickable()theo cách thủ công cùng vớiimmersiveListItem(5dd5078)(b/263061052) - Đổi tên
timeToDisplayMillisthànhautoScrollDurationMillistrong thành phần của Băng chuyền. (431494a) CarouselItemđang bị hạn chế sử dụng trongCarousel. (431494a)- Băng chuyền hiện chấp nhận
ContentTransformslàm định nghĩa ảnh động thay vìEnterTransitionvàExitTransitions. (431494a) - Giới thiệu API
PinnableContainerđược phân phát theo danh sách tải từng phần thông qua một thành phần cục bộ cho phép ghim mục hiện tại. (Ib8881, b/259274257, b/195049010) - Thêm thuộc tính
mainAxisItemSpacingvàoTvLazyListLayoutInfovàTvLazyGridLayoutInfo(I37765)
Sửa lỗi
- Cập nhật hàng thẻ nhằm đảm bảo hàng này xử lý chính xác số thẻ là 0 hoặc 1. (I44009), (1c01525), (b/264018028)
- Khắc phục sự cố tìm kiếm theo tâm điểm khi
TvLazyColumnchứaTvLazyRowrỗng. (e11b4fe), (b/260299091) - Đối tượng sửa đổi
clickablehiện tương thích vớiImmersiveList. (5dd5078), (b/263061052) - Phím Quay lại hiện được xử lý và dùng để thoát khỏi Băng chuyền nổi bật. (84c138c)
- Băng chuyền không làm mất tâm điểm trên nhiều lần nhấn phím nhanh. (799489f)
- Băng chuyền không làm mất tâm điểm trên lần nhấn giữ phím. (b2cf37e)
- Giải quyết các sự cố khi thay đổi số lượng trang trình bày trong băng chuyền. (b261247)
Phiên bản 1.0.0-alpha03
Ngày 7 tháng 12 năm 2022
Phát hành androidx.tv:tv-foundation:1.0.0-alpha03 và androidx.tv:tv-material: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
TabRowhiện được cung cấp dưới dạng một API thử nghiệm cho phép người dùng thêm các thanh điều hướng trên cùng vào ứng dụng của họ. Nhìn chung, các thiết bị TV yêu cầu tải thẻ khi tiêu đề thẻ được lấy tiêu điểm trong hàng thẻ.- Chỉ báo cụ thể cho TV như chỉ báo gạch chân và chỉ báo hình bầu dục được cung cấp sẵn. Bạn có thể xem cách sử dụng mẫu trong tv-samples
Phiên bản 1.0.0-alpha02
Ngày 9 tháng 11 năm 2022
Phát hành androidx.tv:tv-foundation:1.0.0-alpha02 và androidx.tv:tv-material:1.0.0-alpha02. Phiên bản 1.0.0-alpha02 bao gồm các thay đổi sau.
Sửa lỗi
- Cải thiện hiệu suất cuộn khi cuộn qua một tập hợp
TvLazyRows/TvLazyColumnsbằng cách giảm không gian tìm kiếm tâm điểm. (I723a3)
Phiên bản 1.0.0-alpha01
Ngày 5 tháng 10 năm 2022
Phát hành androidx.tv:tv-foundation:1.0.0-alpha01 và androidx.tv:tv-material: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
Phiên bản alpha đầu tiên bao gồm những phương thức triển khai xem trước sớm cho các thành phần trong trường hợp sử dụng của TV, bao gồm:
- Thêm đối tượng sửa đổi
scrollableWithPivotđể cho phép các vùng chứa cuộn không tải từng phần như Hàng, Cột, Lưới có vùng chứa cuộn cuộn nội dung sao cho các mục là tâm điểm ở cùng một vị trí trên màn hình TV. - Thêm các thành phần kết hợp
TvLazyRow,TvLazyColumn,TvLazyHorizontalGrid,TvLazyVerticalGridđể vùng chứa cuộn di chuyển nội dung sao cho các mục là tâm điểm vẫn ở cùng một vị trí trên màn hình TV. - Thêm thành phần kết hợp Băng chuyền nổi bật (Featured Carousel) cho TV, cho phép người dùng tạo băng chuyền biểu ngữ cuộn tự động.
- Thêm thành phần kết hợp Danh sách sống động (Immersive List) cho TV, cho phép người dùng tạo Hàng/Cột/Lưới sống động để thay đổi nền dựa trên các mục trong danh sách là tâm điểm.
Vấn đề đã biết
- Khi vùng chứa cuộn trở thành tâm điểm, theo mặc định, phần tử đầu tiên thường không được làm tâm điểm.
- Tâm điểm tại
TextFieldkhông phải lúc nào cũng mở bàn phím nhập hoặc có thể ngăn tâm điểm di chuyển đến các trường khác. - Thao tác cuộn theo chiều dọc kém hiệu quả trong
LazyColumnchứaLazyRows.