네트워크 추적

네트워크 추적을 사용하면 Google 모바일 광고 SDK와 관련된 네트워크 활동을 확인할 수 있습니다. 이는 Google 모바일 광고 구현을 디버깅할 때 유용할 수 있습니다.

Charles 프록시와 같은 도구 대신 네트워크 추적을 사용하는 주된 이유는 제3자 보안 인증서 프로필을 신뢰하지 않아도 모든 iOS 버전 및 기기에서 작동하기 때문입니다. 프록싱 도구의 경우 iOS 10.3 이후의 인증서 프로필 요구사항 때문에 이렇게 하지 않습니다.

이 가이드에서는 디버깅 목적으로 네트워크 추적을 사용 설정하는 방법을 설명합니다.

추적 사용 설정

네트워크 추적을 사용하려면 plist 파일에서 GADEnableNetworkTracing 키를 YES로 설정하세요.

네트워크 추적을 사용 설정하면 Google 모바일 광고 SDK에서 네트워크 이벤트를 콘솔에 로깅합니다. 그런 다음 로그 사본을 Google 엔지니어에게 제공하면 분석 결과를 개발자 포럼에서 비공개 답변으로 받을 수 있습니다.

로깅

표준 플랫폼에 적합한 콘솔 로그는 네트워크 로그를 출력하는 데 사용됩니다.

콘솔 로그 메시지는 검색 또는 필터링이 가능하도록 항상 GMA Debug BEGIN, GMA Debug CONTENT 또는 GMA Debug FINISH 문자열로 시작합니다. 각 네트워크 로그의 첫 번째 로그 메시지는 GMA Debug BEGIN이고, 마지막 로그 메시지는 GMA Debug FINISH이며, 네트워크 로그 내용은 GMA Debug CONTENT로 시작합니다. 네트워크 로그 콘텐츠가 한 줄에 들어가기에는 너무 긴 경우 여러 줄로 나눠지며 각 줄은 GMA Debug CONTENT로 시작합니다.

샘플 출력

<Your App Name>[2710:30568] <Google> GMA Debug BEGIN
2017-12-06 09:47:09.268020-0800 <Your App Name>[2710:30568] <Google> GMA Debug CONTENT: {
  "components" : [
    "network_request_31107D12-E54E-45D6-AEA9-4A303C659EDF"
  ],
  "timestamp" : 1512582429267.2629,
  "event" : "onNetworkRequest",
  "params" : {
    "firstline" : {
      "uri" : "<encoded text>",
      "verb" : "<encoded text>"
    },
    "headers" : [
      {
        "name" : "<encoded text>",
        "value" : "<encoded text>"
      }
    ]
  }
}
2017-12-06 09:47:09.275742-0800 <Your App Name>[2710:30568] <Google> GMA Debug FINISH

그런 다음 분석을 위해 로그 사본을 Google 엔지니어에게 제공하면 됩니다.