Uruchamianie aplikacji na urządzeniu sprzętowym

Przed udostępnieniem aplikacji na Androida zawsze przetestuj ją na prawdziwym urządzeniu. Na tej stronie dowiesz się, jak skonfigurować środowisko programistyczne i urządzenie z Androidem do testowania i debugowania przez połączenie Android Debug Bridge (ADB).

Konfigurowanie urządzenia na potrzeby programowania

Zanim zaczniesz debugować urządzenie, zdecyduj, czy chcesz się z nim połączyć kablem USB czy przez Wi-Fi. Następnie:

  1. Na urządzeniu otwórz aplikację Ustawienia, wybierz Opcje programisty i włącz Debugowanie USB (w razie potrzeby).

  2. Skonfiguruj system w taki sposób, aby wykrywał urządzenie.

    • ChromeOS: nie jest wymagana dodatkowa konfiguracja.
    • macOS: nie jest wymagana dodatkowa konfiguracja.
    • Windows: zainstaluj sterownik USB dla ADB (jeśli jest dostępny). Przewodnik instalacji i linki do sterowników OEM znajdziesz w artykule Instalowanie sterowników USB OEM.
    • Ubuntu Linux: skonfiguruj te elementy:

      • Każdy użytkownik, który chce używać ADB, musi należeć do grupy plugdev. Jeśli zobaczysz komunikat o błędzie informujący, że nie jesteś w grupie plugdev, dodaj się do niej, używając następującego polecenia:
      sudo usermod -aG plugdev $LOGNAME
      

      Grupy są aktualizowane tylko podczas logowania, więc aby zmiana zaczęła obowiązywać, musisz się wylogować. Gdy zalogujesz się z powrotem, możesz użyć adresu id, aby sprawdzić, czy należysz do grupy plugdev.

      • W systemie muszą być zainstalowane udev reguły, które obejmują urządzenie. Pakiet android-sdk-platform-tools-common zawiera obsługiwany przez społeczność domyślny zestaw reguł udev dla urządzeń z Androidem. Aby ją zainstalować, użyj tego polecenia:
      apt-get install android-sdk-platform-tools-common
      

Połącz z urządzeniem przez USB

Gdy wszystko będzie gotowe i podłączone przez USB, kliknij Uruchom w Android Studio, aby skompilować i uruchomić aplikację na urządzeniu.

Za pomocą adb możesz też wydawać polecenia w ten sposób:

  • Sprawdź, czy urządzenie jest połączone, uruchamiając polecenie adb devices z katalogu android_sdk/platform-tools/. Jeśli masz połączenie, zobaczysz urządzenie na liście.
  • Wykonaj dowolne polecenie adb z flagą -d, aby ustawić kierowanie na urządzenie.

Połącz się z urządzeniem przez Wi-Fi

Android 11 i nowsze wersje obsługują bezprzewodowe wdrażanie i debugowanie aplikacji na stacji roboczej za pomocą Android Debug Bridge (ADB). Możesz na przykład wdrożyć aplikację możliwą do debugowania na wielu urządzeniach zdalnych bez fizycznego podłączania urządzenia przez USB i rywalizacji z typowymi problemami z połączeniem USB, takimi jak instalacja sterowników.

Aby korzystać z debugowania bezprzewodowego, musisz sparować urządzenie ze stacją roboczą przy użyciu kodu parowania. Na początek wykonaj te czynności:

  1. Sprawdź, czy Twoja stacja robocza i urządzenie są połączone z tą samą siecią bezprzewodową.
  2. Upewnij się, że na urządzeniu działa Android 11 lub nowszy. Więcej informacji znajdziesz w artykule Sprawdzanie i aktualizowanie wersji Androida.
  3. Upewnij się, że masz zainstalowaną najnowszą wersję Android Studio. Możesz go pobrać stąd.
  4. Na swojej stacji roboczej zaktualizuj narzędzia platformy SDK do najnowszej wersji.

Aby połączyć się z urządzeniem, wykonaj te czynności:

  1. Otwórz Android Studio i z menu konfiguracji wybierz Paruj urządzenia przez Wi-Fi.
    Menu uruchamiania konfiguracji
    Rysunek 1. Menu uruchamiania konfiguracji.

    Pojawi się okno Paruj urządzenia przez Wi-Fi, tak jak na ilustracji 2.
    Zrzut ekranu pokazujący parowanie urządzeń przez wyskakujące okienko Wi-Fi
    Rysunek 2. Okno parowania urządzeń za pomocą kodu QR lub kodu parowania.
  2. Włącz na urządzeniu opcje programisty.
  3. Włącz debugowanie przez Wi-Fi na urządzeniu.
    Zrzut ekranu telefonu Pixel z ustawieniem systemów debugowania bezprzewodowego.
    Rysunek 3. Ustawienie Debugowanie bezprzewodowe na telefonie Google Pixel.
  4. Kliknij Debugowanie bezprzewodowe i sparuj urządzenie:
    1. Aby sparować urządzenie przy użyciu kodu QR, wybierz Sparuj urządzenie z kodem QR i zeskanuj kod QR, jak pokazano na ilustracji 2.
    2. Aby sparować urządzenie przy użyciu kodu parowania, w oknie Paruj nowe urządzenia przez Wi-Fi wybierz Sparuj urządzenie za pomocą kodu parowania. Na urządzeniu wybierz Sparuj za pomocą kodu parowania. Pojawi się 6-cyfrowy kod. Gdy urządzenie pojawi się w oknie Sparuj urządzenia przez Wi-Fi, wpisz 6-cyfrowy kod wyświetlony na urządzeniu i kliknij Sparuj .
      Zrzut ekranu pokazujący przykładowy kod parowania
      Rysunek 4. Przykład wpisania 6-cyfrowego kodu parowania.
  5. 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:

  1. Otwórz Debugowanie bezprzewodowe na urządzeniu.
  2. W sekcji Sparowane urządzenia kliknij nazwę stacji roboczej.
  3. Wybierz Zapomnij.

Tworzenie odbicia lustrzanego urządzenia

W oknie Uruchomione urządzenia w Android Studio możesz powielić urządzenie fizyczne. Przesyłaj strumieniowo obraz z urządzenia bezpośrednio do Android Studio, dzięki czemu możesz używać samego Studio IDE do wykonywania typowych działań, takich jak uruchamianie aplikacji i interakcja z nimi, obrót ekranu, składanie i otwieranie telefonu oraz zmienianie głośności.

Powielanie danych na urządzeniu jest zawsze dostępne, gdy do komputera są podłączone urządzenia z włączonym debugowaniem USB lub bezprzewodowym. Dublowanie możesz rozpocząć lub zatrzymać w oknie Uruchomione urządzenia lub w Menedżerze urządzeń (Widok > Okna narzędziowe > Menedżer urządzeń). Możesz również określić, kiedy ma się włączać odbicie lustrzane urządzenia (Ustawienia > Narzędzia > Dublowanie urządzenia).

Interfejs uruchomionych urządzeń

Przekieruj dźwięk

Gdy korzystasz z odbicia lustrzanego urządzenia, możesz przekierować dźwięk z połączonych urządzeń fizycznych na głośniki lub słuchawki komputera. Dzięki funkcji przekierowania dźwięku możesz połączyć słuchawki z komputerem i słuchać zarówno komputera, jak i połączonego telefonu bez konieczności ręcznego łączenia się z jednym urządzeniem, a potem innym. Aby włączyć przekierowanie dźwięku, kliknij Plik (Android Studio w systemie macOS) > Ustawienia > Narzędzia > Powielanie urządzenia i wybierz Przekieruj dźwięk z urządzeń lokalnych. Pamiętaj, że w przypadku urządzeń z 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 powielania urządzenia. W takich sytuacjach w oknie Uruchomione urządzenia oraz w logach podobnych może pojawić się błąd.

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ń odbicia lustrzanego urządzenia Android Studio może automatycznie uruchomić tworzenie odbicia lustrzanego dla każdego połączonego i sparowanego urządzenia. Może to skutkować wyświetlaniem informacji o urządzeniach połączonych z poleceniem adb tcpip, ponieważ polecenia i informacje powielane są przekazywane przez niezaszyfrowany kanał. Dodatkowo Android Studio komunikuje się z serwerem adb przy użyciu niezaszyfrowanego kanału, więc informacje powielane mogą zostać przechwycone przez innych użytkowników hosta.

Rozwiązywanie problemów z połączeniem urządzenia

Jeśli urządzenie nie łączy się z Android Studio, spróbuj rozwiązać problem, wykonując te czynności:

Rozwiązywanie problemów za pomocą Asystenta połączenia

Asystent połączeń udostępnia szczegółowe instrukcje, które pomogą Ci skonfigurować urządzenie i korzystać z niego przez połączenie ADB.

Aby uruchomić asystenta, kliknij Narzędzia > Rozwiązywanie problemów z połączeniami z urządzeniami.

Asystent połączenia podaje instrukcje, elementy sterujące w kontekście oraz listę połączonych urządzeń na serii stron w panelu Asystent. Za pomocą przycisków Dalej i Wstecz u dołu panelu Asystent możesz w razie potrzeby przejść między stronami:

  • Podłączanie urządzenia przez USB: Asystent połączeń poprosi o podłączenie urządzenia przez USB i wyświetli przycisk Przeskanuj ponownie urządzenia USB, który pozwala rozpocząć nowe skanowanie w poszukiwaniu połączonych urządzeń.
  • Włącz debugowanie USB: Asystent połączeń poinformuje Cię, jak włączyć debugowanie USB w opcjach programisty na urządzeniu.
  • Ponownie uruchom serwer ADB: jeśli nadal nie widzisz swojego urządzenia na liście dostępnych urządzeń, kliknij przycisk Uruchom ponownie serwer ADB na ostatniej stronie Asystenta połączenia. Ponowne uruchomienie serwera ADB także powoduje ponowne skanowanie w poszukiwaniu urządzeń. Jeśli nadal nie widzisz swojego urządzenia na liście dostępnych urządzeń, wykonaj czynności opisane w sekcji poniżej.

Rozwiązywanie problemów z połączeniem USB

Jeśli Asystent połączeń nie wykryje urządzenia przez USB, spróbuj go rozwiązać, wykonując te czynności:

Sprawdzanie, czy Android Studio łączy się z emulatorem Androida

Aby sprawdzić, czy przyczyną problemu jest problem z połączeniem między Android Studio a Emulatorem Androida, wykonaj te czynności:

  1. Otwórz Menedżera urządzeń.
  2. Utwórz nowy średni czas wyświetlania, jeśli jeszcze go nie masz.
  3. Uruchom emulator za pomocą AVD.
  4. 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ę, sprawdź kabel USB w sposób opisany w następnej sekcji.

Sprawdź kabel USB

Aby sprawdzić, czy przyczyną problemu jest uszkodzony kabel USB, wykonaj czynności opisane w tej sekcji.

Jeśli masz inny kabel USB:

  1. Podłącz urządzenie za pomocą drugiego kabla.
  2. Sprawdź, czy Asystent połączeń może teraz wykryć urządzenie.
  3. Jeśli urządzenie nie zostanie wykryte, spróbuj ponownie użyć kabla podstawowego.
  4. Jeśli urządzenie nadal nie zostanie wykryte, przyjmijmy, że problem leży po nim, i sprawdź, czy urządzenie jest skonfigurowane do programowania w sposób opisany w następnej sekcji.

Jeśli nie masz innego kabla USB, ale masz inne urządzenie z Androidem:

  1. Podłącz dodatkowe urządzenie do komputera.
  2. Jeśli Asystent połączeń wykryje urządzenie dodatkowe, załóż, że problem dotyczy urządzenia głównego, i sprawdź, czy urządzenie jest skonfigurowane do programowania.

    Jeśli urządzenie dodatkowe nie zostanie wykryte, problem może dotyczyć kabla USB.

Sprawdzanie, czy urządzenie jest skonfigurowane do programowania

Aby sprawdzić, czy przyczyną problemu nie są ustawienia urządzenia, wykonaj te czynności:

  1. Wykonaj czynności opisane w sekcji Konfigurowanie urządzenia na potrzeby programowania.
  2. Jeśli to nie rozwiąże problemu, skontaktuj się z obsługą klienta OEM ds. urządzenia, aby uzyskać pomoc. Powiedz przedstawicielowi obsługi klienta, że urządzenie nie łączy się z Android Studio przez ADB.

Rozwiązywanie problemów z połączeniem bezprzewodowym

Jeśli masz problemy z bezprzewodowym połączeniem urządzenia, spróbuj wykonać te czynności:

Sprawdź, czy Twoja stacja robocza i urządzenie spełniają wymagania wstępne

Aby spełnić wymagania wstępne dotyczące debugowania bezprzewodowego, upewnij się, że:

Sprawdź, czy nie wystąpiły inne znane problemy

Poniżej znajdziesz listę aktualnych znanych problemów z debugowaniem bezprzewodowym w Android Studio i sposobów ich rozwiązania:

  • Wi-Fi nie łączy się: niektóre sieci Wi-Fi, na przykład firmowe, mogą blokować połączenia P2p i uniemożliwiać łączenie się 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ć, gdy 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 (poziom interfejsu API 17) lub nowszym, system wyświetli okno z pytaniem, czy zaakceptować klucz RSA, który umożliwia debugowanie na tym komputerze. Ten mechanizm chroni urządzenia użytkowników, ponieważ debugowanie USB i inne polecenia adb nie mogą być wykonywane, dopóki nie odblokujesz urządzenia i potwierdzisz okno.