Debugowanie za pomocą Narzędzi deweloperskich w Chrome

Za pomocą narzędzi deweloperskich wbudowanych w przeglądarkę Chrome na komputerze deweloperskim możesz zdalnie sprawdzać i debugować komponenty WebView działające w aplikacji. Szczegółowy przewodnik po zdalnym debugowaniu komponentów WebView znajdziesz w artykule Zdalne debugowanie komponentów WebView.

Więcej informacji o Narzędziach deweloperskich znajdziesz w tym artykule.

Włączanie połączenia z Narzędzi deweloperskich w Chrome

Domyślnie WebView w aplikacji nie będzie umożliwiać połączeń z Chrome DevTools. W kodzie aplikacji musisz włączyć debugowanie WebView.

  1. Upewnij się, że możesz uruchomić aplikację na urządzeniu lub wirtualnym.
  2. Włącz debugowanie WebView w kodzie aplikacji, wywołując setWebContentsDebuggingEnabled. Zwykle robi się to w klasie Activitylub Application, w której inicjowana jest klasa WebView.

Zalecamy umieszczenie setWebContentsDebuggingEnabled w sprawdzaniu warunkowym, aby debugowanie było włączone tylko w wersjach deweloperskich, a nie w wersjach produkcyjnych. To ustawienie dotyczy wszystkich widoków WebView w aplikacji.

Na debugowanie komponentu WebView nie ma wpływu stan flagi debuggable w pliku manifestu aplikacji. Jeśli chcesz włączyć debugowanie komponentu WebView tylko wtedy, gdy flaga debuggable jest ustawiona na true, przetestuj tę flagę w czasie działania, jak pokazano w tym przykładzie:

Kotlin

if (applicationInfo.flags and ApplicationInfo.FLAG_DEBUGGABLE != 0) {
     WebView.setWebContentsDebuggingEnabled(true)
}

Java

if (0 != (getApplicationInfo().flags & ApplicationInfo.FLAG_DEBUGGABLE)) {
     WebView.setWebContentsDebuggingEnabled(true);
}

Rozpocznij debugowanie WebView

Po włączeniu debugowania komponentu WebView w kodzie aplikacji i uruchomieniu aplikacji na urządzeniu fizycznym lub emulatorze Androida połącz Narzędzia deweloperskie w Chrome z komponentem WebView:

  1. Otwórz Chrome na komputerze deweloperskim.
  2. Otwórz: chrome://inspect.
  3. Na stronie chrome://inspect upewnij się, że opcja Wykryj urządzenia USB jest zaznaczona. W sekcji Urządzenie zdalne znajdź swoje urządzenie.

    Narzędzia deweloperskie w Chrome sprawdzają stronę, na której widać zdalne cele dostępne do debugowania.
    Rysunek 1. Narzędzia deweloperskie w Chrome pokazujące zdalne cele dostępne do debugowania.
  4. Pod nazwą urządzenia Chrome wyświetla wszystkie widoki WebView z włączonym debugowaniem, które są uruchomione na tym urządzeniu. Zwykle są one identyfikowane przez ciąg WebView w, po którym następuje nazwa pakietu aplikacji. Znajdź element WebView, który chcesz debugować, i kliknij link Sprawdź.

Otworzy się nowa instancja Narzędzi deweloperskich, której możesz użyć do sprawdzenia elementu WebView.

Jeśli udostępniasz treści z lokalnego serwera internetowego na komputerze deweloperskim, zapoznaj się z artykułem Uzyskiwanie dostępu do lokalnego serwera programistycznego z WebView, aby dowiedzieć się, jak połączyć się z nim z urządzenia lub emulatora. Informacje o rozwiązywaniu problemów znajdziesz w artykułach Zdalne debugowanie urządzeń z AndroidemZdalne debugowanie widoków WebView.