Debuguj i testuj

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:

  1. 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 ponownie CarDialerApp.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