إعداد الأحداث المخصَّصة

اختيار النظام الأساسي: Android جديد Android iOS Unity

تتيح لك الأحداث المخصّصة إضافة توسّط العرض الإعلاني بدون انقطاع لشبكة إعلانات غير متوافقة . يمكنك إجراء ذلك من خلال تنفيذ محوِّل حدث مخصّص لشبكة الإعلانات التي تريد دمجها.

المتطلبات الأساسية

قبل أن تتمكّن من إنشاء أحداث مخصّصة، عليك أولاً دمج أحد أشكال الإعلانات التالية في تطبيقك:

إنشاء حدث مخصّص في واجهة المستخدم

يجب أولاً إنشاء حدث مخصّص في واجهة مستخدم Ad Manager. يُرجى الاطّلاع على التعليمات الواردة في مقالة إنشاء مجموعات الشبكات الإعلانية المدِرّة للأرباح وإدارتها.

عليك تقديم ما يلي:

اسم الفئة

الاسم المؤهّل بالكامل للفئة التي تنفّذ محوِّل الحدث المخصّص ، مثلاً SampleCustomEvent، أو إذا تم تنفيذ فئتك باستخدام Swift، MediationExample.SampleCustomEventSwift.

يكون اسم الهدف مطلوبًا إذا كان لديك أهداف متعدّدة في مشروعك أو إذا كان اسم المشروع مختلفًا عن اسم الهدف. باستخدام اسم الهدف، سيبدو الاسم على النحو التالي: appName_targetName.className. بالإضافة إلى ذلك، يُرجى تذكُّر استبدال أي أحرف غير أبجدية رقمية، مثل الشرطات، بشرطات سفلية. مثال.

التصنيف

اسم فريد يحدّد مصدر الإعلان

المَعلمة

وسيطة سلسلة اختيارية يتم تمريرها إلى محوِّل الحدث المخصّص

تنفيذ GADMediationAdapter

الخطوة الأولى لإنشاء حدث مخصّص هي تنفيذ بروتوكول GADMediationAdapter كما هو موضّح في فئة SampleCustomEvent في مثالنا.

تتلقّى هذه الفئة الرسائل من Ad Manager وتفوّض مسؤولية إنشاء شكل الإعلان الصحيح.

تهيئة المحوِّل

عند تهيئة Google Mobile Ads SDK، يتم استدعاء setUpWithConfiguration:completionHandler: على جميع المحوّلات التابعة لجهات خارجية والأحداث المخصّصة المتوافقة التي تم ضبطها للتطبيق ضمن واجهة مستخدم Ad Manager. استخدِم هذه الطريقة لإجراء أي عملية إعداد أو تهيئة ضرورية على حزمة تطوير البرامج (SDK) المطلوبة التابعة لجهة خارجية من أجل الحدث المخصّص.

Swift

import GoogleMobileAds

class SampleCustomEvent: NSObject, MediationAdapter {

  static func setUpWith(
    _ configuration: MediationServerConfiguration,
    completionHandler: @escaping GADMediationAdapterSetUpCompletionBlock
  ) {
    // This is where you will initialize the SDK that this custom event is built
    // for. Upon finishing the SDK initialization, call the completion handler
    // with success.
    completionHandler(nil)
  }
}

Objective-C

#import "SampleCustomEvent.h"

@implementation SampleCustomEvent

+ (void)setUpWithConfiguration:(nonnull GADMediationServerConfiguration *)configuration
             completionHandler:(nonnull GADMediationAdapterSetUpCompletionBlock)completionHandler {
  // This is where you initialize the SDK that this custom event is built
  // for. Upon finishing the SDK initialization, call the completion handler
  // with success.
  completionHandler(nil);
}

الإبلاغ عن أرقام الإصدارات

يجب أن تُبلغ جميع الأحداث المخصّصة Google Mobile Ads SDK عن إصدار محوِّل الحدث المخصّص نفسه وإصدار حزمة تطوير البرامج (SDK) التابعة لجهة خارجية التي يتفاعل معها الحدث المخصّص. يتم الإبلاغ عن الإصدارات كـ GADVersionNumber كائنات:

Swift

static func adSDKVersion() -> VersionNumber {
  let versionComponents = String(SampleSDKVersion).components(
    separatedBy: ".")

  if versionComponents.count >= 3 {
    let majorVersion = Int(versionComponents[0]) ?? 0
    let minorVersion = Int(versionComponents[1]) ?? 0
    let patchVersion = Int(versionComponents[2]) ?? 0

    return VersionNumber(
      majorVersion: majorVersion, minorVersion: minorVersion, patchVersion: patchVersion)
  }

  return VersionNumber()
}

static func adapterVersion() -> VersionNumber {
  let versionComponents = String(SampleAdSDK.SampleAdSDKVersionNumber).components(
    separatedBy: ".")
  var version = VersionNumber()
  if versionComponents.count == 4 {
    version.majorVersion = Int(versionComponents[0]) ?? 0
    version.minorVersion = Int(versionComponents[1]) ?? 0
    version.patchVersion = Int(versionComponents[2]) * 100 + Int(versionComponents[3])
  }
  return version
}

Objective-C

+ (GADVersionNumber)adSDKVersion {
  NSArray *versionComponents =
      [SampleSDKVersion componentsSeparatedByString:@"."];
  GADVersionNumber version = {0};
  if (versionComponents.count >= 3) {
    version.majorVersion = [versionComponents[0] integerValue];
    version.minorVersion = [versionComponents[1] integerValue];
    version.patchVersion = [versionComponents[2] integerValue];
  }
  return version;
}

+ (GADVersionNumber)adapterVersion {
  NSArray *versionComponents =
      [SampleCustomEventAdapterVersion componentsSeparatedByString:@"."];
  GADVersionNumber version = {0};
  if (versionComponents.count == 4) {
    version.majorVersion = [versionComponents[0] integerValue];
    version.minorVersion = [versionComponents[1] integerValue];
    version.patchVersion = [versionComponents[2] integerValue] * 100 +
                           [versionComponents[3] integerValue];
  }
  return version;
}

طلب إعلان

لطلب إعلان، يُرجى الرجوع إلى التعليمات الخاصة بشكل الإعلان: