חלק מהמתאמים של רשתות תומכים בפרמטרים נוספים שאפשר להעביר למתאם כשיוצרים את הבקשה להצגת מודעה. התוספות האלה נקראות פרטים נוספים על רשת המודעות.
הפלאגין של Google Mobile Ads מספק ממשקי API ב-Android וב-iOS שמאפשרים להעביר פרטים נוספים על רשת המודעות למתאמי תהליך בחירת הרשת. כדי לעשות זאת, צריך להטמיע את MediationNetworkExtrasProvider ב-Android ואת FLTMediationNetworkExtrasProvider ב-iOS, ואז לרשום את ההטמעה של ספק התוספות בפלאגין. לאחר מכן, התוסף ישתמש בו כדי להעביר פרטים נוספים על רשת המודעות כשהוא יוצר את הבקשה להצגת מודעה ב-Android או ב-iOS.
רישום של MediationNetworkExtrasProvider ב-Android
יוצרים הטמעה של 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 שמתייחס לרשת ספציפית.
רישום של FLTMediationNetworkExtrasProvider ב-iOS
יוצרים הטמעה של 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 שמתייחס לרשת ספציפית.