Skip to content

Banner广告

1. 主要API

1.1 Banner广告请求类

ApexAdxAdRequest

参数说明
pid广告位
userId媒体用户体系ID,可选,默认 null
options扩展参数,默认 null

1.2 横幅广告对象类

ApexAdxBannerAd

方法说明
ApexAdxBannerAd({required ApexAdxAdRequest request, required double width, required double height, required ApexAdxBannerListener<ApexAdxBannerAd> listener, bool animated = true})初始化banner广告对象,request 为广告请求对象必传,listener 横幅广告回调接口必传
fetchAd()发起广告加载
isAvailable()判断当前 BannerAd 是否存在可展示的广告
release()销毁并关闭广告
updateAdSize(Size size)更新广告实际大小
Size? getAdSize()获取广告实际宽高

1.3 Banner广告Widget对象类

BannerAdWidget

方法说明
BannerAdWidget({required ApexAdxBannerAd apexAdxBannerAd, required double width, required double height})构造横幅广告Widget对象,apexAdxBannerAd 横幅广告对象类必传,width widget宽,height widget高度
updateAdSize(Size size)更新广告Widget大小

1.4 横幅广告回调说明

ApexAdxBannerListener 横幅广告回调说明

回调方法说明
onAdFailedToLoad(ApexAdxError error)广告加载失败
onAdLoaded(ApexAdxBannerAd ad)广告加载成功
onAdDisplayed()广告开始展示
onAdTapped()广告被用户点击
onAdDismissed()广告关闭
onAdRefreshed(ApexAdxBannerAd ad)自动刷新广告成功
onRefreshFailed(ApexAdxBannerAd ad, ApexAdxError error)自动刷新广告失败

2. 示例代码

2.1 创建横幅广告对象

dart
ApexAdxAdRequest request = ApexAdxAdRequest(pid: "pid");
ApexAdxBannerAd bannerAd = ApexAdxBannerAd(request: request, width: 300, height: 100, listener: IApexAdxBannerListener());

2.2 设置监听回调

dart
class IApexAdxBannerListener extends ApexAdxBannerListener<ApexAdxBannerAd> {

  @override
  void onRefreshFailed(ApexAdxBannerAd ad, ApexAdxError error) {
    print('flu-banner --- onRefreshFailed: ${error.message}');
  }

  @override
  void onAdRefreshed(ApexAdxBannerAd ad) {
    print('#############banner onAdRefreshed');
  }

  @override
  void onAdDismissed() {
    print('flu-banner --- onAdDismissed');
  }

  @override
  void onAdDisplayed() {
    print('flu-banner --- onAdDisplayed');
  }

  @override
  void onAdFailedToLoad(ApexAdxError error) {
    print('flu-banner --- onAdFailedToLoad');
  }

  @override
  void onAdTapped() {
    print('flu-banner --- onAdTapped');
  }

  @override
  void onAdLoaded(ApexAdxBannerAd ad) {
    print('flu-banner --- onAdLoaded');
  }
}

2.3 Banner广告加载

dart
bannerAd.fetchAd();

2.4 横幅广告展示

dart
bool isReady = await bannerAd.isAvailable();
if (isReady) {
  BannerAdWidget bannerAdWidget = BannerAdWidget(
    apexAdxBannerAd: bannerAd,
    height: 50,
    width: 320,
  );
}

ApexAdx SDK Documentation