TV uygulamaları, başlatıcının arkasında veya arka planda medya oynatırken Şimdi Oynatılıyor kartı görüntülemelidir. Bu kart, kullanıcıların o anda medya oynatan uygulamaya geri dönmesini sağlar.
Android çerçevesi, etkin bir MediaSession
olduğunda ana ekranda Ne Çalıyor? kartını görüntüler.
Kartta albüm resmi, başlık ve uygulama simgesi gibi medya meta verileri yer alır.
Kullanıcı kartı seçtiğinde sistem uygulamayı açar.
Ne Çalıyor? kartını uygulamak için MediaSession
sınıfını kullanabilirsiniz.
Şekil 1. Arka planda medya oynatırken Şimdi Oynatılıyor kartı görüntüleyin.
Ne Çalıyor? kartı
Bir medya oturumu uyguladıktan, oturumu etkin olarak ayarladıktan ve ses odağı isteğinde bulunduktan sonra, Şimdi Çalınıyor kartı görüntülenir.
Not: Şimdi Oynatılıyor kartı yalnızca FLAG_HANDLES_TRANSPORT_CONTROLS
işareti ayarlanmış bir medya oturumu için görüntülenir. Bu işaret, API düzeyi 26'da kullanımdan kaldırılmıştır. Bununla birlikte, bu işaret eski cihazlarda geriye dönük uyumluluk için hâlâ gerekli olabilir.
setActive(false)
çağrısı medya oturumunu devre dışı bıraktığında veya başka bir uygulama medya oynatmayı başlattığında, kart başlatıcı ekranından kaldırılır. Oynatma tamamen durdurulduysa ve etkin medya yoksa medya oturumunu hemen devre dışı bırakın. Oynatma duraklatılırsa bir gecikmenin ardından (genellikle 5-30 dakika) medya oturumunu devre dışı bırakın.
Kartı güncelle
Uygulamanız MediaSession
içindeki oynatma durumunu her güncellediğinde
Ne Çalıyor? kartı güncel medyanın durumunu gösterecek şekilde güncellenir. Bunu nasıl yapacağınızı öğrenmek için Oynatma durumunu güncelleme bölümüne bakın.
Benzer şekilde, uygulamanız MediaMetadata
simgesini güncelleyerek Şimdi Oynatılıyor kartına başlık, alt başlık ve çeşitli simgeler gibi mevcut medya hakkında bilgi sağlayabilir. Bunu nasıl yapacağınızı öğrenmek için Medya meta verilerini güncelleme bölümüne bakın.
Kullanıcı işlemine yanıt verme
Kullanıcı Ne Çalıyor? kartını seçtiğinde, sistem oturumun sahibi olan uygulamayı açar. Uygulamanız setSessionActivity()
için bir PendingIntent
sağlıyorsa sistem, belirttiğiniz etkinliği aşağıdaki kod snippet'inde gösterildiği gibi başlatır. Açılmazsa varsayılan sistem amacı açılır. Belirttiğiniz etkinlik, kullanıcıların oynatmayı duraklatmasına veya durdurmasına olanak tanıyan oynatma kontrolleri sağlamalıdır.
Kotlin
val pi: PendingIntent = Intent(context, MyActivity::class.java).let { intent -> PendingIntent.getActivity( context, 99 /*request code*/, intent, PendingIntent.FLAG_UPDATE_CURRENT ) } session.setSessionActivity(pi)
Java
Intent intent = new Intent(context, MyActivity.class); PendingIntent pi = PendingIntent.getActivity(context, 99 /*request code*/, intent, PendingIntent.FLAG_UPDATE_CURRENT); session.setSessionActivity(pi);