Śledzenie sieci umożliwia obserwowanie aktywności sieciowych związanych z Google Mobile Pakiet SDK do wyświetlania reklam. Może to być przydatne podczas debugowania implementacji reklam mobilnych Google.
Głównym powodem, dla którego warto używać śledzenia sieci zamiast narzędzi takich jak Charles Serwer proxy działa ze wszystkimi wersjami Android i urządzenia z obsługiwaną wersją Usług Google Play. Ten nie jest stosowany w narzędziach proxy z powodu zmian zaufanych urzędów certyfikacji i certyfikatów dostępnych od Androida 7.0.
Z tego przewodnika dowiesz się, jak włączyć śledzenie sieci na potrzeby debugowania.
Enable tracing
Aby włączyć śledzenie sieci, włącz opcję programisty opcje Twojego urządzenia. Następnie uruchom aplikację Ustawienia Google i wybierz opcję Reklamy:
Przy założeniu, że opcje programisty są włączone i funkcja jest dostępna, ekran będzie wyglądać tak:
Wybierz opcję Włącz rejestrowanie debugowania reklam, aby otworzyć to okno:
Kliknij OK, aby wyświetlić identyfikator wyświetlania reklam, który kończy się
z 10ca1ad1abe1
:
Teraz możesz wyświetlić wszystkie dane wyjściowe logowania sieciowego w logcat. Do filtruje tylko dane wyjściowe reklam na poziomie informacji zarówno na ekranie, jak i w pliku, problem następujące polecenie:
adb logcat '*:S' Ads:I Ads-cont:I | tee logs.txt
Wyniki
Do generowania dzienników sieciowych używane są standardowe logi konsoli odpowiednie dla platformy.
Komunikaty dziennika konsoli zawsze zaczynają się od ciągu GMA Debug BEGIN
,
GMA Debug CONTENT
lub GMA Debug FINISH
, więc możesz według nich wyszukiwać lub filtrować według nich
ciągi tekstowe. W każdym logu sieci pierwszy komunikat logu to GMA Debug BEGIN
,
ostatni komunikat logu to GMA Debug FINISH
i rozpoczyna się treść dziennika sieci
dzięki funkcji GMA Debug CONTENT
. Jeśli treść jest zbyt długa, aby zmieścić się w wierszu, zostanie dzielona.
w wielu wierszach, a każdy z nich zaczyna się od GMA Debug CONTENT
.
Przykład danych wyjściowych konsoli
I/Ads ( 4660): GMA Debug BEGIN
I/Ads ( 4660): GMA Debug CONTENT {"timestamp":1510679993741,...}
I/Ads ( 4660): GMA Debug FINISH
Przykład danych wyjściowych JSON
Oto kilka przykładowych danych wyjściowych JSON z logcat:
onNetworkRequest
{
"timestamp": 1510679994904,
"event": "onNetworkRequest",
"components": [
"ad_request_cf5ab185-3c3f-4f01-9f56-33da2ae110f2",
"network_request_6553bc32-1d44-4f18-9dd0-5c183abbeb90"
],
"params": {
"firstline": {
"uri": "http://googleads.g.doubleclick.net/pagead/ads?carrier=....",
"verb": "GET"
},
"headers": [
{
"name": "User-Agent",
"value": "Mozilla/5.0 (Linux; Android 5.0.2;..."
}
]
}
}
onNetworkResponse
{
"timestamp": 1510679995295,
"event": "onNetworkResponse",
"components": [
"ad_request_cf5ab185-3c3f-4f01-9f56-33da2ae110f2",
"network_request_6553bc32-1d44-4f18-9dd0-5c183abbeb90"
],
"params": {
"firstline": {
"code": 200
},
"headers": [
{
"name": null,
"value": "HTTP/1.1 200 OK"
},
{
"name": "X-Google-DOS-Service-Trace",
"value": "main:pagead"
},
{
"name": "Content-Type",
"value": "text/html; charset=UTF-8"
},
...
]
}
}
onNetworkResponseBody
{
"timestamp": 1510679995375,
"event": "onNetworkResponseBody",
"components": [
"ad_request_cf5ab185-3c3f-4f01-9f56-33da2ae110f2",
"network_request_6553bc32-1d44-4f18-9dd0-5c183abbeb90"
],
"params": {
"bodydigest": "B2520049D02F3C70A12AD1BC0D1B58A4",
"bodylength": 122395
}
}