Pedoman Sertifikasi pengalihan audio

Persiapan untuk Sertifikasi

  • Siapkan perangkat pengujian.
    • Anda memerlukan 5 perangkat Android.
      • Perangkat ini harus mencakup:
        • Minimal satu Android T (13) dan satu Android V (15).
        • Minimal satu Samsung dan satu Pixel.
        • Misalnya:
          • 1 OnePlus (Android 10).
          • 3 Samsung (Android 11, 12, 13).
          • 1 Pixel (Android 15).
    • Satu perangkat tanpa Tombol audio:
      • Semua laptop yang mendukung iPhone, PC, Bluetooth (BT), atau ponsel Android yang Tombol audionya dinonaktifkan.
        • Anda dapat menonaktifkan Tombol audio dari setelan detail perangkat Bluetooth.
      • Kasus Pengujian Multipoint (MP) 2.8 memerlukan perangkat tanpa tombol Audio selain 5 ponsel pengujian.
  • Gabung ke grup pengujian tombol Audio dengan akun pengujian Anda untuk menampilkan notifikasi debug di ponsel pengujian.

    • Hal ini juga memungkinkan Google mengumpulkan data pengujian melalui Google Analytics.

Klasik dengan A2DP+HFP

  • Pastikan semua perangkat Android telah menginstal GmsCore versi 23.xx.xx atau yang lebih baru.

BLE dengan LE Audio

  • Setidaknya dua ponsel referensi harus mendukung LE Audio.
    • Misalnya, satu ponsel Samsung dan satu ponsel Pixel yang mendukung LE Audio.
  • Pastikan semua perangkat Android telah menginstal GmsCore versi 24.33.xx atau yang lebih baru.

Kriteria Sertifikasi

  • Tingkat keberhasilan Peralihan Target harus melebihi 95% di semua kasus pengujian.
  • Dalam pengujian yang memerlukan tombol, koneksi profil dan status aktif tombol harus selesai dalam waktu 3 detik setelah memicu peristiwa audio dalam setidaknya 75% kasus.

Klasik dengan A2DP+HFP

Uji Mandiri harus dilakukan dalam kombinasi berikut:

  • Ponsel A=Android S (12) + Ponsel B=Android T (13)
  • Ponsel A=Android T (13) + Ponsel B=Android S (12)

BLE dengan LE Audio

Uji Mandiri harus dilakukan dalam kombinasi berikut:

  • Ponsel A: BT Classic, Ponsel B: BT Classic
  • Ponsel A: LE Audio, Ponsel B: BT Klasik
  • Ponsel A: BT Klasik, Ponsel B: LE Audio

Secara opsional, Penyedia yang mendukung koneksi Dual LE Audio harus menguji:

  • Ponsel A: LE Audio, Ponsel B: LE Audio

Panduan Pengujian

Persiapan Perangkat Dalam Pengujian (DUT)

  • Pastikan perangkat BT sebelumnya belum pernah disambungkan dengan ponsel yang login ke Akun Google pengujian.
    • Jika perangkat telah disambungkan ke Akun Google pengujian, lakukan hal berikut untuk menghapus penyambungan:
      • Di perangkat yang disambungkan:
        • Buka setelan Bluetooth.
        • Pilih "Lupakan Perangkat".
        • Aktifkan dan nonaktifkan Mode pesawat.
    • Pastikan "Simpan perangkat secara otomatis" AKTIF.
      • Tombol ini NONAKTIF secara default.
      • Anda dapat menemukan opsi ini di Setelan > Google > Perangkat > Perangkat tersimpan (satu per DUT).
    • Atur perangkat Bluetooth dalam Mode Penyambungan.
    • Menyambungkan perangkat Bluetooth awal (A).
    • Sambungkan perangkat Bluetooth berikutnya dengan perangkat lain (B, C, D, dll.).

Cakupan

  • Semua Headset menjalankan pengujian dari berbagai tab di Template pengujian mandiri tombol audio.
  • Headset yang hanya mendukung mode SinglePoint (SP) menjalankan hal berikut:
    • Tab {i>Generic_test<i}.
  • Headset yang mendukung mode MP menjalankan hal berikut:
    • Tab Generic_test.
    • Tab Multipoint_only.
  • Headset MP yang dapat dialihkan ke mode SP menjalankan perintah berikut:
    • Tab Generic_test dengan MP nonaktif.
    • Tab Generic_test dengan MP aktif.
    • Tab Multipoint_only dengan MP aktif.

Menyelesaikan Laporan Istirahat dan Tes Mandiri

Klasik dengan A2DP+HFP

  • Perangkat B akan menjadi DUT utama.
    • Masukkan detail Perangkat B ke kolom "Ponsel" dan "OS" di bagian atas template.

Contoh kasus pengujian:

  • Menguji ponsel:

    • Perangkat 1: Samsung (Android 13)
    • Perangkat 2: Pixel (Android 12 atau 13) dan lainnya.
  • Pengujian yang dijalankan:

    • Jalankan 1. Perangkat A=Samsung S10+ (12), Perangkat B=Pixel 7 pro (13) kolom D: Ponsel=Pixel 7 pro, OS=Android 13
    • Jalankan 2. Perangkat A=Pixel 7 pro (13), Perangkat B=Pixel 6(12) kolom E: Ponsel=Pixel 6, OS=Android 12

Contoh pengujian yang telah selesai dalam template tes mandiri:

Gambar ini menunjukkan hasil pengujian contoh

BLE dengan LE Audio

  1. Perangkat A=Android V (15) + Perangkat B=Android T (13)
  2. Perangkat A=Android T (13) + Perangkat B=Android V (15)
  3. Perangkat A=Android T (13) + Perangkat B=Android S (12)
  4. Perangkat A=Android T (15) + Perangkat B=Android V (15)
  5. Perangkat B akan menjadi DUT utama.
    • Masukkan detail Perangkat B ke kolom "Ponsel" dan "OS" di bagian atas template.

Contoh kasus pengujian:

  • Menguji ponsel:

    • Perangkat 1: Samsung (Android 13)
    • Perangkat 2: Pixel (Android 15) dan lainnya.
  • Pengujian yang dijalankan:

    • [LEA+BT]: Perangkat A= Pixel 8 (15), Perangkat B=Pixel 7 pro (13) kolom D: Ponsel=Pixel 7 pro, OS=Android 13
    • [BT+LEA]: Perangkat A=Pixel 7 (13), Perangkat B=Pixel 8 (Android 15) E: Ponsel=Pixel 8, OS=Android 15
    • [BT+BT]: Perangkat A=Pixel 7 pro (13), Perangkat B=Samsung S10+ (12) kolom E: Ponsel=Samsung S10+, OS=Android 12
    • [LEA+LEA]: Perangkat A=Pixel 8 (15), Perangkat B=Pixel 8(15) kolom E: Ponsel=Pixel 8, OS=Android 15

Contoh pengujian yang telah selesai dalam template tes mandiri:

Gambar ini menunjukkan hasil pengujian contoh

Peristiwa Audio:

  • 4 jenis peristiwa audio yang diuji dan aplikasi pengujian yang direkomendasikan adalah:

    1. Panggilan:
      1. Aplikasi telepon bawaan.
    2. VoIP: Semua Aplikasi VoIP akan berfungsi, seperti:
      1. Aplikasi pengujian pengalihan Audio.
      2. FB Messenger.
      3. Baris.
      4. WhatsApp.
      5. Google Meet.
      6. Google Meet.
    3. Media: Pemutar audio apa pun dapat digunakan, seperti:
      1. Aplikasi pengujian pengalihan Audio.
      2. YouTube Music.
      3. Apple Music.
      4. Spotify.
      5. Google Podcasts.
    4. Game:
      1. Aplikasi pengujian Tombol audio.

Informasi Debug:

  • Notifikasi diaktifkan setelah bergabung dengan grup fp-sass-partner-test. Berikut beberapa contohnya:

    • Notifikasi status terbaru:

    Gambar 1: Kode ini menampilkan pesan &#39;notifikasi status terbaru&#39;.

    • Tidak ada notifikasi tombol akses:

    Gambar 2: Ini menampilkan pesan &#39;notifikasi tidak dialihkan&#39;.

    • Mengalihkan notifikasi latensi:

    Gambar 3: Tindakan ini menampilkan pesan &#39;notifikasi latensi switch&#39;.

Pengukuran Latensi

  • Ada dua jenis latensi tombol:
    1. Menghubungkan profil Bluetooth ke Pencari yang terputus.
      • Hal ini mencakup semua kasus SinglePoint, dan beberapa kasus MP yang Pencari targetnya (perangkat B) tidak terhubung.
    2. Mengalihkan Pencari yang terhubung aktif.
      • Ini mencakup beberapa kasus MP yang sudah terhubung dengan Pencari Target (perangkat B).
  • Ada dua cara untuk mengambil info latensi:
    1. Semua latensi dapat di-dump oleh perintah adb.
      • Lihat bagian latensi dump untuk mengetahui detailnya.
      • Perintah ini dapat memberikan dan merekam latensi setelah menyelesaikan setidaknya satu kasus pengujian.
    2. Menggunakan aplikasi Pengujian pengalihan audio.
      • Aplikasi yang berjalan di Pencari target akan menampilkan latensi setelah beralih.
      • Jika tidak ada tombol, aplikasi akan menampilkan alasan 'tidak ada tombol'.

Aplikasi Pengujian Tombol Audio:

  • Menggunakan aplikasi untuk memicu peristiwa audio VoIP/Media/Game selama pengujian mandiri akan menyederhanakan penyiapan pengujian dan mengurangi latensi peristiwa Pencari.
    • Versi terbaru dapat didownload di sini.
    • Pengujian VoIP Audio LE memerlukan kebijakan yang diaktifkan secara manual: > adb root > adb shell settings put global hidden_api_policy 1 > adb reboot
  • Penginstalan Aplikasi:
    • Salin apk ke ponsel pengujian dan buka.
    • Atau, gunakan adb install audio_test_app.apk.
  • Jika Anda melihat dialog yang meminta akses notifikasi:
    1. klik "OK"
    2. Pilih "FP SASS test" di daftar aplikasi
    3. Izinkan akses notifikasi.

Ringkasan Aplikasi:

Gambar ini adalah contoh 
aplikasi yang sedang berjalan

  • Penyedia target

    • Tombol ini akan menampilkan daftar perangkat Bluetooth yang tersambung saat diklik. Pilih salah satu yang ingin Anda uji.
    • Tombol Hubungkan dan Putuskan Sambungan berfungsi seperti tombol di detail perangkat setelan Bluetooth.
  • Status saat ini

    • Kolom ini menunjukkan status koneksi terakhir yang diterima Pencari dari Penyedia menggunakan iklan BLE atau aliran peristiwa.
    • Notifikasi debug pengalihan audio juga ditampilkan di sini.
  • Jenis pencari

    • Opsi ini digunakan untuk mengalihkan perangkat di antara streaming audio.

Jenis audio

Klasik dengan A2DP+HFP

  • VoIP
    • Memilih mode ini akan mengubah mode audio menjadi AudioManager.MODE_IN_COMMUNICATION dan memanggil AudioManager.startBluetoothSco, lalu memutar audio dengan USAGE_VOICE_COMMUNICATION.
    • Jenis streaming adalah STREAM_VOICE_CALL.
    • Status koneksi penyedia harus beralih ke CONNECTED_HFP dalam 5 detik.
  • Media
    • Memilih mode ini akan memutar audio yang mendukung AVRCP. Jenis penggunaan audio adalah: USAGE_MEDIA.
    • Status koneksi penyedia akan beralih ke CONNECTED_A2DP_WITH_AVRCP dalam waktu 5 detik.
    • Status koneksi dapat beralih sebentar ke CONNECTED_A2DP_ONLY saat dimulai atau dihentikan.
  • Game
    • Memilih mode ini akan memutar audio yang tidak mendukung AVRCP. Jenis penggunaan audio adalah: USAGE_GAME.
    • Status koneksi penyedia akan beralih ke CONNECTED_A2DP_ONLY dalam 5 detik.

BLE dengan LE Audio

  • VoIP

    • Memilih mode ini akan mengubah mode audio menjadi AudioManager.MODE_IN_COMMUNICATION dan memutar audio dengan USAGE_VOICE_COMMUNICATION.
    • Jenis streaming adalah STREAM_VOICE_CALL.
    • Status koneksi penyedia akan beralih ke CONNECTED_LE_AUDIO_CALL dalam waktu 5 detik.
  • Media

    • Memilih mode ini akan memutar audio dengan jenis streaming sebagai STREAM_MUSIC. Jenis penggunaan audio adalah: USAGE_MEDIA.
    • Status koneksi penyedia akan beralih ke CONNECTED_LE_AUDIO_MEDIA_WITH_CONTROL dalam waktu 5 detik.
    • Status koneksi mungkin beralih sebentar ke CONNECTED_LE_AUDIO_MEDIA_WITHOUT_CONTROL saat dimulai atau dihentikan.
  • Game

    • Memilih mode ini akan memutar audio yang tidak dapat dikontrol langsung oleh pengguna. Jenis penggunaan audio adalah: USAGE_GAME.
    • Status koneksi penyedia akan beralih ke CONNECTED_LE_AUDIO_MEDIA_WITHOUT_CONTROL dalam waktu 5 detik.
  • Tombol Putar dan Berhenti

    • Tombol PUTAR dan STOP memulai atau menghentikan audio.
  • Hasil tombol akses

    • Kolom ini menampilkan latensi aktif Connect dan Switch. Fungsi ini juga menampilkan alasan penolakan tombol jika peristiwa audio dipicu tetapi tombol tidak beralih.
    • Latensi diukur dalam milidetik (ms).
    • Secara umum, latensi diukur dari awal pemicu pengalihan Audio hingga diterimanya profil BT yang terhubung atau peristiwa Notifikasi multipoint.
    • Tombol yang dipicu penyedia mengukur latensi dari awal audio.

Latensi Dump

  • Perintah berikut memungkinkan pengguna merekam pengukuran latensi saat menjalankan pengujian manual: adb shell dumpsys activity service com.google.android.gms/.nearby.discovery.service.DiscoveryService
    • Pengukuran latensi ditampilkan di bagian SwitchHistory NearbyDeviceManager:
            NearbyDeviceManager
              Nearby Sass device count: 1
                Sass device - address:XX:XX:XX:XX:XX:XX, name:Googler's Pixel Buds, accountKey:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, modelId:6edaf7
                  SwitchHistory
                    15:30:21:166 - 15:30:25:201, latency 3035ms, Succeed, SASS_TRIGGERED_CONNECT, SASS switch, A2DP
                    15:34:58:568 - 15:34:58:568, latency 0ms, Succeed, SWITCH_ACTIVE_TO_SELF, SASS switch, HFP
                    15:36:26:615 - 15:36:31:603, latency 1988ms, Succeed, SASS_TRIGGERED_CONNECT, SASS switch, A2DP
                    15:37:56:108 - 15:37:56:250, latency 142ms, Succeed, SWITCH_ACTIVE_TO_SELF, SASS switch, A2DP"
  • Setiap tombol yang tidak dapat diukur GmsCore (misalnya switch aktif untuk HFP) akan dicatat sebagai latensi 0 md.

Referensi pola log:

Contoh log dari uji latensi

Masalah Umum:

Berikut adalah bug umum yang disebabkan oleh Pencari Kerja:

  1. Pengalihan audio game salah.
    • Ponsel Samsung akan menyetel status koneksi ke CONNECTED_A2DP_WITH_AVRCP, bukan CONNECTED_A2DP_ONLY saat bermain game.
    • Beberapa game (seperti Candy crush) dapat memutar ulang musik latar belakang dan memicu peristiwa audio baru tanpa input pengguna. Ponsel yang terhubung dapat terus mengganti audio di setiap ponsel yang membuka game.