যদি আপনার কাছে এমন একটি সিগন্যাল প্রোভাইডার 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 SDK setUpWithConfiguration:completionHandler: পদ্ধতিটিকে কল করে। আপনার SDK শুরু করতে এই পদ্ধতিটি ব্যবহার করুন।
যখন আপনার SDK সম্পূর্ণরূপে চালু হবে এবং Google Mobile Ads SDK সিগন্যাল সংগ্রহ করার জন্য প্রস্তুত হবে, তখন GADMediationAdapterSetUpCompletionBlock সমাপ্তি ব্লকে কল করুন।
যদি আপনার সিকিউর সিগন্যাল অ্যাডাপ্টার কল ব্যাক না করে, তাহলে Google Mobile Ads SDK আপনার সিকিউর সিগন্যাল অ্যাডাপ্টার থেকে সিগন্যাল সংগ্রহ করে না।
নিচের উদাহরণটি সমাপ্তি হ্যান্ডলারকে Google Mobile Ads SDK জানাতে বলে যে আপনার 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);
}
অ্যাডাপ্টার এবং SDK ভার্সন রিপোর্ট করুন
আপনার সুরক্ষিত সিগন্যাল অ্যাডাপ্টারকে অবশ্যই আপনার অ্যাডাপ্টার সংস্করণ এবং আপনার SDK সংস্করণ উভয়ই রিপোর্ট করতে হবে। 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 এর সেই সংস্করণটি ফেরত দেয় যার সাথে আপনার সুরক্ষিত সিগন্যাল অ্যাডাপ্টার ইন্টারঅ্যাক্ট করে:
অবজেক্টিভ-সি
kSDKVersionString আপনার SDK ভার্সন স্ট্রিং দিয়ে প্রতিস্থাপন করুন।
সংকেত সংগ্রহ করুন
প্রতিটি বিজ্ঞাপনের অনুরোধে, Google Mobile Ads SDK একটি ব্যাকগ্রাউন্ড থ্রেডে সমস্ত অ্যাডাপ্টার থেকে একই সাথে সংকেত সংগ্রহ করে।
নিম্নলিখিত উদাহরণটি GADRTBSignalCompletionHandler সমাপ্তি হ্যান্ডলারকে কল করে Google Mobile Ads SDK তে সিগন্যাল সংগ্রহ করে এবং ফেরত পাঠায়:
অবজেক্টিভ-সি
আপনার নিরাপদ সিগন্যাল স্ট্রিং দিয়ে 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;
}