Medya uygulamanızı Android TV'ye genişletin

Android, yüksek çözünürlüklü televizyonlar gibi büyük ekranlı cihazlarda çalışan uygulamalar için optimize edilmiş zengin bir kullanıcı deneyimi sunar. Uygulamanızı Android TV için geliştirerek kitlesini genişletebilirsiniz. Bu belgede, verilerin etkili bir şekilde nasıl yapılacağına dair yol gösterici bilgiler sağlanmaktadır.

TV uygulamaları oluşturma

TV uygulamaları, telefonlar ve tabletler için olanlarla aynı yapıyı kullanır. Bu yaklaşım, Android için uygulama geliştirme hakkında zaten bildiklerinize dayanarak yeni TV uygulamaları oluşturabileceğiniz veya mevcut uygulamalarınızı TV cihazlarında da çalışacak şekilde genişletebileceğiniz anlamına gelir.

Ancak TV için kullanıcı etkileşimi modeli, telefon ve tablet cihazlardan önemli ölçüde farklıdır. Uygulamanızın TV cihazlarında başarılı olmasını sağlamak için 3 metre uzaktan kolayca anlaşılabilen yeni düzenler tasarlamanız ve sadece yön tuşları ve seçme düğmesiyle çalışan bir gezinme sağlamanız gerekir.

TV donanım denetleyicilerini kullanma, TV düzenleri oluşturma ve TV'de gezinme oluşturma gibi hususlar hakkında daha fazla bilgi için TV uygulamaları oluşturma bölümüne bakın.

Media3 ExoPlayer'ı kullan

Jetpack Media3, parça bilgilerini oynatma, duraklatma, arama ve görüntüleme gibi temel özellikleri tanımlayan bir Oynatıcı arayüzü sunar. ExoPlayer, bu arayüzün Media3'teki varsayılan uygulamasıdır.

Android'in MediaPlayer API'siyle karşılaştırıldığında birden fazla akış protokolü, varsayılan ses ve video oluşturucuları ve medya arabelleğe alma işlemini yapan bileşenler gibi ek kolaylıklar sağlar.

ExoPlayer'ı özelleştirebilir ve genişletebilirsiniz. Ayrıca, Play Store uygulama güncellemeleri aracılığıyla güncellenebilir. Daha fazla bilgi için Media3 ExoPlayer konusuna bakın.

Media3 kullan MediaSession

Medya oturumları, sistemin uygulamanızın ses veya video oynatıcısıyla etkileşim kurması için evrensel bir yol sağlar. Media3'ü önceki medya API'lerinden ayıran temel özelliklerden biri, artık bileşenler arasında bağlayıcılara gerek olmamasıdır.

Yeni MediaSession sınıfı, Oynatıcı arayüzünü uygulayan tüm sınıfları alır. Hem ExoPlayer hem de MediaController, bu arayüzü uygulayan sınıflardır. Bu, bileşenler arasında çok daha basit bir etkileşim sağlar. Daha fazla bilgi için Oynatıcı arayüzü konusuna bakın.

Medya oynatma uygulaması oluşturma hakkında daha fazla bilgi için ExoPlayer'ı kullanarak temel medya oynatıcı oluşturma konusuna bakın.

Medya uygulamanızın son kullanıcılarına en iyi deneyimi sunmak için MediaSession kullanılmalıdır. Bunu yapmak için bir Player başlatın ve MediaSession.Builder işlevine şu şekilde sağlayın:

Kotlin

val player = ExoPlayer.Builder(context).build()
val mediaSession = MediaSession.Builder(context, player).build()

Java

ExoPlayer player = new ExoPlayer.Builder(context).build();
MediaSession mediaSession = new MediaSession.Builder(context, player).build();

Otomatik durum işleme

Media3 kitaplığı, oynatıcının durumunu kullanarak medya oturumunu otomatik olarak günceller. Bu nedenle, oyuncudan oturuma eşlemeyi manuel olarak gerçekleştirmeniz gerekmez. Bu, kullanıcılarınızın Ne Çalıyor? kartı da dahil olmak üzere oynatılan medyayla ilgili her zaman güncel bilgileri görmelerine yardımcı olur.

Oynatmayı kontrol etme ve reklam oynatma

Media3'te varsayılan oynatıcı, Oynatıcı arayüzünü uygulayan ExoPlayer sınıfıdır. Medya oturumunu oynatıcıya bağlamak, uygulamanın medya oynatma işlemini harici olarak tanıtmasına ve harici kaynaklardan oynatma komutları almasına olanak tanır. Medya oturumu, bu komutları medya uygulamasının oynatıcısına yetkilendirir.

Medya oturumu, oynatmayı kontrol etmek için çok önemlidir. Harici kaynaklardan gelen komutları, medyanızı oynatma işini yapan oynatıcıya yönlendirmenize olanak tanır. Harici istemciler, medya uygulamanıza oynatma komutları yayınlamak için bir medya denetleyicisi kullanabilir. Bunlar, medya oturumunuz tarafından alınır ve son olarak komutlar için medya oynatıcıya yetki verir.

Oynatma komutu davranışının nasıl özelleştirileceği gibi oynatma hakkında daha fazla bilgi için MediaSession kullanarak oynatmayı kontrol etme ve reklam yayınlama bölümüne bakın.

Uygulamanızda kesinti yaşamayın

MediaSession hizmetini kullandığınızda aşağıdakiler gibi gereksiz kesintilerin önüne geçebilirsiniz:

  • TV kapatılırken veya TV girişleri değiştirilirken beklenmeyen ve devam eden oynatma. Bu durum ayrıca TV donanımı için enerji tüketimine de neden olur. MediaSession ile uygulamanız medya içeriği oynattığını platforma bildirebilir ve platform da uygulamaya oynatmanın durabileceği konusunda bilgi verebilir.

  • Uygulamadan çıkılırken veya TV ekranı kapatılırken müzik çalma beklenmedik şekilde duruyor. MediaSession API'lerinin kullanılması, arka planda oynatmanın devam etmesini sağlar.

  • Kullanıcıların oynatmayı kontrol etmesini engelleyen içerikle kısıtlı etkileşim. Örneğin, arka planda müzik çalarken uygulamanıza dönme veya sesli komutları destekleme. Uygulamanızda MediaSession ile kullanıcılar, şarkılar veya bölümler aramak ve atlamak için sesli komutları kullanabilir.

Diğer Noktalar

Medya uygulamanızı TV için Android'e genişletirken erişilebilirlik sorunlarını, etkileşimi nasıl artıracağınızı, kullanıcıların içerik bulmasını nasıl sağlayacağınızı, oyun ve TV giriş hizmetlerini nasıl oluşturacağınızı göz önünde bulundurmanız gerekir.

TV'de erişilebilirlik

Yardımcı teknolojiler az gören kullanıcılara yardımcı olabilir ve yardımcı olabilir, ancak TV uygulamaları için içerik keşif yolculuklarında erişilebilirliği desteklemek önemlidir.

Örneğin, gezinme rehberliği ve doğru etiketleme öğelerini sağlamaya daha fazla dikkat edin ve TV uygulamalarının TalkBack gibi erişilebilirlik özellikleriyle düzgün bir şekilde çalıştığından emin olun. Bu adımlar, görme bozukluğu olan kullanıcıların deneyimini önemli ölçüde iyileştirebilir.

Erişilebilirliği iyileştirmenin ilk adımı farkındalıktır. Metin ölçeklendirme, klavye düzenleri ve sesli açıklamalar hakkında daha fazla bilgi için erişilebilirlik kaynaklarına bakın.

Google TV'de etkileşimi artırmak için en iyi uygulamalar

Android TV için geliştirilen tüm uygulamalar Google TV çalıştıran cihazlarda çalışır. Google TV'de en iyi kullanıcı deneyimini sağlamak için aşağıdaki en iyi uygulamaları uygulamanızı öneririz.

Bir ses veya video oynatıcı ile etkileşim için evrensel bir yol sağlamak amacıyla MediaSession uygulamasını kullanmanız gerekir. Bunun nasıl uygulanacağı hakkında daha fazla bilgi için Media3 MediaSession kullanma konusuna bakın.

Temel olarak, uygulamanızın Google Cast'i desteklemesi gerekir. Bu özellik, Android, iOS ve Chrome uygulamalarınızı genişleterek ses ve video akışını Android TV'lerin yanı sıra Chromecast ve Asistan cihazlarında da yapabilmenizi sağlar. Daha fazla bilgi için Google Cast belgelerine bakın.

Ayrıca kullanıcılara şu konularda da yardımcı olabilirsiniz:

  • Medya işlemleri feed'i sunarak veya Sonrakini İzle'yi entegre ederek farklı platformlarda içerik keşfedin.

  • Hesap bağlama ve yararlanma hakkı senkronizasyonunu destekleyerek, sesle yayınlama imkanı sunarak ve Cast Connect'i etkinleştirerek ses ve etkileşimden yararlanın.

  • Google Play faturalandırma hizmetini entegre ederek ve sorunsuz abonelikler sunarak daha kolay ödeme yapabilirsiniz.

TV giriş çerçevesi oluşturma

Canlı TV programları ve diğer kanal tabanlı içerikleri izlemek TV deneyiminin önemli bir parçasıdır. Kullanıcılar, kanallara göz atarak TV'de program seçmeye ve izlemeye alışkındır. TV Giriş Çerçevesi, TV programlama rehberinde ideo veya müzik içeriği yayınlamak için kanallar oluşturur.

TV Giriş Çerçevesi, HDMI bağlantı noktaları ve yerleşik kanal ayarlayıcılar gibi donanım kaynaklarından ve internet üzerinden video akışı gibi yazılım kaynaklarından canlı video içeriklerinin alınması ve oynatılması için birleşik bir yöntem sağlar. Daha fazla bilgi için TV giriş hizmetleri oluşturma konusuna bakın.