Avvio dei live streaming di YouTube su dispositivi Android

Questo SDK è stato completamente ritirato. Non è più supportato o gestito da YouTube. Utilizza invece l'API YouTube IFrame Player.

Il link diretto di YouTube Mobile Live consente alle applicazioni Android di avviare un live streaming di YouTube direttamente da un dispositivo mobile. Un'app deve solo fornire un punto di ingresso, ad esempio un pulsante su cui l'utente può fare clic, che avvia il flusso di live streaming mobile tramite il meccanismo di intent di Android.

Esempio

Questa procedura mostra l'esperienza utente per un'app che rimanda direttamente all'applicazione YouTube, dove l'utente viene indirizzato alla schermata di configurazione del live streaming da dispositivo mobile.

  1. Innanzitutto, l'utente configura lo stream impostando il titolo, la modalità per la privacy e altre opzioni.
  2. Successivamente, l'utente accede alla schermata Foto in miniatura per impostare un'immagine in miniatura per lo stream.
  3. Infine, l'utente avvia il live streaming e trasmette la visualizzazione dalla fotocamera anteriore o posteriore.

Requisiti del dispositivo

I dispositivi Android devono soddisfare i seguenti requisiti per supportare correttamente il live streaming di YouTube e il link diretto da dispositivo mobile:

  • Release di Android: Marshmallow (API 23) o versioni successive
  • Videocamera:almeno una videocamera in grado di registrare a 720p ad almeno 30 Hz
  • Microfono: microfono integrato
  • Codificatore audio: codificatore audio con accelerazione hardware in grado di codificare l'audio mono PCM PCM a 8 bit a 44,1 KHz o superiore
  • Codificatore video: codificatore audio con accelerazione hardware in grado di codificare video non elaborati a 720P in H.264/AVC a 30 Hz o superiore
  • App YouTube installata:versione 13.02 o successive

Specifica intenzione di acquisto live per dispositivi mobili

Per creare un collegamento al flusso in live streaming di YouTube Mobile, la tua app per Android avvia un intent. L'intent avvia il processo di live streaming avviando un'attività nell'applicazione YouTube.

Formato intent

L'intent dal vivo per dispositivi mobili utilizza una stringa Action personalizzata per accedere all'attività di creazione dal vivo all'interno dell'app YouTube. Inoltre, specifica il nome del pacchetto per l'app mobile YouTube.

  • Azione: "com.google.android.youtube.intent.action.CREATE_LIVE_STREAM"
  • Pacchetto: "com.google.android.youtube"

Extra intent

Il flusso di configurazione dell'applicazione YouTube gestisce la configurazione dello stream. I seguenti extra di intent impostano i parametri associati al live streaming:

Params
Intent.EXTRA_REFERRER Required. Questo parametro specifica un URI che rappresenta l'applicazione che avvia l'attività di live streaming. Questo valore deve seguire il formato android-app: scheme con un nome di pacchetto. Il valore consente un'attribuzione e una contabilità accurate.
Intent.EXTRA_SUBJECT (Facoltativo) Questo parametro fornisce una descrizione testuale del live streaming. Viene inserito nel bundle Extra dell'intent come Stringa. Il valore può essere utilizzato per annotare lo stream con un messaggio correlato al brand, come "Trasmetti in live streaming da DEVICE".

Avviare il flusso di live streaming

Passaggio 1: verifica se è presente l'assistenza

Il tuo cliente deve innanzitutto confermare che l'intent dal vivo per dispositivi mobili può essere avviato verificando che l'app YouTube sia installata sul dispositivo e che la versione dell'app YouTube supporti il live streaming. Il seguente esempio di codice definisce due metodi per farlo:

  • Il metodo canResolveMobileLiveIntent verifica che il dispositivo supporti l'intent dal vivo per dispositivi mobili.
  • validateMobileLiveIntent chiama il metodo canResolveMobileLiveIntent nel contesto di un'istruzione if-else.
    • Se il dispositivo supporta l'intent, potrebbe avviare il flusso del live streaming.
    • Se non supporta l'intent, il dispositivo potrebbe chiedere all'utente di installare o eseguire l'upgrade dell'app YouTube.
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
  }
}

Passaggio 2: avvia l'attività di live streaming

Per avviare il flusso di live streaming, l'app client crea e avvia un intent come mostrato nell'esempio di codice seguente:

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