Dialer dilengkapi dengan kerangka debugging dan pengujian terintegrasi yang memungkinkan Anda memvalidasi fitur aplikasi Dialer tanpa memerlukan perangkat siap panggilan. Hal ini menghilangkan kebutuhan akan Bluetooth dan telepon yang terhubung dengan layanan seluler. Kerangka Pengujian Dialer (DTF) ini menyederhanakan proses berikut:
- Menyiapkan perangkat nyata untuk memvalidasi ide dengan cepat biasanya menghabiskan waktu.
- Pengujian fitur multi-panggilan memerlukan setidaknya tiga ponsel yang dilengkapi kartu SIM, dua di antaranya hanya digunakan untuk melakukan panggilan.
- Men-debug Dialer dan dependensinya.
Karena fungsionalitas Dialer bergantung pada beberapa tumpukan teknologi termasuk Telecom, Telephony, dan Bluetooth Hands Free Profile (HFP), bug dan masalah yang muncul pada dependensi tersebut dapat menyebabkan kegagalan Dialer. DTF memungkinkan Dialer berjalan secara independen dari dependensi ini.
Fitur
DTF menyediakan fitur-fitur berikut:
- Penempatan panggilan. Tempatkan dan terima panggilan tanpa memerlukan perangkat siap panggilan melalui terminal dengan siaran Android Debug Bridge (adb) .
- Panggilan tiruan. Fungsionalitas panggilan diejek. Ini termasuk menahan, mematikan suara, menggabungkan, dan memutuskan sambungan.
Gunakan DTF
Catatan: DTF hanya tersedia di Android 11 atau lebih tinggi.
Untuk menggunakan DTF:
- Bangun dan instal varian build
CarDialerAppForTesting
sebagai berikut:cd %rRepoRoot%/packages/apps/Car/Dialer m CarDialerAppForTesting adb install %rRepoRoot%/out/target/product/%buildTarget%/system/priv-app/CarDialerAppForTesting/CarDialerAppForTesting.apk
Hasilnya,
CarDialerAppForTesting
menggantikan aplikasi Dialer asli pada perangkat pengujian.CarDialerAppForTesting
tidak berfungsi dengan perangkat nyata. Untuk menguji dengan perangkat sebenarnya, instal ulangCarDialerApp.apk
.
Perintah
Perintah adb berikut hanya berfungsi setelah Dialer diluncurkan untuk pertama kalinya dan memerlukan inisialisasi penerima siaran. Setelah meluncurkan Dialer, perangkat Bluetooth palsu harus terhubung. Gunakan perintah berikut (Pengaturan) Hubungkan perangkat untuk melakukannya.
(Pengaturan) Hubungkan perangkat
Membuat koneksi Bluetooth palsu ke Dialer dan harus dipanggil terlebih dahulu untuk mengaktifkan akses ke semua perintah terkait panggilan.
Untuk menghubungkan perangkat:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "connect"
Catatan: Hanya setelah perangkat Bluetooth palsu terhubung, setiap perintah berikut dapat digunakan.
Lakukan panggilan keluar
Untuk melakukan panggilan keluar:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "addCall" --es "id" "4085524874"
Menerima panggilan masuk
Untuk menerima panggilan masuk:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "rcvCall" --es "id" "4085524874"
Akhiri panggilan
Untuk mengakhiri panggilan:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "endCall" --es "id" "4085524874"
Tahan panggilan saat ini
Untuk menahan panggilan saat ini:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "holdCall"
Lepaskan panggilan saat ini
Untuk menghentikan panggilan saat ini:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "unholdCall"
Gabungkan panggilan
Gabungkan panggilan primer dan sekunder menjadi panggilan konferensi. Perintah ini hanya berfungsi bila ada panggilan primer dan sekunder. Panggilan konferensi yang ada dianggap sebagai satu kesatuan.
Untuk menggabungkan panggilan:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "unholdCall"
Hapus semua panggilan
Untuk menghapus semua panggilan dalam daftar panggilan:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "clearAll"
Pembuatan emulator
Terkadang pengembang mungkin ingin menguji perubahan UI pada emulator. Dalam kasus seperti itu, CarDialerAppEmulatorBuild
menyediakan pengaturan yang disederhanakan dan fungsionalitas terbatas dibandingkan dengan DTF yang lebih bertenaga.
Data uji
Saat Dialer diluncurkan, halaman kesalahan Bluetooth dilewati dan konten utama TelecomActivity
ditampilkan. Kontak dan log panggilan ditampilkan di perangkat lokal. Pengembang dapat menggunakan aplikasi Kontak stok untuk membuat kontak uji atau mengimpor file .vcf
.
Panggil mengejek
Untuk meniru panggilan masuk, gunakan Android Emulator untuk mengirim perintah Telnet. Untuk mempelajari lebih lanjut, lihat Menjalankan aplikasi di Android Emulator dan Mengirim perintah konsol Emulator .
telnet localhost 5554 gsm call xxx-xxx-xxxx
Melakukan panggilan telepon di aplikasi Dialer atau menyiarkan maksud panggilan akan memulai panggilan keluar.
adb shell am start -a android.intent.action.CALL tel:xxx-xxx-xxxx