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ılardan gelen 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 teklif verme 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.
Reklam öğelerini bir teklif yanıtına eklemeden önce incelenmek üzere göndermenizi öneririz. Teklif zamanı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,
BidRequest.app.ext.installed_sdk.idalanı ile teklif yanıtında sağlamanız gereken SDK kimliğini bulabilirsiniz.Bu konu hakkında daha fazla bilgiyi
InstalledSdkreferans belgelerinde bulabilirsiniz.- Reklam Birimi Eşleme
Teklif isteğini kullanarak teklif yuvasıyla eşleşen reklam birimi eşlemelerini
BidRequest.imp.ext.ad_unit_mappingalanı ile bulabilirsiniz.Bu konu hakkında daha fazla bilgiyi
AdUnitMappingreferans belgelerinde bulabilirsiniz.- Güvenli Sinyaller
Yayıncılar, güvenli sinyalleri teklif verenlerle paylaşabilir. Bunları
BidRequest.imp.ext.buyer_generated_request_data.databölümünde bulabilirsiniz.Güvenli sinyallerin
BuyerGeneratedRequestDatareferans dokümanlarında nasıl gösterildiği hakkında daha fazla bilgi edinebilirsiniz.- Test İstekleri
Teklif isteğinin test olup olmadığını doğrulamak için
BidRequest.testalanını kullanabilirsiniz.Bu alan hakkında daha fazla bilgiyi
BidRequestreferans 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.adomainBidResponse.seatbid.bid.ext.billing_idBidResponse.seatbid.bid.cridBidResponse.seatbid.bid.wBidResponse.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
idalanını kullanın.Kimliği
BidRequest.app.ext.installed_sdkbölümünde bulabilirsiniz.- Bildirilen reklam
BidResponse.seatbid.bid.ext.sdk_rendered_ad.declared_adbölümündeki koşulları karşılayan ve reklamın oluşturma verilerini temsil eden bir reklam öğesi sağlamak içinBidRequest.imp.ext.creative_enforcement_settingskullanın. Yalnızcahtml_snippet,video_url,video_vast_xmlveyanative_responseözelliklerinden biri doldurulmalıdır.declared_adalanı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
DeclaredAdreferans 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_dataalanını kullanın.Alıcı SDK reklamı yerleştirmek için verilen tekliflerde
declared_adalanında bir reklam öğesi belirtilmelidir. Beyan edilen reklam,rendering_dataöğesini doğru şekilde temsil etmelidir.Aşağıda örnek bir
SdkRenderedAdnesnesi 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:
Banner
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ınlanmadan önce 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.createGerçek Zamanlı Teklif Verme API'sinin 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
SdkRenderedAdnesnesinindeclared_adalanını kullanmanız gerekir.Teklif yanıtında gönderilen reklam öğeleri yalnızca çok sayıda 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.