Android Cihazlarda YouTube Canlı Yayınlarını Başlatma

Bu SDK'nın desteği tamamen sonlandırılmıştır. Artık tarafından desteklenmeyen veya yönetilmiyor. YouTube Lütfen şunu kullanın: YouTube IFrame Player API'sini kullanın.

Mobil Cihazlar için YouTube Canlı derin bağlantısı, Android uygulamalarının doğrudan bir mobil cihazdan YouTube canlı yayını başlatmasına olanak tanır. Bir uygulamanın yalnızca, Android Intent mekanizması aracılığıyla Mobil Canlı Akışı başlatan ve kullanıcının tıklayabileceği bir düğme gibi bir giriş noktası sağlaması gerekir.

Örnek

Bu akış, YouTube uygulamasına derin bağlantı oluşturan ve kullanıcıyı Mobil Canlı Yayın Kurulum ekranına yönlendiren bir uygulamanın kullanıcı deneyimini gösterir.

  1. Öncelikle kullanıcı yayını yapılandırarak başlığı, gizlilik modunu ve diğer yayın seçeneklerini ayarlar.
  2. Ardından, kullanıcı akış için bir küçük resim ayarlamak üzere Küçük Resim Fotoğraf ekranına gider.
  3. Son olarak kullanıcı, canlı yayını başlatır ve ön veya arka kameradan görüntüyü yayınlar.

Cihaz Gereksinimleri

Android cihazların, YouTube canlı yayınını ve Mobil Canlı yayın derin bağlantısını düzgün bir şekilde desteklemesi için aşağıdaki şartları karşılaması gerekir:

  • Android sürümü: Marshmallow (API 23) veya sonraki sürümler
  • Kamera: En az 30 Hz 720p kayıt yapabilen en az bir kamera.
  • Mikrofon: Yerleşik mikrofon
  • Ses kodlayıcı: 8 bit PCM mono sesi 44,1 KHz veya daha iyi bir hızda AAC'ye kodlayabilen donanım hızlandırmalı ses kodlayıcı
  • Video kodlayıcı: 720P ham videoyu 30 Hz veya daha iyi hızlarda H.264/AVC olarak kodlayabilen donanım hızlandırmalı video kodlayıcı
  • Yüklenen YouTube uygulaması sayısı: 13.02 veya sonraki sürüm

Mobile Live Intent spesifikasyonu

Android uygulamanız, Mobil Cihazlar için YouTube canlı yayın akışına bağlantı oluşturmak için bir Amaç'ı başlatır. Intent, YouTube uygulamasında Etkinlik başlatarak canlı yayın sürecini başlatır.

Amaç biçimi

Mobil Canlı Yayın Amacı, YouTube uygulamasındaki canlı yayın oluşturma etkinliğine gitmek için özel bir Action dizesi kullanır. YouTube mobil uygulamasının paket adını da belirtir.

  • İşlem: “com.google.android.youtube.intent.action.CREATE_LIVE_STREAM
  • Paket: "com.google.android.youtube"

Intent ekstraları

Canlı yayın yapılandırması, YouTube uygulama kurulum akışıyla gerçekleştirilir. Aşağıdaki Intent ekstraları, canlı yayınla ilişkili parametreleri ayarlar:

Parametreler
Intent.EXTRA_REFERRER Zorunludur. Bu parametre, canlı yayın etkinliğini başlatan uygulamayı temsil eden bir URI belirtir. Bu değer, paket adıyla birlikte android-app: scheme biçimine uygun olmalıdır. Değer, doğru ilişkilendirme ve hesaplama sağlar.
Intent.EXTRA_SUBJECT İsteğe bağlı. Bu parametre, canlı yayının metin açıklamasını sağlar. Intent ekstra paketine bir String olarak yerleştirilir. Değer, "DEVICE üzerinden canlı yayınlandı" gibi markalı bir mesajla akışa ek açıklama eklemek için kullanılabilir.

Canlı yayın akışını başlatma

1. Adım: Destek için kontrol edin

Müşteriniz öncelikle YouTube uygulamasının cihazda yüklü olduğunu ve YouTube uygulama sürümünün canlı yayını desteklediğini doğrulayarak Mobil Canlı Intent'in başlatılabileceğini onaylamalıdır. Aşağıdaki kod örneğinde bunu yapmak için iki yöntem tanımlanmaktadır:

  • canResolveMobileLiveIntent yöntemi, cihazın Mobil Canlı Intent'i desteklediğini doğrular.
  • validateMobileLiveIntent, bir if-else ifadesi bağlamında canResolveMobileLiveIntent yöntemini çağırır.
    • Cihaz, Intent'i destekliyorsa canlı yayın akışını başlatabilir.
    • Intent'i desteklemeyen kullanıcılar, kullanıcıdan YouTube uygulamasını yüklemesini veya yeni sürüme geçirmesini isteyebilir.
private boolean canResolveMobileLiveIntent(Context context) {
  Intent intent = new Intent("com.google.android.youtube.intent.action.CREATE_LIVE_STREAM")
    .setPackage("com.google.android.youtube");
  PackageManager pm = context.getPackageManager();
  List resolveInfo = 
    pm.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
  return resolveInfo != null && !resolveInfo.isEmpty();
}


private void validateMobileLiveIntent(Context context) {
  if (canResolveMobileLiveIntent(context)) {
    // Launch the live stream Activity
  } else {
    // Prompt user to install or upgrade the YouTube app
  }
}

2. adım: Canlı yayın etkinliğini başlatın

Canlı yayın akışını başlatmak için istemci uygulamanız aşağıdaki kod örneğinde gösterildiği gibi bir Intent oluşturur ve başlatır:

private Intent createMobileLiveIntent(Context context, String description) {
  Intent intent = new Intent("com.google.android.youtube.intent.action.CREATE_LIVE_STREAM")
      .setPackage("com.google.android.youtube");
  Uri referrer = new Uri.Builder()
      .scheme("android-app")
      .appendPath(context.getPackageName())
      .build();

  intent.putExtra(Intent.EXTRA_REFERRER, referrer);
  if (!TextUtils.isEmpty(description)) {
    intent.putExtra(Intent.EXTRA_SUBJECT, description);
  }
  return intent;
}


private void startMobileLive(Context context) {
  Intent mobileLiveIntent = createMobileLiveIntent(context, "Streaming via ...");
  startActivity(mobileLiveIntent);
}