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

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

הפלאגין של 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 בשילוב.

תהליך הגישור