Zanim udostępnisz aplikację na Androida użytkownikom, zawsze przetestuj ją na prawdziwym urządzeniu. Na tej stronie opisujemy, jak skonfigurować środowisko deweloperskie i urządzenie z Androidem na potrzeby testowania i debugowania za pomocą połączenia Android Debug Bridge (ADB).
Konfigurowanie urządzenia na potrzeby programowania
Zanim zaczniesz debugować na urządzeniu, zdecyduj, czy chcesz połączyć się z nim za pomocą kabla USB czy Wi-Fi. Następnie wykonaj te czynności:
Na urządzeniu otwórz aplikację Ustawienia, wybierz Opcje programisty, a następnie włącz Debugowanie USB (jeśli dotyczy).
Skonfiguruj system, aby wykrywał urządzenie.
- ChromeOS: nie wymaga dodatkowej konfiguracji.
- macOS: nie wymaga dodatkowej konfiguracji.
- Windows: zainstaluj sterownik USB dla ADB (w odpowiednich przypadkach). Przewodnik instalacji i linki do sterowników OEM znajdziesz w artykule Instalowanie sterowników USB OEM.
Ubuntu Linux: skonfiguruj te ustawienia:
- Każdy użytkownik, który chce korzystać z ADB, musi należeć do grupy
plugdev
. Jeśli zobaczysz komunikat o błędzie informujący, że nie należysz do grupyplugdev
, dodaj się do niej za pomocą tego polecenia:
sudo usermod -aG plugdev $LOGNAME
Grupy są aktualizowane tylko podczas logowania, więc aby ta zmiana została zastosowana, musisz się wylogować. Po ponownym zalogowaniu możesz użyć
id
, aby sprawdzić, czy należysz do grupyplugdev
.- W systemie muszą być zainstalowane
udev
reguły obejmujące urządzenie. Pakietandroid-sdk-platform-tools-common
zawiera domyślny zestaw regułudev
dla urządzeń z Androidem, który jest utrzymywany przez społeczność. Aby go zainstalować, użyj tego polecenia:
apt-get install android-sdk-platform-tools-common
- Każdy użytkownik, który chce korzystać z ADB, musi należeć do grupy
Łączenie z urządzeniem za pomocą USB
Po skonfigurowaniu i podłączeniu urządzenia przez USB kliknij Uruchom
w Android Studio, aby skompilować i uruchomić aplikację na urządzeniu.
Możesz też użyć adb
, aby wydać polecenia, jak poniżej:
- Sprawdź, czy urządzenie jest połączone, uruchamiając polecenie
adb devices
z kataloguandroid_sdk/platform-tools/
. Jeśli urządzenie jest połączone, zobaczysz je na liście. - Wydaj dowolne
adb
polecenie z flagą-d
, aby kierować reklamy na swoje urządzenie.
Łączenie z urządzeniem za pomocą Wi-Fi
Android 11 i nowsze wersje obsługują wdrażanie i debugowanie aplikacji bezprzewodowo z stacji roboczej za pomocą Android Debug Bridge (ADB). Możesz na przykład wdrożyć aplikację z możliwością debugowania na wielu urządzeniach zdalnych bez fizycznego podłączania urządzenia przez USB i rozwiązywania typowych problemów z połączeniem USB, takich jak instalacja sterownika.
Aby używać debugowania bezprzewodowego, musisz sparować urządzenie ze stacją roboczą za pomocą kodu parowania. Aby rozpocząć, wykonaj te czynności:
- Sprawdź, czy stacja robocza i urządzenie są połączone z tą samą siecią bezprzewodową.
- Upewnij się, że na urządzeniu jest zainstalowany Android 11 lub nowszy. Więcej informacji znajdziesz w artykule Sprawdzanie i aktualizowanie wersji Androida.
- Sprawdź, czy masz zainstalowaną najnowszą wersję Android Studio. Możesz go pobrać stąd.
- Na stacji roboczej zaktualizuj narzędzia platformy SDK do najnowszej wersji.
Aby połączyć się z urządzeniem, wykonaj te czynności:
- Otwórz Android Studio i w menu konfiguracji uruchamiania wybierz Pair Devices Using Wi-Fi (Parowanie urządzeń przez Wi-Fi).
Rysunek 1. menu Konfiguracje uruchamiania.
Rysunek 2. Okno dialogowe do parowania urządzeń za pomocą kodu QR lub kodu parowania. - Włącz opcje programisty na urządzeniu.
- Włącz debugowanie przez Wi-Fi na urządzeniu.
Rysunek 3. Ustawienie Debugowanie bezprzewodowe na telefonie Google Pixel. - Kliknij Debugowanie bezprzewodowe i sparuj urządzenie:
- Aby sparować urządzenie za pomocą kodu QR, kliknij Sparuj urządzenie za pomocą kodu QR i zeskanuj kod QR widoczny na ilustracji 2.
- Aby sparować urządzenie przy pomocy kodu parowania, w oknie Sparuj nowe urządzenia przez Wi-Fi kliknij Sparuj urządzenie przy pomocy kodu parowania. Na urządzeniu wybierz Sparuj przy użyciu kodu parowania. Pojawi się 6-cyfrowy kod. Gdy urządzenie pojawi się w oknie Parowanie urządzeń przez Wi-Fi, wpisz 6-cyfrowy kod wyświetlony na urządzeniu i kliknij Sparuj .
Rysunek 4. Przykład wpisywania 6-cyfrowego kodu parowania.
- Po sparowaniu możesz spróbować wdrożyć aplikację na urządzeniu.
Aby sparować inne urządzenie lub zapomnieć to urządzenie na stacji roboczej:
- Na urządzeniu otwórz Debugowanie bezprzewodowe.
- W sekcji Sparowane urządzenia kliknij nazwę stacji roboczej.
- Kliknij Zapomnij.
Dublowanie urządzenia
Możesz sklonować urządzenie fizyczne w oknie Uruchomione urządzenia w Androidzie Studio. Przesyłając obraz z urządzenia bezpośrednio do Androida Studio, możesz wykonywać w środowisku IDE Studio typowe działania, takie jak uruchamianie aplikacji i interakcje z nimi, obracanie ekranu, składanie i rozkładanie telefonu oraz zmienianie głośności.
Klonowanie urządzenia jest zawsze dostępne, gdy do komputera są podłączone urządzenia z włączonym debugowaniem USB lub bezprzewodowym. Możesz rozpocząć i zatrzymać dublowanie za pomocą okna Running Devices (Uruchomione urządzenia) lub Device Manager (Menedżer urządzeń) (View > Tool Windows > Device Manager [Widok > Okna narzędzi > Menedżer urządzeń]). Możesz też dostosować moment aktywacji funkcji klonowania ekranu urządzenia w jej ustawieniach (Ustawienia > Narzędzia > Klonowanie ekranu urządzenia).
Przekierowanie dźwięku
Podczas korzystania z kopiowania ekranu urządzenia możesz przekierować dźwięk z podłączonych urządzeń fizycznych na głośniki lub słuchawki komputera. Dzięki przekierowywaniu dźwięku słuchawki mogą być połączone z komputerem, a Ty możesz słuchać dźwięku z komputera i połączonego telefonu bez konieczności ręcznego przełączania połączenia między urządzeniami. Aby włączyć przekierowywanie dźwięku, kliknij Plik (Android Studio na macOS) > Ustawienia > Narzędzia > Klonowanie urządzenia i wybierz Przekieruj dźwięk z urządzeń lokalnych. Pamiętaj, że w przypadku urządzeń Laboratorium Firebase z Androidem 12 lub nowszym dźwięk jest zawsze przekierowywany niezależnie od ustawień.
Znane problemy
Niektóre urządzenia mogą nie być w stanie kodować z szybkością transmisji wystarczającą do obsługi dublowania urządzenia. W takich sytuacjach w oknie Uruchomione urządzenia może pojawić się błąd, a w dziennikach mogą wystąpić podobne wpisy:
2023-06-01 15:32:22,675 [ 56094] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - Too many video encoder errors:
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - encoder: c2.android.vp8.encoder
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - mime type: video/x-vnd.on2.vp8
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max resolution: 640x640
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - min resolution: 2x2
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - alignment: 2x2
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max frame rate: 960
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max frame rate for 288x640: 960
2023-06-01 15:32:22,870 [ 56289] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max bitrate: 20000000
2023-06-01 15:32:22,871 [ 56290] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - terminated with code 1
Informacje na temat ochrony prywatności
W zależności od ustawień dublowania urządzenia Android Studio może automatycznie uruchamiać dublowanie urządzenia w przypadku każdego podłączonego i sparowanego urządzenia. Może to spowodować ujawnienie informacji na urządzeniach połączonych za pomocą polecenia adb tcpip
, ponieważ informacje i polecenia dotyczące dublowania są przesyłane przez niezaszyfrowany kanał. Dodatkowo Android Studio używa niezaszyfrowanego kanału do komunikacji z serwerem adb, więc informacje o kopiowaniu ekranu mogą zostać przechwycone przez innych użytkowników na komputerze hosta.
Rozwiązywanie problemów z połączeniem urządzenia
Jeśli urządzenie nie łączy się z Androidem Studio, wykonaj te czynności, aby rozwiązać problem:
Rozwiązywanie problemów za pomocą asystenta połączeń
Asystent połączenia zawiera szczegółowe instrukcje, które pomogą Ci skonfigurować i używać urządzenia za pomocą połączenia ADB.
Aby uruchomić asystenta, kliknij Narzędzia > Rozwiązywanie problemów z połączeniami urządzeń.
Asystent połączeń wyświetla instrukcje, elementy sterujące w kontekście i listę połączonych urządzeń na kilku stronach w panelu Asystent. Używaj przycisków Dalej i Wstecz u dołu panelu Asystent, aby w razie potrzeby przechodzić między stronami:
- Połącz urządzenie przez USB: Asystent połączenia najpierw wyświetli prośbę o połączenie urządzenia przez USB i udostępni przycisk Skanuj ponownie urządzenia USB, za pomocą którego możesz rozpocząć nowe skanowanie podłączonych urządzeń.
- Włącz debugowanie USB: Asystent połączenia podpowie Ci, jak włączyć debugowanie USB w opcjach programisty na urządzeniu.
- Uruchom ponownie serwer ADB: jeśli nadal nie widzisz urządzenia na liście dostępnych urządzeń, na ostatniej stronie Asystenta połączenia kliknij przycisk Uruchom ponownie serwer ADB. Ponowne uruchomienie serwera ADB powoduje też ponowne skanowanie urządzeń przez ADB. Jeśli nadal nie widzisz urządzenia na liście dostępnych urządzeń, spróbuj rozwiązać problem, wykonując czynności opisane w następnej sekcji.
Rozwiązywanie problemów z połączeniem USB
Jeśli Asystent połączenia nie wykrywa urządzenia przez USB, wykonaj te czynności, aby rozwiązać problem:
Sprawdź, czy Android Studio łączy się z emulatorem Androida.
Aby sprawdzić, czy problem jest spowodowany problemem z połączeniem między Androidem Studio a emulatorem Androida:
- Otwórz Menedżera urządzeń.
- Utwórz nowe urządzenie AVD, jeśli jeszcze go nie masz.
- Uruchom emulator za pomocą AVD.
- Wykonaj jedną z tych czynności:
- Jeśli Android Studio nie może połączyć się z emulatorem, pobierz najnowsze narzędzia platformy SDK i spróbuj ponownie.
- Jeśli emulator uruchomi się prawidłowo, sprawdź kabel USB zgodnie z opisem w następnej sekcji.
Sprawdzanie kabla USB
Aby sprawdzić, czy problem jest spowodowany wadliwym kablem USB, wykonaj czynności opisane w tej sekcji.
Jeśli masz inny kabel USB:
- Podłącz urządzenie za pomocą dodatkowego kabla.
- Sprawdź, czy Asystent połączeń może teraz wykryć urządzenie.
- Jeśli urządzenie nie zostanie wykryte, spróbuj ponownie użyć głównego kabla.
- Jeśli urządzenie nadal nie jest wykrywane, załóż, że problem dotyczy urządzenia, i sprawdź, czy jest ono skonfigurowane pod kątem programowania zgodnie z opisem w następnej sekcji.
Jeśli nie masz innego kabla USB, ale masz inne urządzenie z Androidem:
- Podłącz urządzenie dodatkowe do komputera.
Jeśli Asystent połączenia wykryje urządzenie dodatkowe, załóż, że problem dotyczy urządzenia głównego, i sprawdź, czy jest ono skonfigurowane do programowania.
Jeśli urządzenie dodatkowe nie zostanie wykryte, problem może dotyczyć kabla USB.
Sprawdzanie, czy urządzenie jest skonfigurowane pod kątem programowania
Aby sprawdzić, czy problem jest spowodowany ustawieniami urządzenia, wykonaj te czynności:
- Wykonaj czynności opisane w sekcji Konfigurowanie urządzenia na potrzeby programowania.
- Jeśli to nie rozwiąże problemu, skontaktuj się z zespołem obsługi klienta producenta urządzenia, aby uzyskać pomoc. Poinformuj pracownika obsługi klienta, że urządzenie nie łączy się z Androidem Studio za pomocą ADB.
Rozwiązywanie problemów z połączeniem bezprzewodowym
Jeśli masz problemy z połączeniem bezprzewodowym z urządzeniem, wykonaj te czynności, aby rozwiązać problem:
Sprawdź, czy stacja robocza i urządzenie spełniają wymagania wstępne.
Aby spełnić wymagania wstępne dotyczące debugowania bezprzewodowego, upewnij się, że:
- Stacja robocza i urządzenie są połączone z tą samą siecią bezprzewodową.
- urządzenie ma Androida 11 lub nowszego, Więcej informacji znajdziesz w artykule Sprawdzanie i aktualizowanie wersji Androida.
- Masz najnowszą wersję Android Studio. Możesz pobrać go ze strony głównej Androida Studio.
- Na stacji roboczej masz najnowszą wersję narzędzi platformy SDK.
Sprawdzanie innych znanych problemów
Poniżej znajdziesz listę znanych obecnie problemów z debugowaniem bezprzewodowym w Android Studio oraz sposoby ich rozwiązywania:
- Nie można połączyć się z Wi-Fi: niektóre sieci Wi-Fi, np. sieci firmowe, mogą blokować połączenia P2P i uniemożliwiać połączenie przez Wi-Fi. Spróbuj połączyć się za pomocą kabla lub innej sieci Wi-Fi.
- ADB przez Wi-Fi czasami wyłącza się automatycznie: może się to zdarzyć, jeśli urządzenie przełączy się na inną sieć Wi-Fi lub rozłączy się z siecią.
Klucz bezpieczeństwa RSA
Gdy podłączysz do komputera urządzenie z Androidem 4.2.2 (API na poziomie 17) lub nowszym, system wyświetli okno z pytaniem, czy zaakceptować klucz RSA, który umożliwia debugowanie na tym komputerze. Ten mechanizm zabezpieczeń chroni urządzenia użytkowników, ponieważ debugowanie USB i inne polecenia adb
nie mogą być wykonywane, dopóki nie odblokujesz urządzenia i nie potwierdzisz okna dialogowego.