API & LibraryUI/UX

Leanback ile Android TV Uygulama

Mobil uygulamaların kullanım ortamları telefonla sınırlı değildir. Televizyon, saat vb. ortamlarda mobil yazılım teknolojini kullanarak hayatımızı kolaylaştıran ve eğlenceli hale getiren uygulamaları oluşturabiliriz.

Bu makalemde, Leanback kütüphanesi ile filmlerin listelendiği bir Android TV uygulamasının nasıl oluşturacağımızı anlatacağım.

Şimdi örneğimizin çıktısına bakalım.

 

Android TV, Android sistemini içerir. TV uygulamalarının kod yapısı, telefon ve tablet uygulamaları ile aynıdır. Fakat geliştirme ve uygulamayı Google Play’e yükleme aşamalarında bazı ayarların yapılması gerekmektedir. Makalede bunlardan da bahsedeceğim.

Leanback Kütüphanesini Neden Kullanmalıyım?

Televizyonlar için oluşturulan yazılımların kullanıcı arayüzlerinde dikkat edilmesi gereken iki önemli nokta vardır:

  • Uzaktan kumanda kullanarak TV kullanıcı arayüzünde gezinirsiniz. Bu durum uygulamanızın D-pad girişini desteklemesi gerektiği anlamına gelir.
  • TV ekranı büyüktür ve genellikle uzaktan izlenir.

Leanback kütüphanesi, bu iki durumu göz önünde bulundurarak kullanıcı arayüzünü oluşturmayı kolaylaştırmaktadır. Yazılımcılar için bu durum büyük bir avantajdır.

Android TV Emülatör Kurulumu

Uygulamanızı bilgisayarınızda test etmek istiyorsanız Android TV Emülatörü kurmamız gerekmektedir. Android studio da kurmamız gereken Android TV Intel x86 Atom System Image ve emülatörün kurulumunu videoyu izleyerek öğrenebilirsiniz.

Uygulamanın çalıştırma ortamını da hazırladığımıza göre projeyi oluşturma adımlarına başlayabiliriz.

1-Projede Bazı Ayarlar

Projemin app dizinin altındaki build.gradle dosyasını açıyoruz. Dependencies kod bloklarının arasına aşağıdaki kodu yerleştirerek Leanback kütüphanesini yüklüyoruz.

TV cihazlarında çalışması amaçlanan uygulamalar, dokunmatik ekranlara ihtiyaç duymaz. Bu yüzden TV uygulamanızda android.hardware.touchscreen özelliğine ihtiyaç olmadığını belirtmeniz gerekir. Bu ayar, uygulamanızın Google Play‘de bir TV uygulaması olarak kabul edilmesi içinde gereklidir.

AndroidManifest.xml dosyanızda application tag dışına aşağıdaki kodu yerleştirmelisiniz.

2-Kodlama

Leanback kütüphanesi kullanıcı arayüz konusunu kolaylaştırmak adına televizyonlar için bazı tasarım şablonlarını hazırladı. Bu tasarımları da Java/Kotlin tarafında oluşturmamızı sağlamaktadır. Bu yüzden tasarımı Leanback kütüphanesinin içindeki sınıflardan faydalanarak oluşturacağız. Bu sınıflar;

  • BrowseSupportFragment; minimum kodla kategoriler ve medyaların (video, resim vb) UI elementleriyle özelleştirilerek gösterilmesini sağlar
  • DetailsSupportFragment ; öğelerle ilgili detayların gösterileceği sayfa yapısının oluşumunu sağlar.
  • PlaybackSupportFragment; video player içeren bir ekran oluşturmak istediğinizde kullanılır.

Ben oluşturduğum örnek de BrowseSupportFragment sınıfını kullandım. İlk önce bu sınıf yapısını kullanarak kategorileri ve film isimlerinin listelendiği yani işin büyük kısmını oluşturacağım.

Projenizde ilk açılış sayfası olarak kullandığınız Activity sınıfınızda tanımlanmış olan xml dosyanızı açıp aşağıdaki kodu yerleştirmeniz yeterlidir.

Bu xml’de sadece BrowseFragment sınıfını fragment arayüz elementinin içinde çağırdık.

Kendimizi fazla yormadan Android Tv uygulalamamızıda oluşturmuş olduk.

Dilerseniz projenin tüm dosya ve kodlarına github linkinden ulaşabilirsiniz.

Bülten
Bültene abone ol

Bültene abone olarak yeni makalelerimden haberdar olun.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir