凡是顯示 Google 代管個人化廣告的應用程式,都必須導入 AdChoices 圖示和疊加層 (如果 Google 提供)。AdChoices (也稱為「為什麼會顯示這則廣告?」) 是一項資訊公開功能,會向使用者說明系統向其顯示某則特定廣告的原因,並提供隱私權保護措施的相關資訊。
詳情請參閱「系統向您顯示廣告的原因」。
本指南說明如何從廣告的 VAST XML 回應或 DAI 串流的後設資料回應中,擷取必要資訊,以正確導入 AdChoices。
AdChoices 顯示規定
為符合 Google 對 AdChoices 圖示的顯示規定,您的應用程式或網站必須符合下列標準:
- AdChoices 圖示必須顯示在任何提供該圖示的廣告上
- AdChoices 圖示必須顯示在圖示資料中「X 位置」和「Y 位置」屬性所指出的位置,且大小必須符合寬度和高度屬性所定義的密度無關像素 (DP)。
- AdChoices 圖示不得遭其他廣告重疊或介面元素遮蓋。
- 在支援點擊或同等操作 (例如觸控或遙控器選取) 的平台上,AdChoices 圖示必須可供點選。
- 在支援瀏覽器的平台上,點選 AdChoices 圖示後,必須開啟瀏覽器分頁或視窗,並載入「ClickThrough」或「click_data」屬性中指定的網址。
- 在不支援瀏覽器的平台上,點選 AdChoices 圖示後,必須開啟強制回應重疊畫面,顯示「IconClickFallbackImage」或「click_fallback_images」屬性中指定的其中一個圖片。
- 在不支援瀏覽器的平台上,備用圖片必須以「IconClickFallbackImage」或「click_fallback_images」屬性中指定的密度獨立像素 (DP) 大小顯示。
從 VAST XML 回應剖析 AdChoices
使用 XML 廣告回應時,只有 VAST 3.0 以上版本支援 AdChoices。AdChoices 會以 VAST Icon 的形式導入。
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 圖示標準,且平台能夠前往並顯示圖示到達網址,則 AdChoices 支援功能不需要進一步設定。
如果平台無法前往並顯示點擊後到達網址 (這主要適用於沒有整合式網頁瀏覽器的裝置),您必須實作「IconFallbackImages」擴充功能支援。這個擴充功能包含一組「IconFallbackImages」標記,其中的「program」屬性與 VAST 中包含的圖示相符。
如要完整支援 AdChoices,請務必將 IconFallbackImages 標記 (程式名稱為「GoogleWhyThisAd」) 與 Icon (程式名稱為「GoogleWhyThisAd」) 建立關聯,這樣使用者與圖示互動時,系統就會顯示相關聯的備用圖片。
為因應 AdChoices 標準日後可能發生的變更,我們強烈建議您在所有 VAST 圖示中加入備用圖片支援 (如有)。您可以使用這個 VAST 3.0 XML 範例,在應用程式中進行額外測試。
IconFallbackImages 擴充功能結構
| 標記 | 屬性 | 說明 |
|---|---|---|
| 擴充功能 | 類型 | 這個擴充功能的類型一律包含值 IconClickFallbackImages。
|
| -IconClickFallbackImages | 計畫 | 這個屬性一律與相關聯 VAST 3.0 圖示的程式屬性相符。 |
這個節點的結構與 VAST 4.2 標準的 IconClickFallbackImages 相同,但新增了 program 屬性。 |
||
| --IconClickFallbackImage | width | 顯示圖片的偏好寬度。 |
| 高度 | 顯示圖片的建議高度。 | |
| ---AltText | 圖片的無障礙說明。 | |
| ---StaticResource | creativeType | 備用圖片的 MIME 類型。 |
| 包含備用圖片網址的 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 時,系統會透過向中繼資料網址發出要求後傳回的 JSON 物件,傳遞 AdChoices 詳細資料。
中繼資料 JSON 物件包含廣告清單,並以 adID 做為鍵。每個廣告物件中都有圖示陣列。如果相關廣告使用 AdChoices,該陣列會包含 AdChoices 圖示。
JSON 圖示格式
JSON 圖示格式盡可能以 1:1 的比例,從 VAST 4.2 圖示標準 (第 3.11 節) 轉換而來。不過,為了支援更嚴格的 JSON 格式,部分屬性已視需要變更名稱。
圖示 JSON 格式
| 計畫 | 如果是 AdChoices 圖示,這個值一律會包含「GoogleWhyThisAd」字串。 |
| x_position | 圖示左上角相對於影片廣告素材左上角的水平位置 (以像素為單位)。這個欄位也接受回應式位置值「right」或「left」。 |
| y_position | 圖示左上角相對於影片廣告素材左上角的垂直位置 (以像素為單位)。這個欄位也接受「頂端」或「底部」的 回應式位置值。 |
| width | 圖示的寬度,以像素為單位。 |
| 高度 | 圖示的高度,以像素為單位。 |
| creative_type | 圖示所提供圖片的 MIME 類型。預設值為「image/png」。 |
| 資源 | 用於擷取 AdChoices 圖示的網址。 |
| alt_text | 要顯示的 AdChoices 圖示替代文字。 |
| click_data | 這個物件包含 click_data.url 屬性,代表如果觀眾在支援網頁瀏覽的平台上點選 AdChoices 圖示,系統會將他們導向的網址。 |
| click_fallback_images | 點選不支援網頁瀏覽的平台上的「廣告選擇」圖示後,向觀眾顯示的圖像物件陣列。 |
後備圖片 JSON 格式
| width | 後備圖片的寬度,以像素為單位。 |
| height | 替代圖片的高度 (以像素為單位)。 |
| creative_type | 備用圖片的 MIME 類型。預設值為「image/png」。 |
| 資源 | 用於擷取備用圖片的網址。 |
| 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"
}
...
]
...
},
...
}
...
}