SDK ile oluşturulan reklamlar

Alıcı SDK reklamları, kendi SDK'nız tarafından oluşturulan reklam öğelerini kullanır.

Teklifli sistem adaptörünüzü uygulamalarına entegre eden yayıncıların mobil uygulama envanteri, alıcı SDK'sı tarafından oluşturulan reklam biçimiyle teklifleri kabul edebilir. Bu öğelerin nasıl oluşturulacağı, SDK uygulamanıza ve teklif yanıtında gönderdiğiniz SDKRenderedAd'ye bağlıdır.

Alıcı SDK'sı tarafından oluşturulan bir reklam veya Google Mobile Ads SDK tarafından desteklenen başka bir reklam biçimi içeren bir teklif verebilirsiniz. Ancak her ikisini de içeren teklifler filtrelenir.

Şartlar

Alıcı SDK'sı reklamları, onaylanmış alıcılar tarafından kullanılabilir. Bu biçim, sizden ve yayıncıdan ekstra çaba gerektirir. Hesabınızı alıcı SDK'sı reklamları için yapılandırmak üzere teknik hesap yöneticinizle iletişime geçin. Ardından, SDK'nızın Google Mobile Ads SDK'sı ile iletişim kurmasını sağlayan bir teklifli sistem bağdaştırıcısı uygulayabilirsiniz. Yayıncının, SDK'nızı ve bağdaştırıcınızı mobil uygulamalarına entegre etmesi gerekir.

Teklif yanıtına dahil etmeden önce reklam öğelerini incelemeye göndermenizi öneririz. Teklif verme sırasında reklam öğesi türünü bilmiyorsanız teknik hesap yöneticinizle iletişime geçin.

Bir teklif isteği bu reklam biçimini destekliyorsa teklif yanıtında sdk_rendered_ad alanını ayarlayarak SDK'nızla oluşturulan bir reklam belirtebilirsiniz.

Teklif isteği

Mobil uygulama envanteri için teklif istekleri, yayıncının uygulamasındaki SDK'lar ve bağdaştırıcılarla ilgili ayrıntıları içerir. Bu ayrıntıları aşağıdaki alanlarda oluşturma için kullanabilirsiniz:

SDK kimliği

Teklif isteğini kullanarak, teklif yanıtında BidRequest.app.ext.installed_sdk.id alanı ile birlikte sağlamanız gereken SDK kimliğini bulabilirsiniz.

Bu konu hakkında daha fazla bilgiyi InstalledSdk referans belgelerinde bulabilirsiniz.

Reklam Birimi Eşleme

Teklif isteğini kullanarak BidRequest.imp.ext.ad_unit_mapping alanı ile teklif alanına eşleşen reklam birimi eşlemelerini bulabilirsiniz.

Bu konu hakkında daha fazla bilgiyi AdUnitMapping referans belgelerinde bulabilirsiniz.

Güvenli Sinyaller

Yayıncılar, güvenli sinyalleri teklif verenlerle paylaşabilir. Bu bilgileri BidRequest.imp.ext.buyer_generated_request_data.data bölümünde bulabilirsiniz.

Güvenli sinyallerin nasıl temsil edildiği hakkında daha fazla bilgiyi BuyerGeneratedRequestData referans belgelerinde bulabilirsiniz.

Test İstekleri

Teklif isteğinin test olup olmadığını doğrulamak için BidRequest.test alanını kullanabilirsiniz.

Bu alan hakkında daha fazla bilgiyi BidRequest referans belgelerinde bulabilirsiniz.

Örnek teklif isteği

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>"
  ...
}

Teklif yanıtı

Teklif yanıtında aşağıdaki alanlar zorunludur:

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

Ayrıca, teklif yanıtınız aşağıdaki bilgilerle doldurulmalıdır: BidResponse.seatbid.bid.ext.sdk_rendered_ad

SDK kimliği

Reklamın oluşturulması için SDK'nın kimliğini sağlamak üzere id alanını kullanın.

Kimliği BidRequest.app.ext.installed_sdk bölümünde bulabilirsiniz.

Bildirilen reklam

BidResponse.seatbid.bid.ext.sdk_rendered_ad.declared_ad kullanarak BidRequest.imp.ext.creative_enforcement_settings'te belirtilen koşulları karşılayan ve reklamın oluşturma verilerini temsil eden bir reklam öğesi sağlayın. Yalnızca html_snippet, video_url, video_vast_xml veya native_response alanlarından biri doldurulmalıdır.

declared_ad alanını doldurmazsanız reklam öğesini inceleyemeyiz ve reklam öğesini içeren tüm teklifler açık artırmadan filtrelenir.

Bildirilen reklam hakkında daha fazla bilgiyi DeclaredAd referans belgelerinde bulabilirsiniz.

Verileri oluşturma

Alıcı SDK'sının reklamınızı oluşturmak için kullanacağı verileri sağlamak üzere BidResponse.seatbid.bid.ext.sdk_rendered_ad.rendering_data alanını kullanın.

Alıcı SDK'sı reklamı yerleştirmek için verilen tekliflerde declared_ad alanında bir reklam öğesi belirtilmelidir. Beyan edilen reklam, rendering_data doğru şekilde temsil etmelidir.

Aşağıda örnek bir SdkRenderedAd nesnesi verilmiştir:

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

Reklam öğelerini bir teklif yanıtına dahil etmeden önce incelenmek üzere göndermek için Gerçek Zamanlı Teklif API'sini kullanmanızı öneririz.

SdkRenderedAd alanları hakkında daha fazla bilgi için OpenRTB kılavuzuna bakın.

Örnek teklif yanıtı

Her reklam biçimi için örnek teklif yanıtları aşağıda verilmiştir:

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"

Geçiş reklamı

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"

Ödüllü video

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"

Yerel biçim

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"

Reklam öğesi incelemesi

Reklam öğeleri, yayınlanabilmeleri için politikalarımıza ve yayıncı ayarlarına uygunluk açısından incelenir.

Reklam öğelerini incelemeye göndermenin iki yolu vardır:

Real-time Bidding API (önerilir)

buyers.creatives.create yöntemini kullanarak reklam öğelerini incelemeye gönderebilirsiniz.

API, reklam öğesi başına yalnızca bir gönderim gerektirir ve reklam öğenizin inceleme durumunu kontrol etmenize olanak tanır.

Teklif yanıtı

Yeni reklam öğelerini doğrudan teklif yanıtında gönderebilirsiniz.

İnceleme için alıcı SDK'sı reklam öğesi içeren bir teklif yanıtı göndermek üzere SdkRenderedAd nesnesinin declared_ad alanını kullanmanız gerekir.

Teklif yanıtında gönderilen reklam öğeleri yalnızca birçok tekliften sonra incelenir. İnceleme tamamlanmadan önce verilen tüm teklifler açık artırmadan filtrelenir. İnceleme başladıktan sonra bir reklam öğesinin durumunu kontrol etmek için Gerçek Zamanlı Teklif arayüzünü veya Gerçek Zamanlı Teklif API'sini kullanabilirsiniz.

Daha fazla bilgi için reklam öğeleri kılavuzuna bakın.

Diğer Google Mobile Ads SDK entegrasyonları

Authorized Buyers, Google Mobile Ads SDK ile doğrudan entegrasyon için uyumlulaştırma, teklif veren bağdaştırıcıları ve güvenli sinyaller dahil olmak üzere birden fazla seçeneğe sahiptir. Bu entegrasyon noktaları hakkında daha fazla bilgi edinmek veya reklam alaka düzeyini ya da ölçümü iyileştirmek için Google Mobile Ads SDK ile diğer cihaz üzerinde sinyal veya işleme entegrasyonlarını görüşmek üzere Teknik Hesap Yöneticinizle iletişime geçin.