YouTube-Livestreams auf Android-Geräten starten

Dieses SDK wurde vollständig eingestellt. Es wird nicht mehr unterstützt oder gepflegt von YouTube Bitte verwenden Sie die YouTube iFrame Player API.

Mithilfe des Deeplinks für YouTube Mobile Live können Android-Apps direkt über ein Mobilgerät einen YouTube-Livestream starten. Eine App muss nur einen Einstiegspunkt bieten, z. B. eine Schaltfläche, auf die der Nutzer klicken kann und die den mobilen Live-Ablauf über den Android-Intent-Mechanismus startet.

Beispiel

Hier sehen Sie die Nutzererfahrung für eine App, die über einen Deeplink zur YouTube App weitergeleitet wird, wo der Nutzer zum Einrichtungsbildschirm für den mobilen Livestream gelangt.

  1. Zuerst konfiguriert der Nutzer den Stream und legt den Titel, den privaten Modus und andere Streamoptionen fest.
  2. Anschließend navigiert der Nutzer zum Bildschirm „Thumbnail Photo“, um ein Thumbnail für den Stream festzulegen.
  3. Zuletzt startet der Nutzer den Livestream und überträgt den Blick von der Front- oder Rückkamera.

Geräteanforderungen

Android-Geräte müssen die folgenden Anforderungen erfüllen, damit YouTube-Livestreaming und der Deeplink für Liveinhalte auf Mobilgeräten richtig unterstützt werden:

  • Android-Version:Marshmallow (API 23) oder höher
  • Kamera:Mindestens eine Kamera, die 720p bei mindestens 30 Hz aufzeichnen kann
  • Mikrofon:integriertes Mikrofon
  • Audio-Encoder:Hardwarebeschleunigter Audio-Encoder, der 8-Bit-PCM-Mono-Audio mit AAC mit mindestens 44,1 kHz codieren kann
  • Video-Encoder:Hardwarebeschleunigter Videoencoder, der 720P-Rohvideos als H.264/AVC bei mindestens 30 Hz codieren kann
  • Installierte YouTube App:Version 13.02 oder höher

Mobile Live Intent – Spezifikation

Um eine Verknüpfung zum YouTube Mobile-Livestreaming herzustellen, wird in deiner Android-App ein Intent-Element gestartet. Der Intent initiiert den Livestreaming-Prozess, indem er in der YouTube-Anwendung eine Activity (Aktivität) startet.

Intent-Format

Der Intent „Live“ für Mobilgeräte verwendet einen benutzerdefinierten Action-String, um in der YouTube App die Aktivität zum Erstellen von Livestreams aufzurufen. Außerdem wird der Paketname für die mobile YouTube App angegeben.

  • Aktion: „com.google.android.youtube.intent.action.CREATE_LIVE_STREAM
  • Paket: „com.google.android.youtube

Intent-Extras

Die Stream-Konfiguration erfolgt über den Einrichtungsvorgang der YouTube-Anwendung. Die folgenden Intent-Extras legen Parameter fest, die mit dem Livestream verknüpft sind:

Parameter
Intent.EXTRA_REFERRER Erforderlich. Dieser Parameter gibt einen URI für die Anwendung an, die die Livestreaming-Aktivität startet. Dieser Wert muss dem Format android-app: scheme mit einem Paketnamen entsprechen. Der Wert ermöglicht eine genaue Zuordnung und Buchhaltung.
Intent.EXTRA_SUBJECT Optional: Dieser Parameter enthält eine Textbeschreibung des Livestreams. Er wird im Bundle „Intent-Extras“ als String abgelegt. Der Wert kann verwendet werden, um den Stream mit einer Markenbotschaft wie „Live von DEVICE gestreamt“ zu versehen.

Livestreams starten

Schritt 1: Support kontaktieren

Ihr Kunde sollte zuerst prüfen, ob der Mobile Live Intent gestartet werden kann. Dazu muss die YouTube App auf dem Gerät installiert sein und die Version der YouTube App unterstützt Livestreaming. Im folgenden Codebeispiel werden zwei Methoden dafür definiert:

  • Mit der Methode canResolveMobileLiveIntent wird geprüft, ob das Gerät den Mobile Live Intent unterstützt.
  • validateMobileLiveIntent ruft die Methode canResolveMobileLiveIntent im Kontext einer if-else-Anweisung auf.
    • Wenn das Gerät den Intent unterstützt, kann der Livestream gestartet werden.
    • Wenn das Gerät den Intent nicht unterstützt, wird der Nutzer möglicherweise aufgefordert, die YouTube App zu installieren oder zu aktualisieren.
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
  }
}

Schritt 2: Livestream-Aktivität starten

Um den Livestream-Ablauf zu starten, erstellt und startet Ihre Client-App einen Intent, wie im folgenden Codebeispiel gezeigt:

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);
}