شكل الإعلان في حزمة تطوير البرامج (SDK) للمشتري

تستخدِم إعلانات حِزم تطوير البرامج (SDK) الخاصة بالمشترين مواد عرض يتم عرضها من خلال حزمة تطوير البرامج (SDK) الخاصة بك.

يمكن للمساحات الإعلانية في التطبيقات على الأجهزة الجوّالة من الناشرين الذين يدمجون برنامج التكيّف مع عروض الأسعار في تطبيقاتهم قبول عروض الأسعار بتنسيق الإعلان الذي تعرضه حزمة SDK الخاصة بالمشتري. تعتمد طريقة عرضها على عملية تنفيذ حزمة SDK وSDKRenderedAd التي ترسلها في ردّ عرض السعر.

يمكنك تقديم عرض سعر يتضمّن إمّا إعلانًا معروضًا باستخدام حزمة SDK خاصة بالمشتري أو أي تنسيق إعلان آخر متوافق مع حزمة تطوير البرامج (SDK) لإعلانات Google على الأجهزة الجوّالة، ولكن سيتم فلترة أي عروض أسعار تتضمّن كليهما.

المتطلبات

تتوفّر إعلانات حِزم SDK الخاصة بالشراة للشراة المعتمَدين. يتطلّب هذا التنسيق مجهودًا إضافيًا منك ومن الناشر. يُرجى التواصل مع المدير الفني للحساب من أجل ضبط حسابك لعرض إعلانات حزمة تطوير البرامج (SDK) للمشترين. يمكنك بعد ذلك تنفيذ محوّل برمجي خاص بميزة "عروض الأسعار" يتيح لحزمة SDK التواصل مع حزمة "SDK لإعلانات Google على الأجهزة الجوّالة". على الناشر دمج حزمة 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 من أجل إرسال تصاميم الإعلانات للمراجعة قبل تضمينها في ردّ على عرض سعر.

اطّلِع على دليل OpenRTB لمزيد من التفاصيل حول حقول SdkRenderedAd.

نموذج استجابة لعرض السعر

في ما يلي أمثلة على ردود عروض الأسعار لكل شكل إعلان:

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"

مراجعة تصميم الإعلان

تتم مراجعة تصاميم الإعلانات قبل عرضها للتأكّد من أنّها تستوفي سياساتنا وإعدادات الناشر.

في ما يلي طريقتان يمكنك من خلالهما إرسال تصاميم الإعلانات للمراجعة:

Real-time Bidding API (موصى به)

يمكنك استخدام طريقة buyers.creatives.create في Real-time Bidding API من أجل إرسال تصاميم إعلانات للمراجعة.

لا تتطلّب واجهة برمجة التطبيقات سوى إرسال واحد لكل تصميم إعلان، كما تتيح لك التحقّق من حالة مراجعة تصميم إعلانك.

الاستجابة لعرض السعر

يمكنك إرسال تصاميم إعلانات جديدة مباشرةً في ردّ عرض الأسعار.

يجب استخدام الحقل declared_ad في العنصر SdkRenderedAd لإرسال ردّ على عرض سعر يتضمّن تصميم إعلان من حزمة تطوير البرامج (SDK) الخاصة بالمشتري بغرض المراجعة.

لا تتم مراجعة تصاميم الإعلانات المُرسَلة في ردّ عروض الأسعار إلا بعد تقديم العديد من عروض الأسعار. يتم استبعاد جميع عروض الأسعار التي تمّ تقديمها قبل اكتمال المراجعة من المزاد. يمكنك استخدام واجهة عروض الأسعار في الوقت الفعلي أو واجهة برمجة التطبيقات لعروض الأسعار في الوقت الفعلي للتحقّق من حالة تصميم إعلان بعد بدء المراجعة.

راجِع دليل المواد الإبداعية لمزيد من التفاصيل.