要从 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 音频流示例应用
- 组件示例