Memulai Live Stream YouTube di Perangkat Android

Deep link YouTube Mobile Live memungkinkan aplikasi Android memulai livestream YouTube langsung dari perangkat seluler. Aplikasi hanya perlu menyediakan titik entri, seperti tombol yang dapat diklik pengguna, yang memulai alur Mobile Live menggunakan mekanisme Intent Android.

Contoh

Alur ini menunjukkan pengalaman pengguna untuk aplikasi yang memiliki deep link ke aplikasi YouTube, tempat pengguna diarahkan ke layar Penyiapan Livestream Seluler.

  1. Pertama, pengguna mengonfigurasi streaming, menetapkan judul, mode privasi, dan opsi streaming lainnya.
  2. Kemudian, pengguna membuka layar Foto Thumbnail untuk menetapkan gambar thumbnail untuk streaming.
  3. Terakhir, pengguna memulai livestream dan menyiarkan tampilan dari kamera depan atau belakang.

Layar penyiapan livestream di perangkat seluler Layar foto thumbnail Layar siaran livestream di perangkat seluler

Persyaratan Perangkat

Perangkat Android harus memenuhi persyaratan berikut agar dapat mendukung live streaming YouTube dan deep link Live Seluler dengan benar:

  • Rilis Android: Marshmallow (API 23) atau yang lebih baru
  • Kamera: Minimal satu kamera yang mampu merekam 720p pada minimal 30 Hz
  • Mikrofon: Mikrofon internal
  • Encoder audio: Encoder audio yang diakselerasi hardware yang mampu mengenkode audio mono PCM 8-bit ke AAC pada 44,1 KHz atau lebih tinggi
  • Encoder video: Encoder video dengan akselerasi hardware yang mampu mengenkode video mentah 720P ke H.264/AVC pada 30 Hz atau lebih baik
  • Aplikasi YouTube yang diinstal: Versi 13.02 atau yang lebih baru

Spesifikasi Mobile Live Intent

Untuk menautkan ke alur live streaming YouTube Seluler, aplikasi Android Anda meluncurkan Intent. Intent memulai proses live streaming dengan memulai Activity di aplikasi YouTube.

Format intent

Mobile Live Intent menggunakan string Action kustom untuk membuka Aktivitas pembuatan live dalam aplikasi YouTube. Intent ini juga menentukan nama paket untuk aplikasi YouTube Seluler.

  • Tindakan: "com.google.android.youtube.intent.action.CREATE_LIVE_STREAM"
  • Paket: "com.google.android.youtube"

Tambahan intent

Alur penyiapan aplikasi YouTube menangani konfigurasi streaming. Tambahan Intent berikut menetapkan parameter yang terkait dengan livestream:

Params
Intent.EXTRA_REFERRER Wajib diisi. Parameter ini menentukan URI yang mewakili aplikasi yang meluncurkan Aktivitas live streaming. Nilai ini harus mengikuti format android-app: scheme dengan nama paket. Nilai ini memungkinkan atribusi dan akuntansi yang akurat.
Intent.EXTRA_SUBJECT Opsional. Parameter ini memberikan deskripsi teks livestream. Token ini ditempatkan dalam paket tambahan Intent sebagai String. Nilai ini dapat digunakan untuk memberi anotasi pada streaming dengan pesan bermerek, seperti "Disiarkan live dari PERANGKAT".

Meluncurkan alur live streaming

Selesaikan dua langkah berikut untuk memverifikasi kompatibilitas perangkat dan memulai Aktivitas Live Seluler dari aplikasi Android Anda.

Langkah 1: Periksa dukungan

Klien Anda harus terlebih dahulu mengonfirmasi bahwa Mobile Live Intent dapat diluncurkan dengan memverifikasi bahwa aplikasi YouTube diinstal di perangkat dan versi aplikasi YouTube mendukung live streaming. Contoh kode berikut menentukan dua metode untuk melakukannya:

  • Metode canResolveMobileLiveIntent memverifikasi bahwa perangkat mendukung Mobile Live Intent.

  • validateMobileLiveIntent memanggil metode canResolveMobileLiveIntent dalam konteks pernyataan if-else.

    • Jika perangkat mendukung Intent, perangkat dapat meluncurkan alur livestream.
    • Jika perangkat tidak mendukung Intent, perangkat dapat meminta pengguna untuk menginstal atau mengupgrade aplikasi 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> resolveInfo =
    pm.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
  return resolveInfo != null && !resolveInfo.isEmpty();
}


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

Aplikasi yang menargetkan Android 11 (level API 30) atau yang lebih tinggi harus mendeklarasikan persyaratan visibilitas paket dalam file AndroidManifest.xml agar PackageManager dapat membuat kueri aplikasi YouTube:

<queries>
  <package android:name="com.google.android.youtube" />
  <intent>
    <action android:name="com.google.android.youtube.intent.action.CREATE_LIVE_STREAM" />
  </intent>
</queries>

Langkah 2: Luncurkan aktivitas livestream

Untuk memulai alur live streaming, aplikasi klien Anda membuat dan meluncurkan Intent seperti yang ditunjukkan dalam contoh kode berikut:

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