Dialer è dotato di un framework integrato di debug e test che ti consente di convalidare le funzionalità dell'app Dialer senza la necessità di dispositivi pronti per le chiamate. Ciò elimina la necessità del Bluetooth e dei telefoni connessi con servizio cellulare. Questo Dialer Testing Framework (DTF) semplifica questi processi:
- Configurare un dispositivo reale per convalidare rapidamente le idee in genere richiede tempo.
- Per testare le funzionalità multi-chiamata sono necessari almeno tre telefoni dotati di scheda SIM, due dei quali utilizzati solo per effettuare chiamate.
- Debug di Dialer e delle sue dipendenze.
Poiché la funzionalità di Dialer dipende da diversi stack tecnologici tra cui Telecomunicazioni, Telefonia e Profilo vivavoce Bluetooth (HFP), bug e problemi che si verificano in tali dipendenze possono causare instabilità di Dialer. Il DTF consente a Dialer di funzionare indipendentemente da queste dipendenze.
Caratteristiche
Il DTF fornisce queste funzionalità:
- Posizionamento delle chiamate. Effettua e ricevi chiamate senza la necessità di un dispositivo pronto per le chiamate tramite il terminale con una trasmissione Android Debug Bridge (adb) .
- Chiamate finte. La funzionalità delle chiamate viene derisa. Ciò include il mantenimento, il silenziamento, l'unione e la disconnessione.
Usa il DTF
Nota: il DTF è disponibile solo in Android 11 o versioni successive.
Per utilizzare il DTF:
- Crea e installa la variante di build
CarDialerAppForTesting
come segue:cd %rRepoRoot%/packages/apps/Car/Dialer m CarDialerAppForTesting adb install %rRepoRoot%/out/target/product/%buildTarget%/system/priv-app/CarDialerAppForTesting/CarDialerAppForTesting.apk
Di conseguenza,
CarDialerAppForTesting
sostituisce l'app Dialer originale sul dispositivo di prova.CarDialerAppForTesting
non funziona con dispositivi reali. Per testare con un dispositivo reale, reinstallareCarDialerApp.apk
.
Comandi
I seguenti comandi adb funzionano solo dopo il primo avvio di Dialer e richiedono l'inizializzazione del ricevitore di trasmissione. Dopo aver avviato Dialer, è necessario connettere un falso dispositivo Bluetooth. Utilizzare il seguente comando (Configurazione) Connetti un dispositivo per farlo.
(Configurazione) Connettere un dispositivo
Stabilisce una falsa connessione Bluetooth con Dialer e deve essere chiamato prima per consentire l'accesso a tutti i comandi relativi alla chiamata.
Per connettere un dispositivo:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "connect"
Nota: solo dopo aver collegato un falso dispositivo Bluetooth è possibile utilizzare ciascuno dei seguenti comandi.
Effettua una chiamata in uscita
Per effettuare una chiamata in uscita:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "addCall" --es "id" "4085524874"
Ricevi una chiamata in arrivo
Per ricevere una chiamata in arrivo:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "rcvCall" --es "id" "4085524874"
Termina una chiamata
Per terminare una chiamata:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "endCall" --es "id" "4085524874"
Metti in attesa la chiamata corrente
Per mettere in attesa la chiamata corrente:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "holdCall"
Riprendi la chiamata corrente
Per mettere in attesa la chiamata corrente:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "unholdCall"
Unisci le chiamate
Unisci le chiamate primarie e secondarie in una chiamata in conferenza. Questo comando funziona solo quando esistono sia la chiamata primaria che quella secondaria. Una chiamata in conferenza esistente è considerata una singola entità.
Per unire le chiamate:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "unholdCall"
Cancella tutte le chiamate
Per rimuovere tutte le chiamate dall'elenco chiamate:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "clearAll"
Creazione dell'emulatore
A volte gli sviluppatori potrebbero voler testare le modifiche dell'interfaccia utente su un emulatore. In questi casi, CarDialerAppEmulatorBuild
fornisce una configurazione semplificata e funzionalità limitate rispetto al più potente DTF.
Dati di test
Quando viene avviato Dialer, la pagina di errore Bluetooth viene ignorata e viene visualizzato il contenuto principale di TelecomActivity
. I contatti e i registri delle chiamate vengono visualizzati sul dispositivo locale. Gli sviluppatori possono utilizzare l'app Contatti standard per creare contatti di prova o importare un file .vcf
.
Chiamata beffarda
Per simulare le chiamate in entrata, utilizza l'emulatore Android per inviare comandi Telnet. Per ulteriori informazioni, consulta Eseguire app sull'emulatore Android e inviare comandi della console dell'emulatore .
telnet localhost 5554 gsm call xxx-xxx-xxxx
Effettuando una chiamata nell'app Dialer o trasmettendo un intento di chiamata si avvia una chiamata in uscita.
adb shell am start -a android.intent.action.CALL tel:xxx-xxx-xxxx