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:
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](https://developer.android.com/static/media/images/MCT/MCT-Launch-Screen.png?authuser=6&hl=id)
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](https://developer.android.com/static/media/images/MCT/audio-focus.png?authuser=6&hl=id)
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:
- Gunakan menu drop-down Fokus Audio untuk memilih salah satu dari tiga petunjuk durasi
AUDIOFOCUS_GAIN
,AUDIOFOCUS_GAIN_TRANSIENT
, atauAUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK
. - Tekan tombol untuk meminta fokus.
- Tekan tombol lagi untuk melepaskan fokus.
Menguji kontrol transport
![Menguji Kontrol Transport](https://developer.android.com/static/media/images/MCT/MCT-Controller-Screen.png?authuser=6&hl=id)
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](https://developer.android.com/static/media/images/MCT/MCT-Test-Button.png?authuser=6&hl=id)
Untuk mengakses pengujian verifikasi, klik tombol Test di samping aplikasi media Anda.
Status MCT
![Status Kontrol Media](https://developer.android.com/static/media/images/MCT/MCT-Testing-Info-Screen.png?authuser=6&hl=id)
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](https://developer.android.com/static/media/images/MCT/MCT-Testing-Verification-Screen.png?authuser=6&hl=id)
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](https://developer.android.com/static/media/images/MCT/MCT-Testing-Success-Screen.png?authuser=6&hl=id)
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.
Memilih aplikasi akan membawa Anda ke layar pengujian, yang menampilkan daftar pengujian verifikasi di sebelah kanan.
Saat Anda menjalankan pengujian, sisi kiri layar menampilkan informasi tentang MediaController yang dipilih. Untuk mengetahui detail selengkapnya, periksa log MCT di Logcat.
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.