Parametri di richiesta specifici della rete

Alcuni adattatori di rete supportano parametri aggiuntivi che possono essere trasmessi all'adattatore quando viene creata la richiesta di annuncio. Sono detti extra di rete.

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

Registra il tuo 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 con 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 scoprire quali sono gli extra supportati dalle diverse reti e come crearli nel riferimento Android per la rete specifica.

Registra il tuo 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 con 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 reti e come crearli nel riferimento iOS per la rete specifica.

Esempio completo su GitHub

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

Mediazione