Rewarded Ad

1. 基本要求

  • ADX Flutter SDK添加到项目中。

  • 使用为奖励广告颁发的 ADX 广告单元 ID。

  • 在请求广告之前 SDK 初始化请先进行。

    • SDK 初始化请在应用运行时只调用一次,并且 广告请求必须在初始化完成后进行。

2. 实现

  1. 如果 Android 和 iOS 均有发布,请分别输入为各平台签发的广告单元 ID。

  2. 注册所需的回调。

  3. AdxSdk.loadRewardedAd() 以加载广告。

  4. 当广告对象释放时 AdxSdk.destroyRewardedAd()

String adUnitId = Platform.isAndroid ? "<ANDROID_ADX_REWARDED_AD_UNIT_ID>" : "<IOS_ADX_REWARDED_AD_UNIT_ID>";

AdxSdk.setRewardedAdListener(RewardedAdListener(
  onAdLoaded: (){
  },
  onAdError: (int errorCode){
  },
  onAdImpression: (){
  },
  onAdClicked: (){
  },
  onAdRewarded: (){
  },
  onAdClosed: (){
  },
  onAdFailedToShow: (){
  })
);

AdxSdk.loadRewardedAd(adUnitId);
  • 广告加载完成后 showRewardedAd() 调用以展示广告。

bool isLoaded = (await AdxSdk.isRewardedAdLoaded(adUnitId))!;
if (isLoaded) {
    AdxSdk.showRewardedAd(adUnitId);
}

如果需要 SSV(服务器端验证)设置,请使用 'showRewardedAd' 方法的 以命名参数定义的ssvUserIdssvCustomData

static void showRewardedAd(String adUnitId, {
    String? ssvUserId, 
    String? ssvCustomData
})
  • SSV 设置是 可选,仅在需要时设置并使用。

  • SSV 设置是为了在发生奖励事件时向开发者注册的 Callback URL进行 Server to Server 方式的调用而进行的设置。

  • 关于 SSV 设置的调用条件如下。

    • 必须通过仪表板 Rewarded Video 类型中 Callback URL 已注册。

    • 在视频观看完成后必须发生奖励事件。

    • 如有需要,请在广告请求之前通过 SDK 设置 User IDCustom Data 信息。

  • 客户端设置的User IDCustom Data 信息如果存在, Callback URL将包含在调用中发送。

    • (示例) https://callback_url?param=value&userid=<valule>&customdata=<value>

    • 该设置必须在广告请求之前调用,才能正确将数据 Callback URL包含在内。

  • Flutter ADX 插件 v1.0.6 及以上支持。

  • 当广告对象释放时 destroyRewardedAd()

@override
void dispose() {
  super.dispose();
  AdxSdk.destroyRewardedAd(adUnitId);
}

3. Callback

可以接收特定事件。请根据需要实现。

class RewardedAdListener {
  void Function() onAdLoaded;
  void Function(int errorCode) onAdError;
  void Function() onAdImpression;
  void Function() onAdClicked;
  void Function() onAdRewarded;
  void Function() onAdClosed;
  void Function() onAdFailedToShow;

  RewardedAdListener({
    required this.onAdLoaded,
    required this.onAdError,
    required this.onAdImpression,
    required this.onAdClicked,
    required this.onAdRewarded,
    required this.onAdClosed,
    required this.onAdFailedToShow
  });
}

最后更新于

这有帮助吗?