Google에서 호스팅하는 개인 맞춤 광고를 표시하는 모든 앱은 Google에서 제공하는 경우 AdChoices 아이콘과 오버레이를 구현해야 합니다. AdChoices('이 광고가 표시된 이유'라고도 함)는 사용자에게 특정 광고가 표시되는 이유를 설명하고 개인 정보가 보호되는 방식에 대한 정보를 제공하는 투명성 기능입니다.
자세한 내용은 광고가 표시되는 이유를 참고하세요.
이 가이드에서는 광고의 VAST XML 응답 또는 DAI 스트림의 메타데이터 응답에서 AdChoices를 올바르게 구현하는 데 필요한 정보를 추출하는 방법을 설명합니다.
AdChoices 렌더링 요구사항
AdChoices 아이콘 렌더링에 관한 Google의 요구사항을 준수하려면 앱 또는 웹사이트가 다음 표준을 충족해야 합니다.
- AdChoices 아이콘은 제공되는 광고에 오버레이되어 표시되어야 합니다.
- AdChoices 아이콘은 아이콘 데이터에 포함된 'X 위치' 및 'Y 위치' 속성으로 표시된 위치에 표시되어야 하며, 너비 및 높이 속성으로 정의된 크기(밀도 독립적 픽셀(DP))로 표시되어야 합니다.
- AdChoices 아이콘이 다른 광고 오버레이나 인터페이스 요소에 가려져서는 안 됩니다.
- 클릭 지원 또는 이와 동등한 기능 (예: 터치 또는 원격 선택)이 있는 플랫폼에서는 AdChoices 아이콘을 클릭할 수 있어야 합니다.
- 브라우저를 지원하는 플랫폼에서 AdChoices 아이콘을 클릭하면 'ClickThrough' 또는 'click_data' 속성에 지정된 URL이 포함된 브라우저 탭 또는 창이 열려야 합니다.
- 브라우저 지원이 없는 플랫폼에서는 AdChoices 아이콘을 클릭하면 모달 오버레이가 열리고 'IconClickFallbackImage' 또는 'click_fallback_images' 속성에 지정된 이미지 중 하나가 표시되어야 합니다.
- 브라우저 지원이 없는 플랫폼에서는 대체 이미지가 'IconClickFallbackImage' 또는 'click_fallback_images' 속성 내에 지정된 크기로 밀도 독립형 픽셀 (DP)로 표시되어야 합니다.
VAST XML 응답에서 AdChoices 파싱
XML 광고 응답을 사용할 때 AdChoices는 VAST 버전 3.0 이상에서만 지원됩니다. AdChoices는 VAST 아이콘으로 구현됩니다.
VAST 4.2
XML 광고 응답이 VAST 4.2 표준을 따르는 경우 AdChoices가 VAST 아이콘으로 전송됩니다. 앱 또는 웹사이트에서 VAST 4.2 아이콘 (VAST 4.2 표준 3.11항)을 완전히 지원하는 경우 AdChoices 지원을 위해 추가 작업이 필요하지 않습니다.
앱이 VAST 4.2 아이콘을 지원하지 않는 경우 이 표준에 따라 VAST 응답에서 프로그램 이름이 'GoogleWhyThisAd'인 아이콘을 수동으로 파싱해야 합니다. 이 샘플 VAST 4.2 xml을 사용하여 앱에서 추가 테스트를 진행할 수 있습니다.
샘플 VAST 4.2 응답
<?xml version="1.0" encoding="UTF-8"?>
<VAST version="4.2">
<Ad id="20011">
<Wrapper>
...
<Creatives>
...
<Creative id="5480" sequence="1">
...
<Linear>
...
<Icons>
...
<Icon program="GoogleWhyThisAd" width="40" height="30" xPosition="left" yPosition="100" duration="00:00:10" offset="00:00:00" apiFramework="VAST" altText="AdChoices icon">
<StaticResource creativeType="image/png">
<![CDATA[ https://storage.googleapis.com/interactive-media-ads/hosted-samples/wta/icon_adchoices.png ]]>
</StaticResource>
<IconClicks>
<IconClickThrough>
<![CDATA[ https://g.co/adsettings ]]>
</IconClickThrough>
<IconClickFallbackImages>
<IconClickFallbackImage width="950" height="600">
<AltText>
<![CDATA[ This ad was shown to you based on: * Google's estimation of your interests, based on your activity on Google on this device (for example, your searches) * the information on the website you were viewing. ]]>
</AltText>
<StaticResource creativeType="image/png">
<![CDATA[ https://storage.googleapis.com/interactive-media-ads/hosted-samples/wta/icon_adchoices_fallback_image.png ]]>
</StaticResource>
</IconClickFallbackImage>
...
</IconClickFallbackImages>
</IconClicks>
</Icon>
...
</Icons>
...
</Linear>
...
</Creative>
...
</Creatives>
...
</Wrapper>
...
</Ad>
</VAST>
VAST 3.0
XML 광고 응답이 VAST 3.0 표준을 따르는 경우 AdChoices는 VAST 아이콘과 맞춤 VAST 확장 프로그램의 조합으로 게재됩니다. 앱 또는 웹사이트가 VAST 3.0 아이콘 표준을 완전히 지원하고 플랫폼이 아이콘 클릭연결 URL로 이동하여 표시할 수 있는 경우 AdChoices 지원을 위해 추가 작업이 필요하지 않습니다.
플랫폼에서 클릭연결 URL로 이동하여 표시할 수 없는 경우(주로 통합 웹브라우저가 없는 기기에 해당) 'IconFallbackImages' 확장 프로그램 지원을 구현해야 합니다. 이 확장 프로그램에는 '프로그램' 속성이 VAST에 포함된 아이콘과 일치하는 일련의 'IconFallbackImages' 태그가 포함되어 있습니다.
AdChoices를 완전히 지원하려면 프로그램 이름이 'GoogleWhyThisAd'인 IconFallbackImages 태그를 프로그램 이름이 'GoogleWhyThisAd'인 아이콘과 연결해야 합니다. 그러면 사용자가 아이콘과 상호작용할 때 연결된 대체 이미지가 표시됩니다.
향후 AdChoices 표준이 변경될 수 있으므로 가능한 경우 모든 VAST 아이콘에 대체 이미지 지원을 통합하는 것이 좋습니다. 이 샘플 VAST 3.0 xml을 사용하여 앱에서 추가 테스트를 진행할 수 있습니다.
IconFallbackImages 확장 프로그램 구조
태그 | 속성 | 설명 |
---|---|---|
확장 | 유형 | 이 확장 프로그램의 경우 유형은 항상 IconClickFallbackImages 값을 포함합니다.
|
-IconClickFallbackImages | 프로그램 | 이 속성은 항상 연결된 VAST 3.0 아이콘의 프로그램 속성과 일치합니다. |
이 노드의 구조는 program 속성 추가를 제외하고 IconClickFallbackImages의 VAST 4.2 표준과 일치합니다.
|
||
--IconClickFallbackImage | 너비 | 이미지를 표시할 때 권장되는 너비입니다. |
높이 | 이미지를 표시할 때 권장되는 높이입니다. | |
---AltText | 이미지에 대한 접근 가능한 설명입니다. | |
---StaticResource | creativeType | 대체 이미지의 mimetype입니다. |
대체 이미지의 URL이 포함된 CDATA 값입니다. |
샘플 VAST 3.0 응답
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad id="123456">
<InLine>
...
<Creatives>
...
<Creative id="7891011" AdID="ABCD123456EF" sequence="1">
...
<Linear>
...
<Icons>
...
<Icon program="GoogleWhyThisAd" width="50" height="50" xPosition="20" yPosition="bottom" duration="00:00:10" offset="00:00:00" apiFramework="VAST" altText="Why This Ad?">
<StaticResource creativeType="image/png">
<![CDATA[https://storage.googleapis.com/interactive-media-ads/hosted-samples/wta/icon_adchoices.png]]>
</StaticResource>
<IconClicks>
...
<IconClickThrough><![CDATA[https://g.co/adsettings]]></IconClickThrough>
</IconClicks>
</Icon>
...
</Icons>
...
</Linear>
...
</Creative>
...
</Creatives>
<Extensions>
...
<Extension type="IconClickFallbackImages">
...
<IconClickFallbackImages program="GoogleWhyThisAd">
<IconClickFallbackImage width="400" height="150">
<AltText>Alt icon fallback</AltText>
<StaticResource creativeType="image/png"><![CDATA[https://storage.googleapis.com/gvabox/nickchavez/media/png/wta_dialog.png]]></StaticResource>
</IconClickFallbackImage>
...
</IconClickFallbackImages>
...
</Extension>
...
</Extensions>
...
</InLine>
...
</Ad>
</VAST>
DAI API 메타데이터 JSON에서 AdChoices 파싱
DAI API를 사용할 때는 AdChoices 세부정보가 메타데이터 URL에 대한 요청에서 반환된 JSON 객체를 통해 전달됩니다.
메타데이터 JSON 객체에는 adID를 키로 하는 광고 목록이 포함됩니다. 각 광고 객체 내에 아이콘 배열이 있습니다. 문제의 광고에서 AdChoices를 사용하는 경우 AdChoices 아이콘이 배열에 포함됩니다.
JSON 아이콘 형식
JSON 아이콘 형식은 가능한 경우 VAST 4.2 아이콘 표준(섹션 3.11)의 1:1 변환입니다. 그러나 더 엄격한 JSON 형식을 지원하기 위해 필요한 경우 일부 속성의 이름이 변경되었습니다.
아이콘 JSON 형식
프로그램 | AdChoices 아이콘의 경우 이 값에는 항상 'GoogleWhyThisAd' 문자열이 포함됩니다. |
x_position | 동영상 광고 소재의 왼쪽 상단 모서리를 기준으로 한 아이콘 왼쪽 상단 모서리의 가로 위치(단위: 픽셀)입니다. 이 필드는 반응형 위치 값인 'right' 또는 'left'도 허용합니다. |
y_position | 동영상 광고 소재의 왼쪽 상단을 기준으로 아이콘의 왼쪽 상단 모서리 수직 위치(단위: 픽셀)입니다. 이 필드는 반응형 위치 값인 'top' 또는 'bottom'도 허용합니다. |
너비 | 아이콘의 너비(픽셀)입니다. |
높이 | 아이콘의 높이(픽셀)입니다. |
creative_type | 아이콘에 제공된 이미지의 mimetype입니다. 기본값은 'image/png'입니다. |
리소스 | AdChoices 아이콘을 가져오는 URL입니다. |
alt_text | AdChoices 아이콘을 렌더링할 대체 텍스트입니다. |
click_data | 웹 브라우징을 지원하는 플랫폼에서 시청자가 AdChoices 아이콘을 클릭할 때 연결할 URL을 나타내는 click_data.url 속성을 포함하는 객체입니다.
|
click_fallback_images | 웹 브라우징을 지원하지 않는 플랫폼에서 AdChoices 아이콘을 클릭하는 시청자에게 표시할 이미지 객체 배열입니다. |
대체 이미지 JSON 형식
너비 | 대체 이미지의 너비(픽셀)입니다. |
높이 | 대체 이미지의 높이입니다(단위: 픽셀). |
creative_type | 대체 이미지의 mimetype입니다. 기본값은 'image/png'입니다. |
리소스 | 대체 이미지를 가져오는 URL입니다. |
alt_text | 대체 이미지에 렌더링할 대체 텍스트입니다. |
샘플 메타데이터 JSON
{
...
"ads": {
...
"0002640412_ad1": {
...
"icons": [
...
{
"alt_text": "AdChoices icon",
"click_data": {
"url": "https://g.co/adsettings"
},
"click_fallback_images": [
{
"alt_text": "This ad was shown to you based on: * Google's estimation of your interests, based on your activity on Google on this device (for example, your searches) * the information on the website you were viewing.",
"creative_type": "image/jpg",
"height": 600,
"resource": "https://storage.googleapis.com/interactive-media-ads/hosted-samples/wta/icon_adchoices_fallback_image.png",
"width": 950
}
],
"creative_type": "image/png",
"height": 30,
"program": "AdChoices",
"resource": "https://storage.googleapis.com/interactive-media-ads/hosted-samples/wta/icon_adchoices.png",
"type": "static",
"width": 40,
"x_position": "0",
"y_position": "100"
}
...
]
...
},
...
}
...
}