Telepon dilengkapi dengan framework pengujian dan proses debug terintegrasi yang memungkinkan Anda memvalidasi fitur aplikasi Telepon tanpa memerlukan perangkat yang siap digunakan untuk menelepon. Hal ini meniadakan kebutuhan untuk Bluetooth dan ponsel yang terhubung dengan layanan seluler. Framework Pengujian Telepon (DTF) ini menyederhanakan proses berikut:
- Menyiapkan perangkat sungguhan untuk memvalidasi ide dengan cepat biasanya akan menghabiskan waktu.
- Pengujian fitur multi-panggilan memerlukan setidaknya tiga ponsel yang dilengkapi kartu SIM, dua yang hanya digunakan untuk melakukan panggilan.
- Melakukan debug Telepon dan dependensinya.
Karena fungsi Telepon bergantung pada beberapa technology stack, termasuk Telekomunikasi, Telepon, dan {i>Bluetooth Hands Free Profile<i} (HFP), {i>bug<i} dan masalah yang muncul dalam dependensi tersebut dapat menyebabkan kegagalan Telepon. DTF memungkinkan Telepon berjalan secara independen dari dependensi ini.
Fitur
DTF menyediakan fitur-fitur berikut:
- Penempatan panggilan. Melakukan dan menerima panggilan tanpa memerlukan perangkat yang siap pakai melalui terminal dengan Android Debug Bridge (adb) .
- Panggilan palsu. Fungsi panggilan ditiru. Tindakan ini meliputi menahan, membisukan audio, menggabungkan, dan memutuskan sambungan.
Menggunakan DTF
Catatan: DTF hanya tersedia di Android 11 atau yang lebih baru.
Untuk menggunakan DTF:
- Build 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
Oleh karena itu,
CarDialerAppForTesting
akan menggantikan aplikasi Telepon asli di perangkat pengujian.CarDialerAppForTesting
tidak berfungsi dengan perangkat sebenarnya. Untuk menguji dengan perangkat sungguhan, instal ulangCarDialerApp.apk
.
Perintah
Perintah adb berikut hanya berfungsi setelah Telepon diluncurkan untuk pertama kalinya dan memerlukan penerima siaran yang akan diinisialisasi. Setelah meluncurkan Telepon, perangkat Bluetooth palsu harus terhubung. Gunakan langkah berikut (Penyiapan) Hubungkan perintah perangkat untuk melakukannya.
(Menyiapkan) Menghubungkan perangkat
Membuat sambungan Bluetooth palsu ke Telepon dan harus dipanggil terlebih dahulu untuk mengaktifkan akses untuk semua perintah yang terkait dengan 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 gunakan perintah berikut.
Melakukan 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"
Mengakhiri panggilan
Untuk mengakhiri panggilan:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "endCall" --es "id" "4085524874"
Menahan panggilan saat ini
Untuk menangguhkan panggilan saat ini:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "holdCall"
Batalkan penahanan panggilan saat ini
Untuk menonaktifkan panggilan saat ini:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "unholdCall"
Gabungkan panggilan
Gabungkan panggilan utama dan sekunder ke dalam panggilan konferensi. Perintah ini hanya berfungsi jika keduanya terdapat panggilan utama dan sekunder. Panggilan konferensi yang ada akan dianggap sebagai panggilan entitas.
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 di daftar panggilan:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "clearAll"
Build emulator
Terkadang, developer mungkin ingin menguji perubahan UI pada emulator. Dalam kasus tersebut,
CarDialerAppEmulatorBuild
menyediakan penyiapan yang sederhana dan fungsi terbatas
dibandingkan dengan DTF yang lebih canggih.
Uji data
Saat Telepon diluncurkan, halaman error Bluetooth akan diabaikan dan konten utama
TelecomActivity
ditampilkan. Kontak dan log panggilan ditampilkan di jaringan
perangkat seluler. Pengembang dapat menggunakan aplikasi Kontak stok untuk membuat kontak pengujian atau untuk mengimpor
File .vcf
.
Mengejek panggilan
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 Telepon atau menyiarkan intent panggilan akan memulai panggilan keluar.
adb shell am start -a android.intent.action.CALL tel:xxx-xxx-xxxx