Memulai Live Stream YouTube di Perangkat Android

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

Contoh

Alur ini menunjukkan pengalaman pengguna untuk aplikasi yang melakukan deep link ke aplikasi YouTube, tempat pengguna mendarat di layar Penyiapan live streaming di perangkat seluler.

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

Persyaratan Perangkat

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

  • Rilis Android: Marshmallow (API 23) atau yang lebih tinggi
  • Kamera: Setidaknya satu kamera yang mampu merekam 720p pada minimal 30 Hz
  • Mikrofon: Mikrofon bawaan
  • Encoder audio: Encoder audio yang diakselerasi hardware dan 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 tinggi
  • Aplikasi YouTube terinstal: Versi 13.02 atau yang lebih baru

Spesifikasi Maksud Live Seluler

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 niat

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

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

Ekstra intent

Alur penyiapan aplikasi YouTube menangani konfigurasi streaming. Ekstra Intent berikut menetapkan parameter yang terkait dengan live stream:

Params
Intent.EXTRA_REFERRER Wajib diisi. Parameter ini menentukan URI yang merepresentasikan 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 tentang live stream. Nilai ini ditempatkan dalam paket ekstra Intent sebagai String. Nilai ini dapat digunakan untuk memberi anotasi pada streaming dengan pesan bermerek, seperti "Disiarkan langsung dari PERANGKAT".

Meluncurkan alur live streaming

Langkah 1: Periksa dukungan

Klien Anda harus mengonfirmasi terlebih dahulu bahwa Maksud Live Seluler 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 Maksud Live Seluler.
  • validateMobileLiveIntent memanggil metode canResolveMobileLiveIntent dalam konteks pernyataan if-else.
    • Jika perangkat mendukung Intent, perangkat dapat meluncurkan alur live stream.
    • 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 = 
    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
  }
}

Aplikasi yang menargetkan Android 11 (level API 30) atau yang lebih tinggi harus mendeklarasikan persyaratan visibilitas paket dalam file AndroidManifest.xml agar PackageManager dapat mengkueri 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 live stream

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