Parametri di richiesta specifici per rete

Alcuni adattatori di rete supportano parametri aggiuntivi che possono essere passati all'adattatore quando viene creata la richiesta di annuncio. Questi contenuti sono chiamati contenuti aggiuntivi delle emittenti.

Il plug-in Google Mobile Ads fornisce API su Android e iOS che ti consentono di passare gli extra di rete agli adattatori di mediazione. Per farlo, devi implementare MediationNetworkExtrasProvider su Android e FLTMediationNetworkExtrasProvider su iOS, quindi registrare l'implementazione del provider di componenti aggiuntivi con il plug-in. Successivamente, il plug-in lo utilizzerà per trasmettere gli extra di rete quando crea la richiesta di annuncio su Android o iOS.

Registrare MediationNetworkExtrasProvider su Android

Crea un'implementazione di 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;
  }
}

Quindi, registralo presso il 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());
  }
}

Puoi vedere quali extra sono supportati dalle diverse emittenti e come costruirli nel riferimento Android per l'emittente specifica.

Registra FLTMediationNetworkExtrasProvider su iOS

Crea un'implementazione di 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

e registralo su 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

Puoi vedere quali extra sono supportati dalle diverse emittenti e come costruirli nel riferimento iOS per l'emittente specifica.

Esempio completo su GitHub

Il nostro esempio mostra come impostare parametri personalizzati su AppLovin in un'integrazione.

Mediazione