Leanback UI ツールキットから Android TV 向け Compose に移行する手順は次のとおりです。
使用しているコンポーネント(事前作成されたフラグメント内にあるコンポーネントを含む)を特定し、UI の構造とアプリ内のデータフローを理解して、現在の Leanback 実装を評価します。
TV アプリの個々の画面を Compose に移行して、Compose を段階的に学習し、適応できます。
同じアプリ内で Leanback と Compose の両方を使用して、段階的な移行プロセスを可能にできますが、最初はフラグメント全体を一度に置き換えて、テレビ アプリケーションを 1 つのアクティビティに変換することを目標にします。
小規模で始める。すべてを一度に移行しようとしないでください。設定画面やアカウント画面などの小さなコンポーネントから始めて、徐々にアプリ全体に適用します。
リソース セクションに記載されているリソースのドキュメントと例を参照してください。
Jetpack ライブラリを使用して、Compose for TV の専用コンポーネントを活用します。デザイン ガイドで、すぐに使用できるコンポーザブルをカスタマイズして拡張し、美しいテレビ UI を構築する方法をご確認ください。
Compose の宣言型プログラミング パラダイムをサポートするようにデータと状態の管理を適応します。適応には、アプリ内のデータと状態の管理方法の変更が必要になる場合があります。
ViewModel
と Jetpack Compose の内部状態管理メカニズムを使用して、アプリ内のデータと状態を管理します。アプリの複雑な部分を移行する際は、テストと反復処理を行います。
発生したバグについては、Stack Overflow の Android デベロッパー コミュニティで他のデベロッパーと交流するか、公開バグトラッカーからバグを送信してください。
リソース
Compose を初めて使用する方や、Compose への移行を検討している方のために、最新の Android 開発ツールキットである Jetpack Compose を使用してテレビ UI を構築するためのおすすめの方法を学べるリソースを多数用意しています。
- Compose for TV 統合ガイド
- テレビの設計ガイド
- Compose for TV の概要 Codelab
- ライブラリ リリースノート
- JetStream 動画ストリーミング サンプルアプリ
- JetCaster 音声ストリーミング サンプルアプリ
- コンポーネントのサンプル