تتيح بعض محوّلات الشبكة مَعلمات إضافية يمكن تمريرها إلى المحوّل عند إنشاء طلب عرض الإعلان. ويُشار إليها باسم تفاصيل إضافية خاصة بالشبكة.
يوفّر المكوّن الإضافي "إعلانات Google على الأجهزة الجوّالة" واجهات برمجة تطبيقات على 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 في عملية دمج.