Android TV'de Jetpack Compose'u kullanma

TV için oluşturma, Android TV kullanıcı arayüzleri oluşturmaya yönelik modern bir yaklaşımdır. TV için Compose, Android'in TV uygulamalarınız için Jetpack Compose'un tüm avantajlarından yararlanmanıza olanak tanır. Böylece, uygulamanız için güzel ve işlevsel kullanıcı arayüzleri oluşturmak çok daha kolay hale gelir.

TV için Compose'u kullanmanın bazı avantajları şunlardır:

  • Esneklik: Compose, basit düzenlerden karmaşık animasyonlara kadar her tür kullanıcı arayüzü oluşturmak için kullanılabilir. Bileşenler kullanıma hazır olarak gelir ancak uygulamanızın ihtiyaçlarına uyacak şekilde özelleştirilebilir ve biçimlendirilebilir.
  • Basitleştirilmiş ve Hızlandırılmış Geliştirme: Compose, mevcut kodla uyumludur ve geliştiricilerin daha az kod kullanarak daha verimli bir şekilde uygulama oluşturmasını sağlar.
  • Sezgisel: Oluşturma, kullanıcı arayüzünüzde değişiklik yapmanıza, hata ayıklamanıza, kodunuzu anlamanıza ve incelemenize olanak tanıyan açıklayıcı bir söz dizimi kullanır.

Jetpack Compose araç setini kullanma konusunda bilginiz yoksa Compose yol haritasına göz atın. Mobil Compose için geçerli olan geliştirme ilkelerinin çoğu TV için de geçerlidir. Açıklayıcı kullanıcı arayüzü çerçevesinin genel avantajları hakkında daha fazla bilgi için Why Compose başlıklı makaleyi inceleyin. Daha fazla bilgi için GitHub'daki Compose for TV örnekleri deposuna da göz atın.

Android TV desteğini nasıl ekleyeceğinizi öğrenin

Bu istemde, Leanback yerine TV için Jetpack Compose'u kullanarak uygulamanıza Android TV desteği ekleme konusunda yardım istenir.

How do I add support for Android TV to my application?

Use Jetpack Compose for TV as part of the response instead of Leanback.

Yapay zeka istemlerini kullanma

Yapay zeka istemleri, Android Studio'daki Gemini'de (en yeni Canary sürümü gereklidir) kullanılmak üzere tasarlanmıştır.

Studio'da Gemini hakkında daha fazla bilgi edinmek için: https://developer.android.com/studio/preview/gemini

Uyumluluk

TV için Oluştur, Android 5.0 (API düzeyi 21) veya sonraki sürümlere sahip Android TV'lerde çalışır. TV için Compose 1.0 sürümünü kullanmak için androidx.compose kitaplıklarının 1.3.0 sürümünün ve Kotlin 1.7.10'un yüklü olması gerekir.

Kurulum

Android TV'de Jetpack Compose'i kullanmak, diğer Android projelerinde Jetpack Compose'i kullanmaya benzer. En önemli fark, TV için Oluştur'un TV'ye optimize edilmiş bileşenler sunan ve TV'ye özel kullanıcı arayüzleri oluşturmayı kolaylaştıran kitaplıklar eklemesidir. Bazı durumlarda bu bileşenler, TV dışındaki muadilleriyle aynı ada sahiptir (ör. androidx.tv.material3.Button ve androidx.compose.material3.Button).

Jetpack Compose araç seti bağımlılıkları

TV için Compose'u kullanmak istiyorsanız Jetpack Compose araç seti bağımlılıklarını uygulamanızın build.gradle dosyasına aşağıdaki gibi ekleyin:

Kotlin

dependencies {
   val composeBom = platform("androidx.compose:compose-bom:2024.12.01")
   implementation(composeBom)

   // General compose dependencies.
   implementation("androidx.activity:activity-compose:1.9.2")

   implementation("androidx.compose.ui:ui-tooling-preview")
   debugImplementation("androidx.compose.ui:ui-tooling")

   // Compose for TV dependencies.
   implementation("androidx.tv:tv-material:1.0.0")
}

Groovy

dependencies {
   def composeBom = platform('androidx.compose:compose-bom:2024.12.01')
   implementation composeBom

   // General compose dependencies.
   implementation 'androidx.activity:activity-compose:1.9.2'

   implementation 'androidx.compose.ui:ui-tooling-preview'
   debugImplementation 'androidx.compose.ui:ui-tooling'

   // Compose for TV dependencies.
   implementation 'androidx.tv:tv-material:1.0.0'
}

Farklılıklar

TV materyal bileşenleri, net odak göstergeleri ve uzaktan kumanda dostu giriş davranışı ile oturma odası için tasarlanmıştır. Bu bileşenlerin nasıl kullanılacağıyla ilgili ayrıntılar için TV kullanıcı arayüzü tasarım kılavuzlarına göz atın.

Şekil 1. TV materyal kitaplığındaki örnek bileşenler.

Bu özelliklerden yararlanmak için mümkün olduğunda API'lerin TV sürümünü kullanın.

Mesaj Yazma Materyali'nin mobil sürümünü kullanmak teknik olarak mümkün olsa da bu sürüm, Android TV'deki benzersiz etkileşim tarzı için optimize edilmemiştir. Ayrıca, TV için Oluştur'daki Oluştur Malzemesi ile Oluştur Malzemesi'ni karıştırmak beklenmedik davranışlara neden olabilir. Örneğin, her kitaplığın kendi MaterialTheme nesnesi olduğundan, her iki sürüm de kullanılıyorsa renklerin, yazı tiplerinin veya şekillerin tutarsız olması olasıdır.

Aşağıdaki tabloda TV ile mobil cihazlar arasındaki bağımlılık farklılıkları özetlenmiştir:

TV Bağımlılığı
(androidx.tv.*)
Karşılaştırma Mobil Bağımlılık
(androidx.compose.*)
androidx.tv:tv-material yerine androidx.compose.material3:material3

Ek kaynaklar

  • TV tasarım kılavuzları
    İlgili geliştirici kaynaklarına bağlantılar içeren, kullanıcı arayüzleri oluşturmaya yönelik özel TV bileşenlerine genel bakış.

  • TV için Materyal Katalog örneği
    TV için Compose'u kullanarak Materyal Tasarım ilkelerinin nasıl uygulanacağını gösteren bir katalog uygulaması.

  • JetStream örneği
    TV Compose'in tipik bir Material uygulaması ve gerçek mimari ile kullanımını gösteren bir medya akış uygulaması.

  • TV için Compose'a giriş
    Bu codelab'de, katalog tarayıcısı ekranı ve ayrıntılar ekranı içeren bir video oynatıcı uygulaması oluşturma adımları açıklanmaktadır.

Daha fazla bilgi

Aşağıdakiler için TV'ye optimize edilmiş mükemmel deneyimler oluşturma hakkında bilgi edinmek üzere bu kılavuzları inceleyin: