要从 Leanback UI 工具包迁移到 Compose for Android TV,请按照以下步骤操作
评估您当前的 Leanback 实现,通过识别您正在使用的组件(包括预制 fragment 中提供的组件),并了解您的 UI 结构以及数据如何在您的应用中流动。
将您的电视应用中的单个屏幕迁移到 Compose,这样您就可以逐步学习和适应 Compose。
虽然您可以在同一个应用中同时使用 Leanback 和 Compose 以实现渐进式迁移过程,但请首先一次性替换整个 fragment,目标是将您的电视应用转换为单个 Activity。
从小处着手。不要试图一次性迁移所有内容。从设置或帐号屏幕等较小的组件开始,然后逐步处理整个应用。
请参阅资源部分列出的文档和示例。
利用 Compose for TV 的专用组件,方法是使用Jetpack 库。请查阅我们的设计指南,了解如何自定义和扩展现成的可组合项以构建精美的电视界面。
调整您的数据和状态管理以支持 Compose 的声明式编程范式。这种调整可能需要更改您在应用中管理数据和状态的方式。在应用中使用
ViewModel
和 Jetpack Compose 内部状态管理机制来管理数据和状态。测试和迭代,随着您迁移应用中更复杂的部分。
如果您遇到任何 bug,请与活跃的 Android 开发者社区在 Stack Overflow 上互动,或者通过我们的公共 bug 跟踪器提交 bug。
资源
无论您是 Compose 的新手,还是已经处于迁移到 Compose 的过程中,我们的大量资源都将帮助您学习使用现代 Android 开发工具包 Jetpack Compose 构建电视界面的最佳实践。
- Compose for TV 集成指南
- 电视设计指南
- Compose for TV 简介 Codelab
- 库版本说明
- JetStream 视频流示例应用
- JetCaster 音频流示例应用
- 组件示例