कुछ नेटवर्क अडैप्टर, अतिरिक्त पैरामीटर के साथ काम करते हैं. विज्ञापन अनुरोध बनाते समय, इन पैरामीटर को अडैप्टर को पास किया जा सकता है. इन्हें नेटवर्क एक्स्ट्रा कहा जाता है.
Google Mobile Ads प्लगिन, Android और iOS पर एपीआई उपलब्ध कराता है. इनकी मदद से, नेटवर्क से जुड़ी अतिरिक्त जानकारी को मीडिएशन अडैप्टर को पास किया जा सकता है. इसके लिए, आपको Android पर MediationNetworkExtrasProvider
और iOS पर FLTMediationNetworkExtrasProvider
लागू करना होगा. इसके बाद, प्लगिन के साथ, एक्स्ट्रा सेवा देने वाली कंपनी के लागू किए गए कोड को रजिस्टर करना होगा. इसके बाद, Android या iOS पर विज्ञापन अनुरोध बनाते समय, प्लगिन इसका इस्तेमाल नेटवर्क एक्स्ट्रा को पास करने के लिए करेगा.
Android पर MediationNetworkExtrasProvider को रजिस्टर करना
MediationNetworkExtrasProvider
को लागू करने का तरीका बताएं:
class MyMediationNetworkExtrasProvider implements MediationNetworkExtrasProvider {
@Override
public Map<Class<? extends MediationExtrasReceiver>, Bundle> getMediationExtras(
String adUnitId, @Nullable String identifier) {
// This example passes extras to the AppLovin adapter.
// This method is called with the ad unit of the associated ad request, and
// an optional string parameter which comes from the dart ad request object.
Bundle appLovinBundle = new AppLovinExtras.Builder().setMuteAudio(true).build();
Map<Class<? extends MediationExtrasReceiver>, Bundle> extras = new HashMap<>();
extras.put(ApplovinAdapter.class, appLovinBundle);
// Note: You can pass extras to multiple adapters by adding more entries.
return extras;
}
}
इसके बाद, इसे GoogleMobileAdsPlugin
में रजिस्टर करें:
// Register a MediationNetworkExtrasProvider with the plugin.
public class MainActivity extends FlutterActivity {
@Override
public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {
super.configureFlutterEngine(flutterEngine);
// Register your MediationNetworkExtrasProvider to provide network extras to ad requests.
GoogleMobileAdsPlugin.registerMediationNetworkExtrasProvider(
flutterEngine, new MyMediationNetworkExtrasProvider());
}
}
Android के रेफ़रंस में, यह देखा जा सकता है कि अलग-अलग नेटवर्क के साथ कौनसे एक्स्ट्रा काम करते हैं और उन्हें कैसे बनाया जाता है. इसके लिए, आपको नेटवर्क के बारे में जानकारी देखनी होगी.
iOS पर FLTMediationNetworkExtrasProvider को रजिस्टर करना
FLTMediationNetworkExtrasProvider
को लागू करने का तरीका बताएं:
@implementation MyFLTMediationNetworkExtrasProvider
- (NSArray<id<GADAdNetworkExtras>> *_Nullable)getMediationExtras:(NSString *_Nonnull)adUnitId
mediationExtrasIdentifier:
(NSString *_Nullable)mediationExtrasIdentifier {
// This example passes extras to the AppLovin adapter.
// This method is called with the ad unit of the associated ad request, and
// an optional string parameter which comes from the dart ad request object.
GADMAdapterAppLovinExtras *appLovinExtras = [[GADMAdapterAppLovinExtras alloc] init];
appLovinExtras.muteAudio = NO;
// Note: You can pass extras to multiple adapters by adding more entries.
return @[ appLovinExtras ];
}
@end
इसके बाद, इसे FLTGoogleMobileAdsPlugin
पर रजिस्टर करें:
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[GeneratedPluginRegistrant registerWithRegistry:self];
// Register your network extras provider if you want to provide
// network extras to specific ad requests.
MyFLTMediationNetworkExtrasProvider *networkExtrasProvider =
[[MyFLTMediationNetworkExtrasProvider alloc] init];
[FLTGoogleMobileAdsPlugin registerMediationNetworkExtrasProvider:networkExtrasProvider
registry:self];
return [super application:application didFinishLaunchingWithOptions:launchOptions];
}
@end
यह देखा जा सकता है कि अलग-अलग नेटवर्क के साथ कौनसे एक्स्ट्रा काम करते हैं. साथ ही, किसी खास नेटवर्क के लिए iOS रेफ़रंस में, उन्हें बनाने का तरीका भी देखा जा सकता है.
GitHub पर पूरा उदाहरण
हमारे सैंपल में, इंटिग्रेशन में AppLovin पर कस्टम पैरामीटर सेट करने का तरीका बताया गया है.