Menggunakan aplikasi pengujian pengontrol media

Aplikasi media yang berinteraksi melalui suara dengan Asisten Google di ponsel Android, mobil, TV, dan headphone didukung oleh API sesi media Android dan menggunakan tindakan media. Siklus proses tindakan media mungkin sulit diikuti. Bahkan pemutaran sederhana dari permintaan penelusuran memiliki banyak langkah menengah yang dapat mengalami kesalahan, seperti yang ditunjukkan dalam linimasa yang disederhanakan:

Siklus Proses Media Action

Gambar 1. Siklus Proses Tindakan Media

Aplikasi Pengujian Pengontrol Media (MCT) memungkinkan Anda menguji seluk-beluk pemutaran media di Android dan membantu memverifikasi penerapan sesi media Anda.

MCT menampilkan informasi tentang MediaController aplikasi Anda, seperti PlaybackState dan metadatanya, dan dapat digunakan untuk menguji kontrol media antar-aplikasi. MCT juga mencakup framework pengujian verifikasi yang memungkinkan Anda mengotomatiskan pengujian QA.

Untuk menggunakan MCT, aplikasi Anda harus memiliki layanan browser media dan Anda harus mengizinkan MCT untuk terhubung ke layanan tersebut. Lihat Membangun layanan browser media untuk informasi selengkapnya.

Memulai MCT

Halaman Peluncuran MCT
Gambar 2. Halaman Peluncuran MCT

Saat meluncurkan MCT, Anda akan melihat dua daftar:

  • Active MediaSessions - Daftar ini awalnya kosong saat Anda meluncurkan MCT dan Anda akan melihat pesan "No media apps found. Izin Pemroses Notifikasi diperlukan untuk memindai sesi media yang aktif." Klik Settings untuk membuka layar izin dan mengaktifkan izin untuk MCT.
  • Implementasi MediaBrowserService - Daftar ini menampilkan aplikasi yang telah mengimplementasikan layanan browser media. Jika Anda telah mengimplementasikan layanan browser media, aplikasi akan muncul dalam daftar ini, tetapi Anda hanya dapat menggunakan MCT jika telah mengonfigurasi aplikasi untuk menerima semua koneksi atau mengizinkan MCT. Baca bagian Mengontrol koneksi klien dengan onGetRoot() untuk mengetahui informasi selengkapnya.

Menguji aplikasi ponsel secara manual

Jika Anda mengizinkan MCT untuk terhubung ke layanan browser media aplikasi, aplikasi Anda akan muncul dalam daftar implementasi daftar layanan browser media. Temukan di sana dan klik Control untuk memulai aplikasi Anda di latar belakang.

Jika tidak, Anda harus memulai aplikasi Anda sendiri di latar belakang terlebih dahulu, lalu mengklik Control saat aplikasi muncul dalam daftar sesi media yang aktif.

Bersiaplah untuk ujian dan mainkan

Saat mulai mengontrol aplikasi Anda, MCT akan menampilkan metadata sesi saat ini aplikasi: media yang sedang dipilih dan tindakan yang siap ditangani sesi.

Halaman Kontrol
Gambar 3. Halaman Kontrol

Bagian atas halaman kontrol MCT berisi menu drop-down tempat Anda dapat memilih Search, URI, Media ID, atau None, beserta kolom teks untuk menentukan data input yang terkait dengan Penelusuran, URI, atau ID Media jika Anda memilih salah satu opsi tersebut.

Tombol Siapkan dan Putar tepat di bawah kolom teks melakukan panggilan yang sesuai (onPrepare(), onPrepareFromSearch(), onPrepareFromUri(), onPrepareFromMediaId(), onPlay(), onPlayFromSearch(), onPlayFromUri(), onPlayFromMediaId()) bergantung pada tindakan yang Anda pilih.

Menguji fokus audio

Aplikasi media yang berperilaku baik harus dapat menangani fokus audio. Anda dapat menguji fokus audio dengan menjalankan aplikasi audio lain bersama aplikasi Anda. Halaman kontrol MCT menyertakan tombol yang meminta dan melepaskan fokus audio.

Untuk menguji fokus audio, ikuti langkah-langkah berikut:

  1. Gunakan menu drop-down Fokus Audio untuk memilih salah satu dari tiga petunjuk durasi AUDIOFOCUS_GAIN, AUDIOFOCUS_GAIN_TRANSIENT, atau AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK.
  2. Tekan tombol untuk meminta fokus.
  3. Tekan tombol lagi untuk melepaskan fokus.

Menguji kontrol transport

Menguji Kontrol Transport
Gambar 4. Menguji Kontrol Transport

Geser ke kiri untuk menampilkan tampilan UI MCT. Tampilan ini memiliki tombol transpor pengontrol media standar serta menampilkan gambar dan data program sesi. Tombol transpor yang dinonaktifkan akan dilingkari dengan warna oranye. Semua yang lain aktif.

Uji pemutar Anda menggunakan tombol transport. Status tombol transport akan berubah seperti yang diharapkan. Misalnya, saat Anda menekan tombol PUTAR, tombol akan dinonaktifkan, dan tombol PAUSE dan STOP akan menjadi aktif.

Usap ke kiri lagi untuk tampilan yang menampilkan tindakan opsional. Setiap tindakan memiliki kontrol yang menunjukkan apakah tindakan tersebut aktif atau tidak. Jika aktif, Anda dapat melakukan tindakan dengan mengkliknya.

Jika terhubung dari daftar aplikasi yang memiliki layanan browser media, Anda dapat menggeser ke kiri dua kali lagi untuk tampilan yang memungkinkan Anda menelusuri hierarki konten aplikasi, atau menelusuri hierarki konten.

Menguji aplikasi video secara manual

Gunakan mode layar terpisah untuk menguji pengontrol aplikasi video. Pertama, buka aplikasi video Anda di satu jendela, lalu buka MCT dalam mode layar terpisah.

Menjalankan uji verifikasi

Framework pengujian verifikasi menawarkan pengujian sekali klik yang dapat Anda jalankan untuk memastikan bahwa aplikasi media merespons permintaan pemutaran dengan benar.

Menguji aplikasi telepon

Tombol Uji
Gambar 5. Tombol Uji

Untuk mengakses pengujian verifikasi, klik tombol Test di samping aplikasi media Anda.

Status MCT

Status Kontrol Media
Gambar 6. Status Kontrol Media

Tampilan berikutnya menunjukkan informasi mendetail tentang MediaController MCT, misalnya PlaybackState, metadata, dan antrean. Ada dua tombol di kanan atas {i>toolbar<i}. Tombol di sebelah kiri mengalihkan antara log yang dapat diuraikan dan log berformat. Tombol di sebelah kanan akan memuat ulang tampilan untuk menampilkan informasi terbaru.

Memilih pengujian

Halaman Pemilihan Tes
Gambar 7. Halaman Pemilihan Pengujian

Dengan menggeser ke kiri, Anda akan masuk ke tampilan pengujian verifikasi, tempat Anda dapat melihat daftar pengujian yang tersedia dan dapat di-scroll. Jika pengujian menggunakan kueri, seperti pemutaran dari pengujian penelusuran yang ditunjukkan pada Gambar 7, terdapat kolom teks untuk memasukkan string kueri.

MCT mencakup pengujian untuk tindakan media berikut, dan pengujian lainnya akan terus ditambahkan ke project:

  • Putar
  • Putar Dari Penelusuran
  • Putar Dari ID Media
  • Putar Dari URI
  • Jeda
  • Hentikan
  • Lewati ke Berikutnya
  • Lewati ke Sebelumnya
  • Lewati ke Item Antrean
  • Cari ke

Hasil uji

Hasil Pengujian yang Berhasil
Gambar 8. Hasil Pengujian yang Berhasil

Area hasil di bagian bawah tampilan awalnya kosong. Alat ini akan menunjukkan hasilnya saat Anda menjalankan pengujian. Misalnya, untuk menjalankan pemutaran dari pengujian penelusuran, masukkan kueri penelusuran ke kolom teks, lalu klik Run Test. Screenshot berikut menunjukkan hasil pengujian yang berhasil.

Menguji aplikasi Android TV

Saat meluncurkan MCT di Android TV, Anda akan melihat daftar aplikasi media yang terinstal. Perhatikan bahwa aplikasi hanya akan muncul dalam daftar ini jika mengimplementasikan layanan browser media.

Halaman Peluncuran MCT di TV

Gambar 9. Halaman Peluncuran MCT di TV

Memilih aplikasi akan membawa Anda ke layar pengujian, yang menampilkan daftar pengujian verifikasi di sebelah kanan.

Halaman Pengujian Verifikasi di TV

Gambar 10. Halaman Pengujian Verifikasi di TV

Saat Anda menjalankan pengujian, sisi kiri layar menampilkan informasi tentang MediaController yang dipilih. Untuk mengetahui detail selengkapnya, periksa log MCT di Logcat.

Halaman Informasi Pengujian di TV

Gambar 11. Halaman Informasi Pengujian di TV

Pengujian yang memerlukan kueri ditandai dengan ikon keyboard. Mengklik salah satu pengujian ini akan membuka kolom input untuk kueri. Klik Enter untuk menjalankan pengujian.

Untuk mempermudah input teks, Anda juga dapat menggunakan perintah adb:

adb shell input text your-query

Anda dapat menggunakan "%s" untuk menambahkan spasi di antara kata. Misalnya, perintah berikut menambahkan teks "hello world" ke kolom input.

adb shell input text hello%sworld

Membuat pengujian

Anda dapat mengirimkan permintaan pull dengan lebih banyak pengujian yang menurut Anda berguna. Untuk mempelajari cara membuat pengujian baru, buka Wiki GitHub MCT dan lihat petunjuk pengujian verifikasi.

Tinjau petunjuk kontribusi.

Referensi lainnya

MCT dimaksudkan untuk digunakan bersama aplikasi yang menerapkan API media. Lihat Pemutar Musik Android Universal untuk mengetahui contoh aplikasi semacam ini.

Perbaikan bug dan peningkatan selalu dapat dilakukan. Lihat petunjuk kontribusi.