พัฒนาอะแดปเตอร์สัญญาณที่ปลอดภัย

หากคุณมี SDK ของผู้ให้บริการสัญญาณที่สร้างสัญญาณการเสนอราคาแบบเรียลไทม์ (RTB) สัญญาณ คุณสามารถพัฒนาอะแดปเตอร์สัญญาณที่ปลอดภัยเพื่อให้ Google Mobile Ads SDK รวบรวม สัญญาณจาก SDK ของคุณได้

Google Mobile Ads SDK จะส่งต่อสัญญาณของคุณไปยังผู้ซื้อที่เข้าร่วมใน Authorized Buyers และ Open Bidding ที่เลือก

แผนภาพต่อไปนี้แสดงวงจรการส่งคำขอและการตอบกลับสำหรับการรวบรวมสัญญาณที่ปลอดภัย

อะแดปเตอร์สัญญาณที่ปลอดภัยมีหน้าที่รับผิดชอบในการเริ่มต้นใช้งานอะแดปเตอร์และการรวบรวมสัญญาณ

ใช้สัญญาณที่ปลอดภัย

ใช้สัญญาณที่ปลอดภัยสำหรับ Google Mobile Ads SDK เพื่อรวบรวมสัญญาณจาก SDK ของคุณ

คู่มือนี้จะอธิบายวิธีใช้สัญญาณที่ปลอดภัยโดยใช้ โปรโตคอล GADRTBAdapter

ตัวอย่างต่อไปนี้ ใช้โปรโตคอล GADRTBAdapter

Objective-C

@interface SampleAdapterSnippets : NSObject <GADRTBAdapter>
@end

เริ่มต้นใช้งานอะแดปเตอร์

Google Mobile Ads SDK เรียกใช้เมธอด setUpWithConfiguration:completionHandler:เมื่อ Google Mobile Ads SDK สร้างอินสแตนซ์ของอะแดปเตอร์สัญญาณที่ปลอดภัย ใช้เมธอดนี้เพื่อเริ่มต้นใช้งาน SDK

เมื่อ SDK เริ่มต้นใช้งานอย่างสมบูรณ์และพร้อมให้ Google Mobile Ads SDK รวบรวม สัญญาณแล้ว ให้เรียกใช้ GADMediationAdapterSetUpCompletionBlock บล็อกการดำเนินการให้เสร็จสมบูรณ์

หากอะแดปเตอร์สัญญาณที่ปลอดภัยไม่เรียกกลับ Google Mobile Ads SDK จะไม่รวบรวม สัญญาณจากอะแดปเตอร์สัญญาณที่ปลอดภัย

ตัวอย่างต่อไปนี้เรียกใช้แฮนเดิลอร์การดำเนินการให้เสร็จสมบูรณ์เพื่อแจ้งให้ Google Mobile Ads SDK ทราบว่า SDK เริ่มต้นใช้งานเรียบร้อยแล้ว

Objective-C

+ (void)setUpWithConfiguration:(GADMediationServerConfiguration *)configuration
             completionHandler:(GADMediationAdapterSetUpCompletionBlock)completionHandler {
  // Add your SDK initialization logic here.

  // Invoke the completionHandler once initialization completes. Pass a nil
  // error to indicate initialization succeeded.
  completionHandler(nil);
}

รายงานเวอร์ชันอะแดปเตอร์และ SDK

อะแดปเตอร์สัญญาณที่ปลอดภัยต้องรายงานทั้งเวอร์ชันอะแดปเตอร์และเวอร์ชัน SDK Google Mobile Ads SDK ใช้เวอร์ชันเหล่านี้สำหรับการรายงานและการแก้ปัญหา

หาก SDK ใช้เวอร์ชันอะแดปเตอร์นี้ในไบนารีเดียวกัน คุณสามารถแสดงเวอร์ชันเดียวกันสำหรับทั้งเวอร์ชันอะแดปเตอร์และเวอร์ชัน SDK ได้

ตัวอย่างต่อไปนี้แสดงเวอร์ชันของอะแดปเตอร์สัญญาณที่ปลอดภัย

Objective-C

+ (GADVersionNumber)adapterVersion {
  // If your secure signals SDK implements this adapter in the same binary
  // return the same version as your SDK.
  // return [self adSDKVersion];

  // If you built a separate binary for this secure signals adapter, return
  // the adapter's version here.
  GADVersionNumber version = {};
  version.majorVersion = 4;
  version.minorVersion = 5;
  version.patchVersion = 6;
  return version;
}

ตัวอย่างต่อไปนี้แสดงเวอร์ชัน SDK ที่อะแดปเตอร์สัญญาณที่ปลอดภัยโต้ตอบด้วย

Objective-C

+ (GADVersionNumber)adSDKVersion {
  // Return your SDK's version string here.
  NSString *versionString = kSDKVersionString;
  NSArray<NSString *> *components = [versionString componentsSeparatedByString:@"."];
  GADVersionNumber version = {};
  if (components.count == 3) {
    version.majorVersion = components[0].integerValue;
    version.minorVersion = components[1].integerValue;
    version.patchVersion = components[2].integerValue;
  } else {
    NSLog(@"Unexpected version string: %@. Returning 0.0.0 for adSDKVersion.", versionString);
  }
  return version;
}

แทนที่ kSDKVersionString ด้วยสตริงเวอร์ชัน SDK

รวบรวมสัญญาณ

ในทุกๆ คำขอโฆษณา Google Mobile Ads SDK จะรวบรวมสัญญาณจากอะแดปเตอร์ทั้งหมดพร้อมกันในเธรดเบื้องหลัง

ตัวอย่างต่อไปนี้รวบรวมและแสดงสัญญาณไปยัง Google Mobile Ads SDK โดยเรียกใช้แฮนเดิลอร์การดำเนินการให้เสร็จสมบูรณ์ GADRTBSignalCompletionHandler

Objective-C

- (void)collectSignalsForRequestParameters:(GADRTBRequestParameters *)params
                         completionHandler:(GADRTBSignalCompletionHandler)handler {
  // Add your signal collection logic here.
  NSString *signals = kSampleSignalPlaceholder;

  // Return the signals as a string to the Google Mobile Ads SDK.
  handler(signals, nil);
}

แทนที่ kSampleSignalPlaceholder ด้วยสตริงสัญญาณที่ปลอดภัย

การรวบรวมสัญญาณต้องเสร็จสมบูรณ์ภายใน 1 วินาที หากการรวบรวมสัญญาณใช้เวลานานกว่า 1 วินาที ให้พิจารณาแคชสัญญาณในอะแดปเตอร์สัญญาณที่ปลอดภัยหรือ SDK เมื่อเริ่มต้นใช้งานอะแดปเตอร์

หากอะแดปเตอร์สัญญาณที่ปลอดภัยรวบรวมสัญญาณไม่สำเร็จ ให้เรียกใช้แฮนเดิลอร์การดำเนินการให้เสร็จสมบูรณ์ด้วยสัญญาณ nil และออบเจ็กต์ NSError

ปกปิดสัญญาณ

เมื่อคุณแชร์สัญญาณที่ปลอดภัยกับผู้เสนอราคาและพาร์ทเนอร์การดูแลจัดการ คุณต้องปกปิด สัญญาณ

แสดงค่า nil สำหรับข้อมูลเพิ่มเติมของเครือข่ายโฆษณา

อะแดปเตอร์สัญญาณที่ปลอดภัยไม่จำเป็นต้องใช้พารามิเตอร์ข้อมูลเพิ่มเติมของเครือข่าย

ตัวอย่างเมธอด +networkExtrasClass ต่อไปนี้แสดงค่า nil

Objective-C

+ (nullable Class<GADAdNetworkExtras>)networkExtrasClass {
  // Network extras are not applicable because signal providers do not request ads.
  return nil;
}