Dialer ma zintegrowaną platformę debugowania i testowania, która pozwala weryfikować funkcje aplikacji Telefon bez konieczności używania urządzeń obsługujących połączenia. Dzięki temu nie trzeba w przypadku Bluetootha i telefonów połączonych z siecią komórkową. DTF (This Dialer Testing Framework) upraszcza te procesy:
- Skonfigurowanie prawdziwego urządzenia do szybkiej weryfikacji pomysłów zwykle zajmuje dużo czasu.
- Do testowania funkcji wielokrotnych połączeń potrzebne są co najmniej trzy telefony z kartą SIM, które służą wyłącznie do nawiązywania połączeń.
- Debugowanie Telefonu i jego zależności.
Ponieważ działanie aplikacji Dialer zależy od kilku stosu technologicznego, w tym telekomunikacji, telefonii, i Bluetooth Hands Free Profile (HFP), błędy i problemy pojawiające się w tych zależnościach mogą niestabilności telefonu. DTF umożliwia działanie aplikacji Dialer niezależnie od tych zależności.
Funkcje
Format DTF zapewnia te funkcje:
- Miejsce docelowe połączenia. Nawiązuj i odbieraj połączenia bez konieczności korzystania z obsługującego połączenia telefoniczne za pomocą terminala Android Debug Bridge (adb) transmisję.
- Imitacje rozmów. Funkcja nawiązywania połączeń jest udawana. Obejmuje to przytrzymywanie, wyciszanie, scalanie i rozłączanie treści.
Korzystanie z trybu DTF
Uwaga: plik DTF jest dostępny tylko na Androidzie 11 i nowszych.
Aby użyć pliku DTF:
- Utwórz i zainstaluj wariant kompilacji
CarDialerAppForTesting
w ten sposób:cd %rRepoRoot%/packages/apps/Car/Dialer m CarDialerAppForTesting adb install %rRepoRoot%/out/target/product/%buildTarget%/system/priv-app/CarDialerAppForTesting/CarDialerAppForTesting.apk
Dlatego
CarDialerAppForTesting
zastępuje na urządzenia testowego.CarDialerAppForTesting
nie działa na prawdziwych urządzeniach. Aby przeprowadzić test na prawdziwym urządzeniu, i ponownie zainstalujCarDialerApp.apk
.
Polecenia
Poniższe polecenia adb działają tylko po pierwszym uruchomieniu Telefonu i wymagają odbiornika, który ma zostać zainicjowany. Po uruchomieniu Telefonu fałszywe urządzenie Bluetooth musi być połączone. Aby to zrobić, skorzystaj z poniższego polecenia (Konfiguracja) Podłącz urządzenie.
(Konfiguracja) Podłącz urządzenie
Nawiązuje fałszywe połączenie Bluetooth z Telefonem i musi zostać wywołane jako pierwsze, aby umożliwić dostęp do wszystkich poleceń powiązanych z połączeniem.
Aby podłączyć urządzenie:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "connect"
Uwaga: dopiero po podłączeniu fałszywego urządzenia Bluetooth każde z tych urządzeń tych poleceń.
Wykonywanie połączenia wychodzącego
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"
Kończenie połączenia
Aby zakończyć połączenie:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "endCall" --es "id" "4085524874"
Wstrzymaj 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"
Wstrzymaj bieżące połączenie
Aby wznowić bieżące połączenie:
adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "unholdCall"
Scal połączenia
Scal połączenie podstawowe i dodatkowe w połączenie konferencyjne. To polecenie działa tylko wtedy, gdy zarówno między wywołaniami głównymi i dodatkowymi. Istniejące połączenie konferencyjne jest traktowane jako pojedyncze podmiotu zabezpieczeń.
Aby scalić połączenia:
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"
Kompilacja emulatora
Czasami deweloperzy mogą chcieć przetestować zmiany interfejsu użytkownika za pomocą emulatora. W takich przypadkach
CarDialerAppEmulatorBuild
oferuje uproszczoną konfigurację i ograniczoną funkcjonalność
w porównaniu z bardziej zaawansowanymi plikami DTF.
Dane testowe
Po uruchomieniu Telefonu strona błędu Bluetooth jest pomijana, a główna zawartość
Wyświetlono: TelecomActivity
. Kontakty i rejestry połączeń są wyświetlane lokalnie
urządzenia. Deweloperzy mogą używać standardowej aplikacji Kontakty do tworzenia kontaktów testowych oraz importowania
.vcf
.
Naśmiewanie się z połączeń
Aby imitować połączenia przychodzące, użyj emulatora Androida do wysyłania poleceń Telnet. Więcej informacji: Uruchamianie aplikacji przy użyciu emulatora Androida oraz Wyślij polecenia konsoli emulatora.
telnet localhost 5554 gsm call xxx-xxx-xxxx
Nawiązanie połączenia w aplikacji Telefon lub nadanie intencji połączenia powoduje rozpoczęcie połączenia wychodzącego.
adb shell am start -a android.intent.action.CALL tel:xxx-xxx-xxxx