Parametry żądania specyficzne dla sieci

Niektóre adaptery sieci obsługują dodatkowe parametry, które można przekazać do adaptera podczas tworzenia żądania reklamy. Są to tak zwane dodatki sieciowe.

Wtyczka Google Mobile Ads udostępnia interfejsy API na Androida i iOS, które pozwalają przekazywać dodatki sieci do adapterów zapośredniczenia. Aby to zrobić, musisz zaimplementować MediationNetworkExtrasProvider na Androidzie lub FLTMediationNetworkExtrasProvider na iOS, a potem zarejestrować za pomocą wtyczki implementację dostawcy dodatków. Potem będzie używać go, aby przekazywać dodatki sieciowe podczas tworzenia żądania reklamy na Androidzie lub iOS.

Rejestrowanie usługi MediationNetworkExtrasProvider na Androidzie

Utwórz implementację obiektu 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;
  }
}

Następnie zarejestruj ją w 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());
  }
}

Informacje o tym, które dodatki są obsługiwane przez różne sieci, oraz jak je utworzyć, znajdziesz w dokumentacji dotyczącej Androida poświęconej danej sieci.

Zarejestruj FLTMediationNetworkExtrasProvider na urządzeniu z iOS

Utwórz implementację obiektu 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

I zarejestruj ją na stronie 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

Informacje o tym, które dodatki są obsługiwane przez różne sieci, oraz jak je utworzyć, znajdziesz w dokumentacji iOS dotyczącej danej sieci.

Uzupełnij przykład na GitHubie

Ten przykład pokazuje, jak ustawić parametry niestandardowe w AppLovin w ramach integracji.

Zapośredniczenie