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

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

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

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

المتطلبات

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

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

ننصحك بإرسال تصاميم الإعلانات للمراجعة قبل تضمينها في الاستجابة لعرض السعر.

إذا كان طلب عرض السعر يتيح شكل الإعلان هذا، يمكنك تحديد إعلان يتم عرضه باستخدام حزمة 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) الخاصة بالمشتري لعرض إعلانك.

يجب أن تحدّد عروض الأسعار لعرض إعلان مستند إلى حزمة تطوير البرامج الخاصة بالمشتري تصميم إعلان في الحقل 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) الخاصة بالمشتري بغرض المراجعة.

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

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