Dialer está equipado con un marco integrado de depuración y prueba que le permite validar las funciones de la aplicación Dialer sin necesidad de dispositivos listos para llamar. Esto elimina la necesidad de Bluetooth y teléfonos conectados con servicio celular. Este Dialer Testing Framework (DTF) simplifica estos procesos:
- La configuración de un dispositivo real para validar ideas rápidamente suele consumir tiempo.
- Probar las funciones de llamadas múltiples requiere al menos tres teléfonos equipados con tarjeta SIM, dos de los cuales se usan solo para realizar llamadas.
- Depuración de Dialer y sus dependencias.
Dado que la funcionalidad de Dialer depende de varias pilas de tecnología, incluidas Telecom, Telephony y Bluetooth Hands Free Profile (HFP), los errores y problemas que surgen en esas dependencias pueden causar problemas en Dialer. El DTF permite que Dialer se ejecute independientemente de estas dependencias.
Características
El DTF proporciona estas características:
- Colocación de llamadas. Realice y reciba llamadas sin la necesidad de un dispositivo listo para llamadas a través de la terminal con una transmisión de Android Debug Bridge (adb) .
- Simulacros de llamadas. Se simula la funcionalidad de llamada. Esto incluye retener, silenciar, fusionar y desconectar.
Usando el DTF
Nota: El DTF solo está disponible en Android 11 o superior.
Para usar el DTF:
- Compile e instale la variante de compilación
CarDialerAppForTesting
de la siguiente manera:cd %rRepoRoo%/packages/apps/Car/Dialer m CarDialerAppForTesting adb install %rRepoRoo%/out/target/product/%buildTarget%/system/priv-app/CarDialerAppForTesting/CarDialerAppForTesting.apk
Como resultado,
CarDialerAppForTesting
reemplaza la aplicación Dialer original en el dispositivo de prueba.CarDialerAppForTesting
no funciona con dispositivos reales. Para probar con un dispositivo real, reinstaleCarDialerApp.apk
.
Comandos
Los siguientes comandos adb funcionan solo después de iniciar Dialer por primera vez y requieren que se inicialice el receptor de transmisión. Después de iniciar Dialer, se debe conectar un dispositivo Bluetooth falso. Utilice el siguiente comando (Configuración) Conectar un dispositivo para hacerlo.
(Configuración) Conectar un dispositivo
Establece una conexión Bluetooth falsa con Dialer y debe llamarse primero para habilitar el acceso a todos los comandos relacionados con la llamada.
Para conectar un dispositivo:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "connect"
Nota: solo después de que se haya conectado un dispositivo Bluetooth falso, se pueden usar cada uno de los siguientes comandos.
Realizar una llamada saliente
Para realizar una llamada saliente:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "addCall" --es "id" "4085524874"
Recibir una llamada entrante
Para recibir una llamada entrante:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "rcvCall" --es "id" "4085524874"
Terminar una llamada
Para finalizar una llamada:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "endCall" --es "id" "4085524874"
Poner en espera la llamada actual
Para poner la llamada actual en espera:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "holdCall"
Retirar la llamada actual
Para tomar la llamada actual fuera de espera:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "unholdCall"
fusionar llamadas
Combine las llamadas principal y secundaria en una llamada de conferencia. Este comando funciona solo cuando existen las llamadas primaria y secundaria. Una llamada de conferencia existente se considera como una sola entidad.
Para fusionar llamadas:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "unholdCall"
Borrar todas las llamadas
Para eliminar todas las llamadas de la lista de llamadas:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "clearAll"
compilación del emulador
A veces, los desarrolladores pueden querer probar los cambios de la interfaz de usuario en un emulador. En tales casos, CarDialerAppEmulatorBuild
proporciona una configuración simplificada y una funcionalidad limitada en comparación con el DTF más potente.
Datos de prueba
Cuando se inicia Dialer, se pasa por alto la página de error de Bluetooth y se muestra el contenido principal de TelecomActivity
. Los contactos y los registros de llamadas se muestran en el dispositivo local. Los desarrolladores pueden usar la aplicación Contactos de stock para crear contactos de prueba o importar un archivo .vcf
.
llamada burlona
Para simular llamadas entrantes, use Android Emulator para enviar comandos Telnet. Para obtener más información, consulte Ejecutar aplicaciones en el emulador de Android y Enviar comandos de la consola del emulador .
telnet localhost 5554 gsm call xxx-xxx-xxxx
Realizar una llamada telefónica en la aplicación Dialer o transmitir una intención de llamada inicia una llamada saliente.
adb shell am start -a android.intent.action.CALL tel:xxx-xxx-xxxx