একটি নিরাপদ সিগন্যাল অ্যাডাপ্টার তৈরি করুন

আপনার যদি এমন কোনো সিগন্যাল প্রোভাইডার SDK থাকে যা রিয়েল-টাইম বিডিং (RTB) সিগন্যাল তৈরি করে, তাহলে আপনি একটি সুরক্ষিত সিগন্যাল অ্যাডাপ্টার তৈরি করতে পারেন, যাতে Google Mobile Ads SDK আপনার SDK থেকে সিগন্যাল সংগ্রহ করতে পারে।

Google Mobile Ads SDK আপনার সিগন্যালগুলো নির্বাচিত অংশগ্রহণকারী অনুমোদিত ক্রেতা এবং উন্মুক্ত নিলামের ক্রেতাদের কাছে পাঠিয়ে দেয়।

নিম্নলিখিত ডায়াগ্রামটি নিরাপদ সংকেত সংগ্রহের জন্য অনুরোধ-প্রতিক্রিয়া জীবনচক্রটি চিত্রিত করে:

একটি সুরক্ষিত সিগন্যাল অ্যাডাপ্টার, অ্যাডাপ্টার প্রারম্ভিককরণ এবং সিগন্যাল সংগ্রহের জন্য দায়ী থাকে।

একটি সুরক্ষিত সংকেত অ্যাডাপ্টার বাস্তবায়ন করুন

আপনার SDK থেকে সিগন্যাল সংগ্রহ করার জন্য Google Mobile Ads SDK এর জন্য একটি সুরক্ষিত সিগন্যাল অ্যাডাপ্টার প্রয়োগ করুন।

এই নির্দেশিকায় GADRTBAdapter প্রোটোকল প্রয়োগের মাধ্যমে কীভাবে একটি সুরক্ষিত সিগন্যাল অ্যাডাপ্টার তৈরি করা যায়, তা আলোচনা করা হয়েছে।

নিম্নলিখিত উদাহরণটি GADRTBAdapter প্রোটোকলটি বাস্তবায়ন করে:

উদ্দেশ্য-সি

@interface SampleAdapterSnippets : NSObject <GADRTBAdapter>
@end

অ্যাডাপ্টারটি চালু করুন

যখন Google Mobile Ads SDK Google Mobile Ads SDK আপনার সিকিওর সিগন্যাল অ্যাডাপ্টার ইনস্ট্যানশিয়েট করে, তখন এটি setUpWithConfiguration:completionHandler: মেথডটিকে কল করে। আপনার SDK ইনিশিয়ালাইজ করতে এই মেথডটি ব্যবহার করুন।

যখন আপনার SDK সম্পূর্ণরূপে ইনিশিয়ালাইজ হয়ে যাবে এবং Google Mobile Ads SDK সিগন্যাল সংগ্রহের জন্য প্রস্তুত হবে, তখন GADMediationAdapterSetUpCompletionBlock কমপ্লিশন ব্লকটি কল করুন।

যদি আপনার সিকিওর সিগন্যাল অ্যাডাপ্টার কল ব্যাক না করে, তাহলে Google Mobile Ads SDK আপনার সিকিওর সিগন্যাল অ্যাডাপ্টার থেকে সিগন্যাল সংগ্রহ করে না।

নিম্নলিখিত উদাহরণটি আপনার SDK সফলভাবে ইনিশিয়ালাইজ হয়েছে তা Google Mobile Ads SDK জানানোর জন্য কমপ্লিশন হ্যান্ডলারকে কল করে:

উদ্দেশ্য-সি

+ (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);
}

অ্যাডাপ্টার এবং এসডিকে সংস্করণ রিপোর্ট করুন

আপনার সুরক্ষিত সিগন্যাল অ্যাডাপ্টারকে অবশ্যই আপনার অ্যাডাপ্টার ভার্সন এবং এসডিকে ভার্সন উভয়ই জানাতে হবে। Google Mobile Ads SDK রিপোর্টিং এবং সমস্যা সমাধানের জন্য এই ভার্সনগুলো ব্যবহার করে।

যদি আপনার SDK এই অ্যাডাপ্টারটিকে একই বাইনারিতে প্রয়োগ করে, তাহলে আপনি অ্যাডাপ্টার এবং SDK উভয় সংস্করণের জন্য একই সংস্করণ ফেরত দিতে পারেন।

নিম্নলিখিত উদাহরণটি আপনার সুরক্ষিত সিগন্যাল অ্যাডাপ্টারের সংস্করণটি ফেরত দেয়:

উদ্দেশ্য-সি

+ (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-এর সেই সংস্করণটি ফেরত দেয়, যার সাথে আপনার সুরক্ষিত সিগন্যাল অ্যাডাপ্টারটি যোগাযোগ করে:

উদ্দেশ্য-সি

+ (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 একটি ব্যাকগ্রাউন্ড থ্রেডে সমস্ত অ্যাডাপ্টার থেকে একযোগে সিগন্যাল সংগ্রহ করে।

নিম্নলিখিত উদাহরণটি GADRTBSignalCompletionHandler কমপ্লিশন হ্যান্ডলারকে কল করার মাধ্যমে সিগন্যাল সংগ্রহ করে এবং Google Mobile Ads SDK তে ফেরত পাঠায়:

উদ্দেশ্য-সি

- (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 আপনার সুরক্ষিত সিগন্যাল স্ট্রিং দিয়ে প্রতিস্থাপন করুন।

সিগন্যাল সংগ্রহ অবশ্যই এক সেকেন্ডের মধ্যে সম্পন্ন করতে হবে। যদি সিগন্যাল সংগ্রহে এক সেকেন্ডের বেশি সময় লাগে, তাহলে অ্যাডাপ্টারটি ইনিশিয়ালাইজ করার সময় আপনার সিকিওর সিগন্যাল অ্যাডাপ্টার বা SDK-তে সিগন্যালগুলো ক্যাশ করার কথা বিবেচনা করুন।

যদি আপনার সুরক্ষিত সিগন্যাল অ্যাডাপ্টার সিগন্যাল সংগ্রহ করতে ব্যর্থ হয়, তাহলে nil সিগন্যাল এবং একটি NSError অবজেক্ট সহ কমপ্লিশন হ্যান্ডলারকে কল করুন।

সংকেত অস্পষ্ট করা

যখন আপনি বিডার এবং কিউরেশন পার্টনারদের সাথে সুরক্ষিত সিগন্যাল শেয়ার করেন , তখন আপনাকে অবশ্যই সিগন্যালগুলো অস্পষ্ট করতে হবে।

বিজ্ঞাপন নেটওয়ার্কের অতিরিক্ত ফিচারগুলোর জন্য একটি nil ভ্যালু রিটার্ন করুন।

সুরক্ষিত সিগন্যাল অ্যাডাপ্টারগুলোর জন্য অতিরিক্ত নেটওয়ার্ক প্যারামিটারের প্রয়োজন হয় না।

নিম্নলিখিত উদাহরণে +networkExtrasClass মেথডটি একটি nil ভ্যালু রিটার্ন করে:

উদ্দেশ্য-সি

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