פרמטרים של בקשות ספציפיים לרשת

חלק ממתאמי הרשת תומכים בפרמטרים נוספים שאפשר להעביר למתאם כשהבקשה להצגת מודעה נוצרת. התוספות האלה נקראות תוספות לערוץ.

התוסף 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 שמתייחס לרשת ספציפית.

דוגמה מלאה ב-GitHub

בדוגמה שלנו מוסבר איך להגדיר פרמטרים מותאמים אישית ב-AppLovin בשילוב.

תיווך