Inspektor sieci wyświetla na osi czasu aktywność sieciową, pokazując wysyłanie i odbieranie danych. Inspektor sieci pozwala sprawdzić, jak i kiedy aplikacja przesyła dane i odpowiednio optymalizuje bazowy kod.
Aby otworzyć inspektora sieci, wykonaj te czynności:
- Na pasku nawigacyjnym w Android Studio wybierz Widok > Okna narzędzi >
Sprawdzanie aplikacji. Po automatycznym połączeniu okresu inspekcji aplikacji
i proces w aplikacji, wybierz na kartach Inspektor sieci.
- Jeśli okno inspekcji aplikacji nie łączy się z procesem aplikacji automatycznie, może być konieczne ręczne wybranie procesu w aplikacji.
- Wybierz z ekranu urządzenia i aplikacji proces, który chcesz sprawdzić Okno Sprawdzania aplikacji.
Omówienie Inspektora sieci
U góry okna Inspektora sieci zobaczysz oś czasu zdarzenia. Kliknij i przeciągnij, aby wybrać fragment osi czasu i zbadać natężenie ruchu.
![Okno Inspektora sieci](https://developer.android.google.cn/static/studio/images/debug/network-profiler.png?authuser=8&hl=pl)
Wykres czasu w okienku szczegółów pomoże Ci zidentyfikować skuteczność które mogą powodować problemy. Początek żółtej sekcji odpowiada pierwszy bajt wysyłanego żądania. Początek niebieskiej sekcji odpowiada do pierwszego bajtu odebranej odpowiedzi. Koniec niebieskiej sekcji odpowiada ostatniemu bajtowi otrzymanej odpowiedzi.
W panelu pod osią czasu wybierz jedną z Na kolejnych kartach znajdziesz więcej szczegółów na temat aktywności sieci w okresie wybrany fragment osi czasu:
- Widok połączenia: zawiera listę plików, które zostały wysłane lub odebrane podczas wybrany fragment osi czasu we wszystkich wątkach procesora aplikacji. Dla: można skontrolować rozmiar, typ, stan i transmisję czas trwania kampanii. Aby posortować tę listę, kliknij dowolny nagłówek kolumny. Dostępne opcje można też zapoznać się ze szczegółowym podziałem na wybrany fragment osi czasu, które pokazują, kiedy poszczególne pliki zostały wysłane lub odebrane.
Widok wątku: wyświetla aktywność sieciową każdego procesora aplikacji. . Jak widać na ilustracji 2, ten widok pozwala sprawdzić, są odpowiedzialne za każde żądanie sieciowe.
Rysunek 2. Sprawdź żądania sieciowe według wątku aplikacji w Widok wątku. Widok reguł: reguły pomagają testować działanie aplikacji po napotkaniu odpowiedzi o różnych kodach stanu, nagłówkach i treści. Gdy tworzysz nowej reguły, nazwij ją i podaj informacje o pochodzeniu reguły odpowiedź, którą chcesz przechwycić, w podsekcji Origin. W Odpowiedź, możesz określić, gdzie i jak modyfikować . Możesz na przykład skonfigurować regułę tak, aby uruchamiała się w odpowiedziach z tagiem konkretnego kodu stanu, a także go modyfikować. W Reguły nagłówka i Reguły treści – tworzy reguły podrzędne, które dodają lub modyfikować nagłówki lub treść odpowiedzi. Reguły są stosowane w kolejności, w jakiej na naszej liście. Aby wybrać regułę, którą chcesz włączyć lub wyłączyć, zaznacz Aktywny.
Rysunek 3. Reguły i szczegóły reguły inspektora sieci panele informacyjne.
W widoku połączenia lub widoku wątku kliknij nazwę prośby, aby: sprawdzać szczegółowe informacje o wysyłanych lub odbieranych danych. Klikaj karty, aby wyświetlania nagłówka i treści odpowiedzi, nagłówka i treści żądania lub stosu wywołań.
Na kartach Response (Odpowiedź) i Request (Żądanie) kliknij link View Parsed (Wyświetl przeanalizowane), aby wyświetlać sformatowany tekst. Kliknij link Wyświetl źródło, aby wyświetlić nieprzetworzony tekst.
![Przełączanie między zwykłym i sformatowanym tekstem](https://developer.android.google.cn/static/studio/images/profile/network-profiler-text_2X.png?authuser=8&hl=pl)
Oprócz wyświetlania żądań sieci dla
HttpsURLConnection
, sieć
Inspektor obsługuje też funkcję OkHttp
.
niektóre biblioteki sieciowe innych firm, np.
Retrofit, użyj OkHttp
więc inspektor sieci umożliwia sprawdzenie ich aktywności sieciowej.
Przykładowa aplikacja Now w Androidzie
korzysta z usługi OkHttp
do operacji sieciowych i jest to dobre miejsce, aby ją zobaczyć
działania.
Jeśli używasz tagu
HttpsURLConnection
API,
zobaczysz tylko nagłówki na karcie Request (Żądanie), które zostały umieszczone w kodzie za pomocą
setRequestProperty
zgodnie z tym przykładem:
Kotlin
val url = URL(MY_URL_EN) val urlConnection: HttpsURLConnection = url.openConnection() as HttpsURLConnection ... // Sets acceptable encodings in the request header. urlConnection.setRequestProperty("Accept-Encoding", "identity")
Java
URL url = new URL(MY_URL_EN); HttpsURLConnection urlConnection = (HttpsURLConnection) url.openConnection(); //... // Sets acceptable encodings in the request header. urlConnection.setRequestProperty("Accept-Encoding", "identity");
Rozwiązywanie problemów z połączeniem sieciowym
Jeśli inspektor sieci wykryje wartości ruchu, ale nie może zidentyfikować żadnych obsługiwane żądania sieciowe, pojawia się następujący komunikat o błędzie:
**Network Inspector Data Unavailable:** There is no information for the
network traffic you've selected.
Obecnie inspektor sieci obsługuje tylko
HttpsURLConnection
i biblioteki OkHttp
do sieci
połączeń. Jeśli aplikacja używa innej biblioteki połączeń sieciowych, możesz nie mieć
pod kątem aktywności w sieci
w inspektorze sieci. Jeśli
ten komunikat o błędzie został wyświetlony, ale Twoja aplikacja używa pakietu HttpsURLConnection
lub OkHttp
, zgłoś błąd lub
wyszukaj problem
urządzenie śledzące
możesz uwzględnić swoją opinię w istniejącym raporcie dotyczącym Twojego problemu. Ty
Możesz też skorzystać z tych zasobów, by poprosić o pomoc dotyczącą dodatkowych bibliotek.