菜单

客户端竞价说明

1. 获取价格

请遵循集成每种广告类型的说明。然后您可以按照以下方法获取广告填充时的价格:

广告加载成功后示例代码如下:

java 复制代码
// 原生广告
SDMNative atNative = new SDMNative(context, "Your Placement Id", new SDMNativeListener() {
    @Override
    public void onAdLoaded(SDMNativeAd sdmNativeAd) {
        // RMB 人民币元,RMB_CENT 人民币分,USD 美元
        if (sdmNativeAd != null) {
            double ecpm = sdmNativeAd.getSDMAd().getEcpmInfo().getEcpm(SDMAdConst.CURRENCY.RMB);
        }
    }
});

// Rewarded Video(激励视频广告)
SDMRewardVideoAd rewardVideoAd = new SDKRewardVideoAd(context, "Your Placement Id");
rewardVideoAd.setListener(new SDKRewardVideoListener() {
    @Override
    public void onAdLoaded() {
        // RMB 人民币元,RMB_CENT 人民币分,USD 美元
        if (rewardVideoAd != null) {
            double ecpm = rewardVideoAd.getSDMAd().getEcpmInfo().getEcpm(SDMAdConst.CURRENCY.RMB);
        }
    }
});

// Interstitial(插屏广告)
SDMInterstitialAd interstitial = new SDMInterstitialAd(context, "Your Placement Id");
interstitial.setListener(new SDMInterstitialListener() {
    @Override
    public void onAdLoaded() {
        // RMB 人民币元,RMB_CENT 人民币分,USD 美元
        if (interstitial != null) {
            double ecpm = interstitial.getSDMAd().getEcpmInfo().getEcpm(SDMAdConst.CURRENCY.RMB);
        }
    }
});

// App Open Ad(开屏广告)
SDMSplashAd splashAd = new SDMSplashAd(context, "Your Placement Id", new SDMSplashListener() {
    @Override
    public void onAdLoaded(boolean isTimeout) {
        // RMB 人民币元,RMB_CENT 人民币分,USD 美元
        if (splashAd != null) {
            double ecpm = splashAd.getSDMAd().getEcpmInfo().getEcpm(SDMAdConst.CURRENCY.RMB);
        }
    }
});

// Banner Ad(横幅广告)
SDMBannerView bannerView = new SDMBannerView(context);
bannerView.setPlacementId("Your Placement Id");
bannerView.setListener(new SDMBannerListener() {
    @Override
    public void onAdLoaded() {
        // RMB 人民币元,RMB_CENT 人民币分,USD 美元
        if (bannerView != null) {
            double ecpm = bannerView.getSDMAd().getEcpmInfo().getEcpm(SDMAdConst.CURRENCY.RMB);
        }
    }
});

2. 客户端竞价

2.1 酷盈 Adx 竞胜

如果 酷盈 比价胜出,您应该在展示广告之前将第二个出价者的最高价格传递给 酷盈。这一步将帮助我们优化收益。

注意:SECOND_PRICE传入的价格货币单位支持人民币元,人民币分,美元

java 复制代码
//以激励视频为例,其他广告样式传入对应广告样式对象即可
public void sendAdxWin(SDMRewardVideoAd rewardVideoAd, double secondPrice) {
//RMB 人民币元,RMB_CENT 人民币分,USD 美元
    if (rewardVideoAd != null) {
        rewardVideoAd.notifyWin(new SDMWinInfo(secondPrice,SDMAdConst.CURRENCY.RMB));
    }
}

2.2 酷盈 Adx 竞败

如果 酷盈 竞价失败,您应该在展示广告之前将最高价出价者的价格传递给 酷盈。这一步将帮助我们优化收益。

注意:winEcpm传入的价格货币单位支持人民币元,人民币分,美元。(自 6.5.77 以前 SDMLossInfo 无需传入 SEAT_ID)。

java 复制代码
// 6.5.77 及以前
mRewardVideoAd.notifyLoss(new SDMLossInfo(SDMLossInfo.LOSS_REASON.LOSS_TO_AUCTION_FLOOR, winnerEcpm, SDMAdConst.CURRENCY.RMB));


// 6.5.80起 
public void sendAdxLose(SDMRewardVideoAd rewardVideoAd, double winnerEcpm) {
    // RMB 人民币元,RMB_CENT 人民币分,USD 美元
    if (rewardVideoAd != null) {
        rewardVideoAd.notifyLoss(new SDMLossInfo(
                SDMLossInfo.LOSS_REASON.LOSS_TO_HIGHER_BID,
                winnerEcpm,
                SDMLossInfo.SEAT_ID.THIRD_PARTY_ADN,   // 输给自售则改 SELF_SALE
                SDMAdConst.CURRENCY.RMB));
        // 如果该缓存在竞败后没有展示机会可以主动释放掉
        // 例如激励,当不需要再使用该缓存时可以主动调用API释放掉该缓存
        // if (rewardVideoAd != null) {
        //     rewardVideoAd.destroy();
        // }
    }
}

6.5.80 构造变化:

<=6.5.77 6.5.80
new SDMLossInfo(reason, winPrice, currency) new SDMLossInfo(reason, winPrice, seatId, currency)

SEAT_ID 枚举:THIRD_PARTY_ADN(第三方 ADN)/ SELF_SALE(自售广告主)

竞败原因:

代码 描述 版本
SDMLossInfo.LOSS_REASON.LOSS_TO_HIGHER_BID 酷盈 adx 出价低于价格较高的竞价广告源或者 Floor 新旧皆可用
SDMLossInfo.LOSS_REASON.LOSS_TO_NORMAL 酷盈 的价格低于价格较高的固定价格广告源(非竞价广告) 仅 <6.5.80
SDMLossInfo.LOSS_REASON.LOSS_TO_AUCTION_FLOOR 酷盈 的价格低于底价 仅 <6.5.80
SDMLossInfo.LOSS_REASON.LOSS_TO_EXPIRE 酷盈 的价格过期 仅 <6.5.80
SDMLossInfo.LOSS_REASON.LOSS_TO_MEDIA_TIMEOUT 媒体侧超时 仅 6.5.80+
SDMLossInfo.LOSS_REASON.LOSS_TO_MEDIA_BLOCK 媒体侧屏蔽(频控、物料体验、竞品等) 仅 6.5.80+
SDMLossInfo.LOSS_REASON.LOSS_TO_OTHER 其他原因 仅 6.5.80+

2.3 调用时机与次数

  • 竞胜竞败需要在在 onAdLoaded(或已确认缓存命中)之后调用。
  • 同一条广告 notifyWin / notifyLoss 只调一次;重复调用会被 SDK 忽略。
  • notifyLoss 后 isAdReady() 为 false,不要再 show。
上一个
原生广告
下一个
广告信息说明
最近修改: 2026-08-31Powered by