Dialer jest wyposażony w zintegrowaną platformę debugowania i testowania, która umożliwia sprawdzanie funkcji aplikacji Dialer bez konieczności posiadania urządzeń gotowych do połączenia. Eliminuje to potrzebę korzystania z Bluetooth i podłączonych telefonów z usługą komórkową. Ta struktura testowania dialera (DTF) upraszcza następujące procesy:
- Konfigurowanie prawdziwego urządzenia do szybkiego sprawdzania pomysłów zwykle zajmuje czas.
- Do testowania funkcji połączeń wielokrotnych wymagane są co najmniej trzy telefony wyposażone w karty SIM, z których dwa służą wyłącznie do wykonywania połączeń.
- Debugowanie Dialera i jego zależności.
Ponieważ funkcjonalność Dialera zależy od kilku stosów technologii, w tym telekomunikacji, telefonii i profilu głośnomówiącego Bluetooth (HFP), błędy i problemy pojawiające się w tych zależnościach mogą powodować niestabilność Dialera. DTF umożliwia działanie Dialera niezależnie od tych zależności.
Cechy
DTF zapewnia następujące funkcje:
- Umieszczenie połączenia. Nawiązuj i odbieraj połączenia bez konieczności posiadania urządzenia gotowego do połączenia za pośrednictwem terminala z transmisją Android Debug Bridge (adb) .
- Próbne połączenia. Funkcja połączeń jest wyśmiewana. Obejmuje to wstrzymywanie, wyciszanie, łączenie i rozłączanie.
Użyj DTF-a
Uwaga: DTF jest dostępny tylko w systemie Android 11 lub nowszym.
Aby użyć DTF:
- Zbuduj i zainstaluj wariant kompilacji
CarDialerAppForTesting
w następujący sposób:cd %rRepoRoot%/packages/apps/Car/Dialer m CarDialerAppForTesting adb install %rRepoRoot%/out/target/product/%buildTarget%/system/priv-app/CarDialerAppForTesting/CarDialerAppForTesting.apk
W rezultacie
CarDialerAppForTesting
zastępuje oryginalną aplikację Dialer na urządzeniu testowym.CarDialerAppForTesting
nie działa z prawdziwymi urządzeniami. Aby przetestować na prawdziwym urządzeniu, zainstaluj ponownieCarDialerApp.apk
.
Polecenia
Poniższe polecenia adb działają dopiero po pierwszym uruchomieniu Dialera i wymagają inicjalizacji odbiornika rozgłoszeniowego. Po uruchomieniu Dialera należy podłączyć fałszywe urządzenie Bluetooth. Aby to zrobić, użyj następującego polecenia (Konfiguracja) Podłącz urządzenie.
(Konfiguracja) Podłącz urządzenie
Nawiązuje fałszywe połączenie Bluetooth z Dialerem i należy je najpierw wywołać, aby umożliwić dostęp do wszystkich poleceń związanych z połączeniami.
Aby podłączyć urządzenie:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "connect"
Uwaga: każde z poniższych poleceń można zastosować dopiero po podłączeniu fałszywego urządzenia Bluetooth.
Nawiąż połączenie wychodzące
Aby nawiązać połączenie wychodzące:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "addCall" --es "id" "4085524874"
Odbierz połączenie przychodzące
Aby odebrać połączenie przychodzące:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "rcvCall" --es "id" "4085524874"
Zakończ połączenie
Aby zakończyć połączenie:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "endCall" --es "id" "4085524874"
Zatrzymaj bieżące połączenie
Aby zawiesić bieżące połączenie:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "holdCall"
Wznów bieżące połączenie
Aby zawiesić bieżące połączenie:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "unholdCall"
Połącz rozmowy
Połącz połączenia główne i dodatkowe w połączenie konferencyjne. To polecenie działa tylko wtedy, gdy istnieją zarówno wywołania podstawowe, jak i dodatkowe. Istniejące połączenie konferencyjne jest traktowane jako pojedyncza całość.
Aby połączyć rozmowy:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "unholdCall"
Usuń wszystkie połączenia
Aby usunąć wszystkie połączenia z listy połączeń:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "clearAll"
Budowa emulatora
Czasami programiści mogą chcieć przetestować zmiany interfejsu użytkownika na emulatorze. W takich przypadkach CarDialerAppEmulatorBuild
zapewnia uproszczoną konfigurację i ograniczoną funkcjonalność w porównaniu do mocniejszego DTF.
Dane testowe
Po uruchomieniu Dialera strona błędu Bluetooth jest pomijana i wyświetlana jest główna zawartość TelecomActivity
. Kontakty i dzienniki połączeń są wyświetlane na urządzeniu lokalnym. Programiści mogą używać standardowej aplikacji Kontakty do tworzenia kontaktów testowych lub importowania pliku .vcf
.
Nazwij kpinę
Aby wyśmiewać połączenia przychodzące, użyj emulatora Androida do wysyłania poleceń Telnet. Aby dowiedzieć się więcej, zobacz Uruchamianie aplikacji na emulatorze Androida i Wysyłanie poleceń konsoli emulatora .
telnet localhost 5554 gsm call xxx-xxx-xxxx
Nawiązanie połączenia telefonicznego w aplikacji Dialer lub rozgłaszanie zamiaru połączenia rozpoczyna połączenie wychodzące.
adb shell am start -a android.intent.action.CALL tel:xxx-xxx-xxxx