Reklamy pełnoekranowe

Reklama pośrednia (lub reklama pełnoekranowa) to typ reklamy, która zajmuje większość ekranu. W rezultacie treści wydawcy nie pojawiają się na ekranie podczas wyświetlania reklamy pośredniej.

Możliwość wyświetlenia reklamy przejściowej możesz zidentyfikować w żądaniu stawki, sprawdzając, czy w Protobuf pole BidRequest.imp.instl ma wartość true, a w JSON – 1.

Rozmiar boksu reklamowego

Rozmiar boksu reklamowego w przypadku reklam pełnoekranowych wskazuje obszar, który może być użyty do renderowania kreacji. Zależny jest on od kilku czynników, takich jak konkretne formaty i wymiary ekranu.

Pierwszy z par szerokości i wysokości w polu BidRequest.imp.banner.format w OpenRTB odpowiada rzeczywistemu rozmiarowi boksu reklamowego, a pozostałe pary to lista dozwolonych rozmiarów reklamy, które mieszczą się w ramach wymagań boksu.

Kreacje nie są ograniczone do zalecanych rozmiarów w pytaniu o stawkę, ale wszystkie zalecane rozmiary w pytaniu o stawkę są gwarantowane w akceptowalnym zakresie rozmiarów.

Możesz licytować za pomocą dowolnej kreacji, której szerokość i wysokość spełniają te kryteria:

  • Mniejsze lub równe szerokości i wysokości boksu reklamowego
  • Większa lub równa 50% szerokości boksu reklamowego
  • Większa lub równa 40% wysokości boksu reklamowego

Jeśli rozmiar reklamy jest za duży lub za mały, odpowiedź na pytanie o stawkę zostanie odfiltrowana z powodem odrzucenia INTERSTITIAL_SIZE_MISMATCH.

Jeśli nie określisz rozmiaru reklamy w odpowiedzi na pytanie o stawkę, odpowiedź zostanie odfiltrowana z powodem odrzucenia MISSING_AD_SIZE.

Przykładowe pytania o stawkę

Oto kilka przykładowych żądań stawek dotyczących reklam pełnoekranowych.

OpenRTB Protobuf

Wyświetlanie próbki

[Zaszyfrowane żądanie](/authorized-buyers/rtb/data/request-response/openrtb_protobuf_mobile_app_interstitial_ad_request.bin){: .download}
id: "27q8F4ja125b5Ay5Lg5I8Y"
imp {
  id: "1"
  banner {
    w: 368
    h: 740
    pos: AD_POSITION_FULLSCREEN
    api: MRAID_1
    api: MRAID_2
    format {
      w: 368
      h: 740
    }
    format {
      w: 300
      h: 600
    }
  }
  displaymanager: "GoogleMobileAds-Android"
  displaymanagerver: "21.5.0"
  instl: true
  tagid: "7072441745"
  bidfloor: 0.01
  bidfloorcur: "USD"
  secure: true
  exp: 14400
  clickbrowser: true
  metric {
    type: "click_through_rate"
    value: 0.026930272579193115
    vendor: "EXCHANGE"
  }
  metric {
    type: "viewability"
    value: 0.82
    vendor: "EXCHANGE"
  }
  [com.google.doubleclick.imp] {
    billing_id: 14443955188
    publisher_settings_list_id: 7634109184153514733
    publisher_settings_list_id: 4552400977800686866
    allowed_vendor_type: 4374
    allowed_vendor_type: 4651
    ampad: AMP_AD_NOT_ALLOWED
    excluded_creatives {
      buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
    }
    excluded_creatives {
      buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
    }
    creative_enforcement_settings {
      policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
      publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
    }
    auction_environment: SERVER_SIDE_AUCTION
    is_app_open_ad: true
    ae: SERVER_SIDE_AUCTION
  }
}
app {
  name: "Test App"
  ver: "9.1.6"
  bundle: "com.google.testapp"
  publisher {
    id: "pub-8897222327395144"
    [com.google.doubleclick.publisher] {
      country: "TH"
    }
  }
  content {
    url: "https://www.google.com"
    userrating: "4.7"
    livestream: false
    language: "en"
  }
  storeurl: "https://www.google.com"
  [com.google.doubleclick.app] {
    inventorypartnerdomain: "OMITTED"
  }
}
device {
  ua: "OMITTED"
  geo {
    lat: 0.0
    lon: 0.0
    country: "IND"
    region: "IN-OR"
    zip: "751024"
    type: IP
    utcoffset: 330
    accuracy: 5126
    [com.google.doubleclick.geo] {
      geo_criteria_id: 9149991
    }
  }
  ipv6: "2401:4900:3da4::"
  carrier: "70210"
  make: "Samsung"
  model: "SM-A705GM"
  os: "android"
  osv: "11"
  connectiontype: WIFI
  devicetype: HIGHEND_PHONE
  lmt: true
  w: 384
  h: 812
  pxratio: 2.813
  sua {
    browsers {
      brand: "Mozilla"
      version: "5"
      version: "0"
    }
    browsers {
      brand: "AppleWebKit"
      version: "537"
      version: "36"
    }
    platform {
      brand: "Android"
      version: "11"
    }
    mobile: true
    model: "SM-A705GM"
    source: USER_AGENT_STRING
  }
  [com.google.doubleclick.device] {
    session_id: "LFcNok-qRI2ea_Z5FPgRiA"
  }
}
user {
  [com.google.doubleclick.user] {
    session {
      duration: 89
    }
  }
}
at: FIRST_PRICE
tmax: 300
cur: "USD"
bcat: "IAB23-3"
bcat: "IAB23-4"
source {
  schain {
    complete: true
    nodes {
      asi: "testssp.com"
      sid: "pub-1111111111111111"
      hp: true
    }
    ver: "1.0"
  }
  [com.google.doubleclick.source] {
    omidpn: "Google"
    omidpv: "afma-sdk-a-v243220999.224400000.1"
    schain {
      complete: 1
      nodes {
        asi: "testssp.com"
        sid: "pub-1111111111111111"
        hp: 1
      }
      ver: "1.0"
    }
  }
}
[com.google.doubleclick.bid_request] {
  google_query_id: "ANy-z7C179-E2Rj2VZOiHt5vMyI25Z3W94Lk71Tbz95m005IfNm8OP88j46C27ovLV5yV57m"
  fcap_scope: FREQUENCY_CAPPING_SCOPE_APP
  privacy_treatments {
    allow_user_data_collection: true
  }
}

OpenRTB w formacie JSON

Wyświetlanie próbki

{
  "id": "27q8F4ja125b5Ay5Lg5I8Y",
  "imp": [
    {
      "id": "1",
      "banner": {
        "w": 368,
        "h": 740,
        "pos": 7,
        "api": [
          3,
          5
        ],
        "format": [
          {
            "w": 368,
            "h": 740
          },
          {
            "w": 300,
            "h": 600
          }
        ]
      },
      "displaymanager": "GoogleMobileAds-Android",
      "displaymanagerver": "21.5.0",
      "instl": 1,
      "tagid": "7072441745",
      "bidfloor": 0.01,
      "bidfloorcur": "USD",
      "secure": 1,
      "exp": 14400,
      "clickbrowser": 1,
      "metric": [
        {
          "type": "click_through_rate",
          "value": 0.026930272579193115,
          "vendor": "EXCHANGE"
        },
        {
          "type": "viewability",
          "value": 0.82,
          "vendor": "EXCHANGE"
        }
      ],
      "ext": {
        "billing_id": [
          "14443955188"
        ],
        "publisher_settings_list_id": [
          "7634109184153514733",
          "4552400977800686866"
        ],
        "allowed_vendor_type": [
          4374,
          4651
        ],
        "ampad": 2,
        "excluded_creatives": [
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          },
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          }
        ],
        "creative_enforcement_settings": {
          "policy_enforcement": 2,
          "publisher_blocks_enforcement": 1
        },
        "auction_environment": 0,
        "is_app_open_ad": 1,
        "ae": 0
      }
    }
  ],
  "app": {
    "name": "Test App",
    "ver": "9.1.6",
    "bundle": "com.google.testapp",
    "publisher": {
      "id": "pub-8897222327395144",
      "ext": {
        "country": "TH"
      }
    },
    "content": {
      "url": "https://www.google.com",
      "userrating": "4.7",
      "livestream": 0,
      "language": "en"
    },
    "storeurl": "https://www.google.com",
    "ext": {
      "inventorypartnerdomain": "OMITTED"
    }
  },
  "device": {
    "ua": "OMITTED",
    "geo": {
      "lat": 0.0,
      "lon": 0.0,
      "country": "IND",
      "region": "IN-OR",
      "zip": "751024",
      "type": 2,
      "utcoffset": 330,
      "accuracy": 5126,
      "ext": {
        "geo_criteria_id": 9149991
      }
    },
    "ipv6": "2401:4900:3da4::",
    "carrier": "70210",
    "make": "Samsung",
    "model": "SM-A705GM",
    "os": "android",
    "osv": "11",
    "connectiontype": 2,
    "devicetype": 4,
    "lmt": 1,
    "w": 384,
    "h": 812,
    "pxratio": 2.813,
    "sua": {
      "browsers": [
        {
          "brand": "Mozilla",
          "version": [
            "5",
            "0"
          ]
        },
        {
          "brand": "AppleWebKit",
          "version": [
            "537",
            "36"
          ]
        }
      ],
      "platform": {
        "brand": "Android",
        "version": [
          "11"
        ]
      },
      "mobile": 1,
      "model": "SM-A705GM",
      "source": 3
    },
    "ext": {
      "session_id": "LFcNok-qRI2ea_Z5FPgRiA"
    }
  },
  "user": {
    "ext": {
      "session": {
        "duration": 89
      }
    }
  },
  "at": 1,
  "tmax": 300,
  "cur": [
    "USD"
  ],
  "bcat": [
    "IAB23-3",
    "IAB23-4"
  ],
  "source": {
    "schain": {
      "complete": 1,
      "nodes": [
        {
          "asi": "testssp.com",
          "sid": "pub-1111111111111111",
          "hp": 1
        }
      ],
      "ver": "1.0"
    },
    "ext": {
      "omidpn": "Google",
      "omidpv": "afma-sdk-a-v243220999.224400000.1",
      "schain": {
        "complete": 1,
        "nodes": [
          {
            "asi": "testssp.com",
            "sid": "pub-1111111111111111",
            "hp": 1
          }
        ],
        "ver": "1.0"
      }
    }
  },
  "ext": {
    "google_query_id": "ANy-z7C179-E2Rj2VZOiHt5vMyI25Z3W94Lk71Tbz95m005IfNm8OP88j46C27ovLV5yV57m",
    "fcap_scope": 4,
    "privacy_treatments": {
      "allow_user_data_collection": 1
    }
  }
}

Sprawdzone metody

Google zaleca stosowanie tych sprawdzonych metod:

  • Uwzględnij atrybuty formatowania w fragmentach kreacji HTML, aby wyśrodkować reklamy w miejscu docelowym. W przeciwnym razie reklamy są renderowane w lewym górnym rogu boksu reklamowego.

  • Odpowiedz reklamą pełnoekranową, która zajmuje jak najwięcej miejsca w boksie reklamowym. Nie wypełniaj boksu reklamy pełnoekranowej reklamą o znacznie mniejszym rozmiarze. Na przykład reklama o rozmiarze 320 x 480 jest za mała na boks reklamy pełnoekranowej o rozmiarze 420 x 800.

  • Nie dodawaj przycisku zamykania:

    • Nasz pakiet SDK automatycznie wyświetla przycisk zamknięcia (w odpowiednich przypadkach), aby użytkownicy mogli go kliknąć.
    • Format MRAID useCustomClose() nie jest obsługiwany.
  • Aby wybrać dopuszczalne rozmiary reklamy w odpowiedzi na pytanie o stawkę, użyj zalecanych rozmiarów z pytania o stawkę.

  • Porównaj pola BidRequest.device.wBidRequest.device.h, aby wybrać kreacje o odpowiedniej orientacji.

    • Zalecamy stosowanie kreacji w orientacji pionowej i poziomej, aby można było określać stawki w odpowiedniej orientacji.

Reklamy pełnoekranowe bez rozmiaru (elastyczne)

Interaktywna reklama przejściowa bez rozmiaru (nazwana też reklamą elastycznym lub płynną) zmienia rozmiar dynamicznie, aby zajmować całą szerokość i wysokość boksu reklamowego. Autoryzowani kupujący nie zmieniają rozmiaru kreacji za Ciebie. Musisz przesłać kreację, która automatycznie dostosowuje rozmiar.

Reklamy pełnoekranowe bez rozmiaru wystarczy przesłać do sprawdzenia tylko raz, mimo że mogą być wyświetlane w różnych rozmiarach. Aby mieć pewność, że Twoja kreacja nie zostanie ponownie sprawdzona w przypadku każdego rozmiaru boksu reklamowego, zalecamy:

Odpowiedź na stawkę

  • Użyj atrybutu BidResponse.seatbid.bid.ext.attribute, aby zadeklarować wartość Rendering: Sizeless AdX (atrybut 105) w odpowiedzi na stawkę. Deklarowalne atrybuty kreacji znajdziesz w pliku danych buyer-declarable-creative-attributes.txt.

  • W elementach BidResponse.seatbid.bid.wBidResponse.seatbid.bid.h wpisz rozmiar, w jakim chcesz renderować kreację na podstawie wymagań dotyczących rozmiaru reklamy. Przykładowo: 360 x 480 w przypadku boksu reklamowego 360 x 480. Kreacja może się nadal wyświetlać w innych rozmiarach. W przypadku przestarzałego protokołu Google RTB należy wypełnić pola BidResponse.Ad.widthBidResponse.Ad.height.

Jeśli do istniejącej kreacji dodasz atrybut Rendering: Sizeless AdX, kreacja będzie musiała zostać ponownie sprawdzona.

Wstępne zatwierdzenie kreacji

  • Podczas przesyłania kreacji do sprawdzenia uwzględnij atrybut RENDERING_SIZELESS_ADX w polu declaredAttributes. W interfejsie Real-time Bidding API atrybuty kreacji są reprezentowane za pomocą wartości wyliczeniowej typu string. Więcej informacji o odpowiednictwie tych wartości do numerycznych identyfikatorów z pliku buyer-declarable-creative-attributes.txt znajdziesz w przewodniku po mapowaniu.
  • Prześlij kreację w rozmiarze, który zamierzasz wyświetlać, czyli w rozmiarze typowym dla kreacji wyskakujących. Kreacja może nadal wyświetlać się w innych rozmiarach.
  • Każda kreacja bez rozmiaru wlicza się do limitu kreacji tylko raz, nawet jeśli wyświetla się w kilku rozmiarach.