Thông số yêu cầu theo mạng cụ thể

Một số bộ chuyển đổi mạng hỗ trợ các thông số bổ sung có thể được truyền đến bộ chuyển đổi khi tạo yêu cầu quảng cáo. Đây được gọi là thông tin bổ sung về mạng.

Trình bổ trợ Google Mobile Ads cung cấp các API trên Android và iOS cho phép bạn truyền các tính năng bổ sung của mạng đến bộ chuyển đổi dàn xếp. Để làm như vậy, bạn cần triển khai MediationNetworkExtrasProvider trên Android và FLTMediationNetworkExtrasProvider trên iOS, sau đó đăng ký triển khai trình cung cấp bổ sung bằng trình bổ trợ. Sau đó, trình bổ trợ sẽ sử dụng thông tin này để truyền qua các tính năng bổ sung của mạng khi tạo yêu cầu quảng cáo trên Android hoặc iOS.

Đăng ký MediationNetworkExtrasProvider trên Android

Tạo phương thức triển khai 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;
  }
}

Sau đó, đăng ký với 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());
  }
}

Bạn có thể xem những tính năng bổ sung nào được các mạng hỗ trợ và cách tạo các tính năng đó trong tài liệu tham khảo Android cho mạng cụ thể.

Đăng ký FLTMediationNetworkExtrasProvider trên iOS

Tạo phương thức triển khai 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

Sau đó đăng ký với 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

Bạn có thể xem các mạng hỗ trợ tính năng bổ sung nào và cách tạo các tính năng đó trong tài liệu tham khảo iOS cho một mạng cụ thể.