Ikon dan overlay AdChoices

Semua aplikasi yang menampilkan iklan yang dipersonalisasi yang dihosting oleh Google harus menerapkan ikon dan overlay AdChoices, jika disediakan oleh Google. AdChoices (juga disebut sebagai "Mengapa Iklan ini?") adalah fitur transparansi yang menjelaskan kepada pengguna mengapa mereka melihat iklan tertentu dan memberikan informasi tentang bagaimana privasi mereka dilindungi.

Untuk mengetahui informasi selengkapnya, lihat Mengapa Anda melihat iklan.

Panduan ini menjelaskan cara mengekstrak informasi yang diperlukan untuk mengimplementasikan AdChoices dengan benar dari respons XML VAST iklan atau respons metadata streaming DAI.

Persyaratan untuk rendering AdChoices

Untuk mematuhi persyaratan Google dalam merender ikon AdChoices, aplikasi atau situs Anda harus memenuhi standar berikut:

  1. Ikon AdChoices harus ditampilkan sebagai overlay pada iklan yang disediakan
  2. Ikon AdChoices harus ditampilkan di posisi yang ditunjukkan oleh properti "Lokasi X" dan "Lokasi Y" yang disertakan dalam data ikon, dan pada ukuran yang ditentukan oleh properti lebar dan tinggi, dalam Piksel Independen Kepadatan (DP).
  3. Ikon AdChoices tidak boleh terhalang oleh overlay iklan atau elemen antarmuka lainnya.
  4. Di platform dengan dukungan klik atau yang setara (misalnya, sentuh atau pilih jarak jauh), ikon AdChoices harus dapat diklik.
  5. Di platform dengan dukungan browser, mengklik ikon AdChoices akan membuka tab atau jendela browser dengan URL yang ditentukan dalam properti "ClickThrough" atau "click_data".
  6. Di platform tanpa dukungan browser, mengklik ikon AdChoices akan membuka overlay modal, yang menampilkan salah satu gambar yang ditentukan dalam properti "IconClickFallbackImage" atau "click_fallback_images".
  7. Di platform tanpa dukungan browser, gambar penggantian harus ditampilkan dengan ukuran yang ditentukan dalam properti "IconClickFallbackImage" atau "click_fallback_images", dalam Piksel kepadatan mandiri (DP).

Menguraikan AdChoices dari respons XML VAST

Saat menggunakan respons iklan XML, AdChoices hanya didukung di VAST versi 3.0 dan yang lebih baru. AdChoices diimplementasikan sebagai Ikon VAST.

VAST 4.2

Jika respons iklan XML Anda mengikuti standar VAST 4.2, AdChoices akan dikirim sebagai Ikon VAST. Jika aplikasi atau situs Anda sepenuhnya mendukung Ikon VAST 4.2 (bagian 3.11 standar VAST 4.2), dukungan AdChoices tidak memerlukan tindakan lebih lanjut.

Jika aplikasi Anda tidak mendukung ikon VAST 4.2, Anda harus mengurai ikon secara manual dengan nama program "GoogleWhyThisAd" dari respons VAST, berdasarkan standar tersebut. Anda dapat menggunakan contoh xml VAST 4.2 ini untuk pengujian tambahan di aplikasi Anda.

Contoh respons 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

Jika respons iklan XML Anda mengikuti standar VAST 3.0, AdChoices akan ditayangkan sebagai kombinasi Ikon VAST dan ekstensi VAST kustom. Jika aplikasi atau situs Anda sepenuhnya mendukung standar Ikon VAST 3.0 dan jika platform tersebut dapat membuka dan menampilkan URL klik-tayang ikon, dukungan AdChoices tidak memerlukan tindakan lebih lanjut.

Jika platform Anda tidak dapat membuka dan menampilkan URL klik-tayang, hal ini terutama berlaku untuk perangkat yang tidak memiliki browser web terintegrasi. Anda harus menerapkan dukungan untuk ekstensi "IconFallbackImages". Ekstensi ini berisi kumpulan tag "IconFallbackImages" dengan atribut "program" yang cocok dengan ikon yang disertakan dalam VAST.

Untuk mendukung AdChoices sepenuhnya, tag IconFallbackImages dengan nama program "GoogleWhyThisAd" harus dikaitkan dengan Ikon dengan nama program "GoogleWhyThisAd", sehingga saat pengguna berinteraksi dengan ikon, gambar penggantian terkait akan ditampilkan.

Untuk mendukung potensi perubahan pada standar AdChoices di masa mendatang, sebaiknya sertakan dukungan gambar penggantian untuk semua Ikon VAST, jika tersedia. Anda dapat menggunakan contoh xml VAST 3.0 ini untuk pengujian tambahan di aplikasi Anda.

Struktur Ekstensi IconFallbackImages

Tag Atribut Deskripsi
Perluasan jenis Untuk ekstensi ini, jenisnya selalu berisi nilai IconClickFallbackImages.
-IconClickFallbackImages program Atribut ini selalu cocok dengan atribut program dari Ikon VAST 3.0 terkait.
Struktur node ini cocok dengan standar VAST 4.2 untuk IconClickFallbackImages, kecuali untuk penambahan atribut program.
--IconClickFallbackImage lebar Lebar yang diinginkan untuk menampilkan gambar.
tinggi Tinggi yang diinginkan untuk menampilkan gambar.
---AltText Deskripsi gambar yang dapat diakses.
---StaticResource creativeType MIME type gambar penggantian.
Nilai CDATA yang berisi URL gambar penggantian.

Contoh Respons 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>

Mengurai AdChoices dari JSON metadata DAI API

Saat menggunakan DAI API, detail AdChoices diteruskan melalui objek JSON yang ditampilkan oleh permintaan ke URL metadata.

Objek JSON Metadata berisi daftar iklan, yang diberi kunci oleh adID. Dalam setiap objek iklan terdapat array ikon. Jika iklan yang dimaksud menggunakan AdChoices, ikon AdChoices akan terdapat dalam array tersebut.

Format ikon JSON

Format ikon JSON adalah terjemahan 1:1 dari standar ikon VAST 4.2 (bagian 3.11), jika memungkinkan. Namun, untuk mendukung format JSON yang lebih ketat, beberapa atribut telah mengubah namanya, jika diperlukan.

Format JSON ikon

program Untuk ikon AdChoices, nilai ini selalu berisi string, "GoogleWhyThisAd".
x_position Posisi horizontal sudut kiri atas ikon, relatif terhadap sudut kiri atas materi iklan video, dalam piksel. Kolom ini juga menerima nilai posisi responsif "kanan" atau "kiri".
y_position Posisi vertikal pojok kiri atas ikon, relatif terhadap pojok kiri atas materi iklan video, dalam piksel. Kolom ini juga menerima nilai posisi responsif "top" atau "bottom".
lebar Lebar ikon, dalam piksel.
tinggi Tinggi ikon, dalam piksel.
creative_type Mimetype gambar yang disediakan untuk ikon. Default-nya adalah "image/png".
referensi URL untuk mengambil ikon AdChoices.
alt_text Teks alternatif yang akan dirender untuk ikon AdChoices.
click_data Objek yang berisi properti click_data.url yang mewakili URL yang akan diarahkan kepada penonton jika mereka mengklik ikon AdChoices di platform yang mendukung penjelajahan web.
click_fallback_images Array objek gambar yang akan ditampilkan kepada penonton yang mengklik ikon AdChoices di platform yang tidak mendukung penjelajahan web.

Format JSON Gambar Penggantian

lebar Lebar gambar penggantian, dalam piksel.
tinggi Tinggi gambar penggantian, dalam piksel.
creative_type MIME type gambar penggantian. Default-nya adalah "image/png".
referensi URL untuk mengambil gambar penggantian.
alt_text Teks alternatif yang akan dirender untuk gambar penggantian.

Contoh JSON Metadata

{
  ...
  "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"
        }
        ...
      ]
      ...
    },
    ...
  }
  ...
}