โฆษณาที่ SDK แสดง

โฆษณา SDK ของผู้ซื้อใช้ครีเอทีฟโฆษณาที่แสดงผลโดย SDK ของคุณเอง

พื้นที่โฆษณาในแอปบนอุปกรณ์เคลื่อนที่จากผู้เผยแพร่โฆษณาที่ผสานรวมอะแดปเตอร์การเสนอราคาของคุณลงในแอปสามารถยอมรับราคาเสนอ ที่มีรูปแบบโฆษณาที่แสดงผลด้วย SDK ของผู้ซื้อ วิธีแสดงผลจะขึ้นอยู่กับการใช้งาน SDK ของคุณและ SDKRenderedAd ที่คุณส่งในการ เสนอราคาตอบ

คุณสามารถเสนอราคาซึ่งรวมถึงโฆษณาที่แสดงผลด้วย SDK ของผู้ซื้อหรือรูปแบบโฆษณาอื่นๆที่Google Mobile Ads SDKรองรับ แต่ระบบจะกรองราคาเสนอที่มีทั้ง 2 อย่างออก

ข้อกำหนด

โฆษณา SDK ของผู้ซื้อพร้อมให้บริการแก่ผู้ซื้อที่ได้รับอนุมัติ รูปแบบนี้ต้องใช้ความพยายามเพิ่มเติมจากคุณและผู้เผยแพร่โฆษณา โปรดติดต่อผู้จัดการลูกค้าด้านเทคนิคเพื่อกำหนดค่าบัญชีสำหรับโฆษณา SDK ของผู้ซื้อ จากนั้นคุณสามารถใช้อะแดปเตอร์การเสนอราคาที่ช่วยให้ SDK สื่อสารกับ Google Mobile Ads SDK ได้ ผู้เผยแพร่โฆษณาต้องผสานรวม SDK และอะแดปเตอร์ของคุณลงในแอปบนอุปกรณ์เคลื่อนที่

เราขอแนะนำให้คุณส่งครีเอทีฟโฆษณาเข้ารับการ ตรวจสอบ ก่อนที่จะรวมไว้ในการเสนอราคาตอบ โปรดติดต่อผู้จัดการลูกค้าด้านเทคนิคหากไม่ทราบประเภทครีเอทีฟโฆษณาในขณะที่เสนอราคา

หากคำขอราคาเสนอรองรับรูปแบบโฆษณานี้ คุณสามารถระบุโฆษณาที่แสดงผล ด้วย SDK ของคุณได้โดยตั้งค่าฟิลด์ sdk_rendered_ad ในการ เสนอราคา ตอบ

คำขอราคาเสนอ

คำขอราคาเสนอสำหรับพื้นที่โฆษณาในแอปบนอุปกรณ์เคลื่อนที่ประกอบด้วยรายละเอียดเกี่ยวกับ SDK และอะแดปเตอร์ในแอปของผู้เผยแพร่โฆษณาที่คุณใช้ในการแสดงผลได้ในฟิลด์ต่อไปนี้

รหัส SDK

คุณสามารถใช้คำขอราคาเสนอเพื่อค้นหารหัส SDK ที่ต้องระบุในการเสนอราคาตอบด้วยฟิลด์ BidRequest.app.ext.installed_sdk.id

ดูข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้ได้ใน InstalledSdk เอกสารอ้างอิง

การแมปหน่วยโฆษณา

คุณสามารถใช้คำขอราคาเสนอเพื่อค้นหาการแมปหน่วยโฆษณาที่ตรงกับช่องราคาเสนอด้วยฟิลด์ BidRequest.imp.ext.ad_unit_mapping

ดูข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้ได้ใน AdUnitMappingเอกสารอ้างอิง

สัญญาณที่ปลอดภัย

ผู้เผยแพร่โฆษณาสามารถแชร์สัญญาณที่ปลอดภัยกับผู้เสนอราคา คุณดูสัญญาณเหล่านี้ได้ใน BidRequest.imp.ext.buyer_generated_request_data.data

ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีแสดงสัญญาณที่ปลอดภัยได้ในเอกสารอิง BuyerGeneratedRequestDataอ้างอิง

คำขอการทดสอบ

คุณสามารถใช้ฟิลด์ BidRequest.test เพื่อตรวจสอบว่าคำขอราคาเสนอเป็นคำขอทดสอบหรือไม่

ดูข้อมูลเพิ่มเติมเกี่ยวกับฟิลด์นี้ได้ใน BidRequestเอกสารอ้างอิง

ตัวอย่างคำขอราคาเสนอ

id: "<bid_request_id>"
imp {
  id: "1"
  banner {
    w: 320
    h: 50
    ...
  }
...
  adx_ext {
   ...
    ad_unit_mapping {
      keyvals {
        key: "key_1"
        value: "value_1"
      }
      keyvals {
        key: "key_2"
        value: "value_2"
      }
      ...
      format: FORMAT_BANNER
    }
  }
}
app {
 ...
  adx_ext {
    installed_sdk {
      id: "com.google.ads.mediation.partner.PartnerMediationAdapter"
      sdk_version {
        major: 1
        minor: 2
        micro: 30
      }
      adapter_version {
        major: 1
        minor: 2
        micro: 3000
      }
    }
    installed_sdk {
    ...
    }
    ...
  }
}
device {
  ...
}
user {
  ...
  }
  adx_ext {
    eids {
      source: "com.google.ads.mediation.partner.PartnerMediationAdapter"
      uids {
        id: "<partner_signal_string>"
      }
    }
  }
}
at: 1
tmax: 1000
cur: "USD"
test: 1
...
adx_ext {
  google_query_id: "<query_string>"
  ...
}

การเสนอราคาตอบ

คุณต้องระบุฟิลด์ต่อไปนี้ในการเสนอราคาตอบ

  • BidResponse.seatbid.bid.adomain
  • BidResponse.seatbid.bid.ext.billing_id
  • BidResponse.seatbid.bid.crid
  • BidResponse.seatbid.bid.w
  • BidResponse.seatbid.bid.h

นอกจากนี้ การเสนอราคาตอบของคุณต้องระบุข้อมูลต่อไปนี้ใน BidResponse.seatbid.bid.ext.sdk_rendered_ad

รหัส SDK

ใช้ฟิลด์ id เพื่อระบุรหัสสำหรับ SDK ในการแสดงโฆษณา

คุณดูรหัสได้ใน BidRequest.app.ext.installed_sdk

โฆษณาที่ประกาศ

ใช้ BidResponse.seatbid.bid.ext.sdk_rendered_ad.declared_ad เพื่อระบุครีเอทีฟโฆษณาที่เป็นไปตามข้อกำหนดที่พบใน BidRequest.imp.ext.creative_enforcement_settings และแสดงข้อมูลการแสดงผลของโฆษณา คุณควรระบุข้อมูลใน html_snippet, video_url, video_vast_xml หรือ native_response เพียงอย่างใดอย่างหนึ่งเท่านั้น

หากคุณไม่ระบุข้อมูลใน declared_ad เราจะตรวจสอบครีเอทีฟโฆษณาไม่ได้ และระบบจะกรองราคาเสนอทั้งหมดที่มีครีเอทีฟโฆษณานั้นออกจากการประมูล

ดูข้อมูลเพิ่มเติมเกี่ยวกับโฆษณาที่ประกาศได้ในเอกสารอ้างอิง DeclaredAd

ข้อมูลการแสดงผล

ใช้ฟิลด์ BidResponse.seatbid.bid.ext.sdk_rendered_ad.rendering_data เพื่อระบุข้อมูลให้ SDK ของผู้ซื้อใช้ในการแสดงโฆษณา

ราคาเสนอเพื่อแสดงโฆษณา SDK ของผู้ซื้อต้องระบุครีเอทีฟโฆษณาในฟิลด์ declared_ad โฆษณาที่ประกาศต้องแสดง rendering_data อย่างถูกต้อง

ตัวอย่างออบเจ็กต์ SdkRenderedAd มีดังนี้

{
  "id": "1234567",
  "rendering_data": "\xd58...,\xd4\x89\xd\xf9",
  "declared_ad": {
    "html_snippet": "<iframe src=\"https://example.com/ads?id=123&
      curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>",
  }
}

เราขอแนะนำให้ใช้ Real-time Bidding API เพื่อ ส่งครีเอทีฟโฆษณาเข้ารับการ ตรวจสอบ ก่อนที่จะรวมไว้ในการเสนอราคาตอบ

ดูรายละเอียดเพิ่มเติมเกี่ยวกับฟิลด์ SdkRenderedAd ได้ใน คู่มือ OpenRTB

ตัวอย่างการเสนอราคาตอบ

ตัวอย่างการเสนอราคาตอบสำหรับรูปแบบโฆษณาแต่ละรูปแบบมีดังนี้

id: "<bid_request_id>"
seatbid {
  bid {
    id: "<bidder_generated_response_id>"
    impid: "1"
    price: 99
    adomain: "https://play.google.com/store/apps/details?id=com.test.app"
    cid: "<billing_id>"
    crid: "<creative_id>"
    w: 320
    h: 50
    burl: "https://abc.com/billing?td=fn&win_price=${AUCTION_PRICE}"
    adx_ext {
      sdk_rendered_ad {
        id: "com.google.ads.mediation.partner.PartnerMediationAdapter"
        rendering_data: "<rendering_data_string>"
        declared_ad {
          click_through_url: "https://play.google.com/store/apps/details?id=com.test.app"
          html_snippet: "<!doctype html> <html> ... </html>"
        }
      }
      event_notification_token {
        payload: "<payload_string>"
      }
      billing_id: 141763360450
    }
  }
}
bidid: "<bidder_generated_response_id>"
cur: "USD"

โฆษณาคั่นระหว่างหน้า

id: "<bid_request_id>"
seatbid {
  bid {
    id: "<bidder_generated_response_id>"
    impid: "1"
    price: 400
    adomain: "https://play.google.com/store/apps/details?id=com.test.app"
    cid: "<billing_id>"
    crid: "<creative_id>"
    w: 412
    h: 775
    adx_ext {
      sdk_rendered_ad {
        id: "com.google.ads.mediation.partner.PartnerMediationAdapter"
        rendering_data: "<rendering_data_string>"
        declared_ad {
          click_through_url: "https://play.google.com/store/apps/details?id=com.test.app"
          video_vast_xml: "<VAST version=\"2.0\"><Ad>...</Ad></VAST>"
        }
      }
      event_notification_token {
        payload: "<payload_string>"
      }
    }
  }
}
bidid: "<bidder_generated_response_id>"
cur: "USD"

วิดีโอที่มีการให้รางวัล

id: "<bid_request_id>"
seatbid {
  bid {
    id: "<bidder_generated_response_id>"
    impid: "1"
    price: 400
    adomain: "https://play.google.com/store/apps/details?id=com.test.app"
    cid: "<billing_id>"
    crid: "<creative_id>"
    w: 412
    h: 775
    adx_ext {
      sdk_rendered_ad {
        id: "com.google.ads.mediation.partner.PartnerMediationAdapter"
        rendering_data: "<rendering_data_string>"
        declared_ad {
          click_through_url: "https://play.google.com/store/apps/details?id=com.test.app"
          video_vast_xml: "<VAST version=\"2.0\"><Ad>...</Ad></VAST>"
        }
      }
      event_notification_token {
        payload: "<payload_string>"
      }
    }
  }
}
bidid: "<bidder_generated_response_id>"
cur: "USD"

เนทีฟ

id: "<bid_request_id>"
seatbid {
  bid {
    id: "<bidder_generated_response_id>"
    impid: "1"
    price: 400
    adomain: "https://play.google.com/store/apps/details?id=com.test.app"
    cid: "<billing_id>"
    crid: "<creative_id>"
    w: 1200
    h: 627
    adx_ext {
      sdk_rendered_ad {
        id: "com.google.ads.mediation.partner.PartnerMediationAdapter"
        rendering_data: "<rendering_data_string>"
        declared_ad {
          click_through_url: "https://play.google.com/store/apps/details?id=com.test.app"
          native_response {
            ...
            assets {
              id: 1
              title {
                text: ""
              }
            }
            assets {
              id: 2
              data {
                value: "<some_string>"
              }
            }
            assets {
              id: 3
              data {
                value: "View now"
              }
            }
            assets {
              id: 4
              img {
                url: "<valid_image_url>"
                w: 1200
                h: 627
                type: 3
              }
            }
            assets {
              id: 5
              img {
                url: "<valid_image_url>"
                w: 100
                h: 100
                type: 1
              }
            }
            assets {
              id: 6
              data {
                value: ""
              }
            }
            assets {
              id: 7
              data {
                value: "<some_string>"
              }
            }
            link {
              url: "<destination_link>"
            }
          }
        }
      }
      event_notification_token {
        payload: "<payload_string>"
      }
    }
  }
}
bidid: "<bidder_generated_response_id>"
cur: "USD"

การตรวจสอบครีเอทีฟโฆษณา

ครีเอทีฟโฆษณาจะได้รับการตรวจสอบก่อนที่จะแสดงได้เพื่อให้มั่นใจว่าเป็นไปตาม นโยบายและการตั้งค่าของผู้เผยแพร่โฆษณา

คุณส่งครีเอทีฟโฆษณาเข้ารับการตรวจสอบได้ 2 วิธีดังนี้

Real-time Bidding API (แนะนำ)

คุณสามารถใช้ buyers.creatives.create เมธอดของ Real-time Bidding API เพื่อ ส่งครีเอทีฟโฆษณาเข้ารับการตรวจสอบ

API กำหนดให้ส่งครีเอทีฟโฆษณาเพียงรายการเดียวต่อครีเอทีฟโฆษณา และช่วยให้คุณตรวจสอบสถานะการตรวจสอบครีเอทีฟโฆษณาได้

การเสนอราคาตอบ

คุณสามารถส่งครีเอทีฟโฆษณาใหม่ได้โดยตรงในการเสนอราคาตอบ

คุณต้องใช้ฟิลด์ declared_ad ของออบเจ็กต์ SdkRenderedAd เพื่อส่งการเสนอราคาตอบพร้อมครีเอทีฟโฆษณา SDK ของผู้ซื้อเข้ารับการตรวจสอบ

ระบบจะตรวจสอบครีเอทีฟโฆษณาที่ส่งในการเสนอราคาตอบหลังจากมีการเสนอราคาจำนวนมากแล้วเท่านั้น ระบบจะกรองราคาเสนอทั้งหมดที่เสนอราคาก่อนการตรวจสอบเสร็จสมบูรณ์ออกจากการประมูล คุณสามารถใช้อินเทอร์เฟซการเสนอราคาแบบเรียลไทม์ หรือ Real-time Bidding API เพื่อตรวจสอบสถานะของครีเอทีฟโฆษณาหลังจากเริ่มการตรวจสอบ

ดูรายละเอียดเพิ่มเติมได้ในคู่มือครีเอทีฟโฆษณาสำหรับ

การผสานรวมอื่นๆ ของ Google Mobile Ads SDK

Authorized Buyers มีตัวเลือกมากมายในการผสานรวมกับ Google Mobile Ads SDK โดยตรง ซึ่งรวมถึง สื่อกลาง, อะแดปเตอร์ผู้เสนอราคา และ สัญญาณที่ปลอดภัย หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับจุดผสานรวมเหล่านี้ หรือต้องการพูดคุยเกี่ยวกับการผสานรวมสัญญาณหรือการประมวลผลอื่นๆ ในอุปกรณ์กับ Google Mobile Ads SDK เพื่อปรับปรุงความเกี่ยวข้องของโฆษณาหรือการวัดผล โปรดติดต่อผู้จัดการลูกค้าด้านเทคนิค