
本SDK为接入方提供激励视频广告,该广告的效果为观看完毕视频广告,发放奖励给用户。使用场景包括但不限于:
注意:
onVideoComplete()视频播放完整回调和onAdVideoBarClick()点击回调不是所有ADN都会触发,如若在此回调内有相关逻辑处理或者打点统计需注意。使用初始化后的TTAdManager对象,创建广告请求对象TTAdNative。
创建广告请求AdSlot,用于请求广告前,传递部分广告配置参数。
方法名 | 说明 |
setCodeId(String codeId) | 聚合广告位ID,聚合场景,需传以1开头的广告位id,SDK内部会自行请求开发者在瀑布流下配置的代码位ID |
setOrientation(@TTAdConstant.ORIENTATION_STATE int orientation) | 设置横竖屏方向,建议和创建的代码位的横竖屏保持一致,否则可能会展示异常 |
setUserID(String userID) | 用户唯一标识,使用服务端奖励验证回调时,当达到奖励下发条件后穿山甲会通过开发者提供的回调链接透传开发者请求广告时传入的userId,开发者服务端判断是否下发奖励 |
setMediationAdSlot(MediationAdSlot mediationAdSlot) | 设置聚合广告请求参数 |
方法名 | 说明 |
setMuted(boolean var1) | 设置静音 |
setVolume(float var1) | 设置音量范围0~1;静音设置为0 |
setUseSurfaceView(boolean var1) | 是否使用SurfaceView |
setExtraObject(String var1, Object var2) | 设置额外参数 使用gromore服务端奖励验证(广告位维度)透传自定义参数时应使用 |
setBidNotify(boolean var1) | bidding类型广告,竞价成功或者失败后是否通知对应的ADN |
setScenarioId(String var1) | 广告场景ID,用于标记该广告所在的业务场景(如某个页面或功能位),非必传 |
setRewardName(String var1) | 设置激励名称,Gromore会在请求开发者服务端奖励回调URL拼接相关参数 |
setRewardAmount(int var1) | 设置激励金额,Gromore会在请求开发者服务端奖励回调URL拼接相关参数 |
调用TTAdNative.loadRewardVideoAd(adSlot, adLoadListener) 加载广告。
方法名 | 说明 |
void onRewardVideoAdLoad(TTRewardVideoAd ad) | 加载完成的回调 |
void onRewardVideoCached() | 广告视频本地加载完成的回调,即将废弃 |
void onRewardVideoCached(TTRewardVideoAd ad) | 广告视频本地加载完成的回调 |
void onError(int code, String message) | 加载失败回调 |
为了确保播放流程建议在onRewardVideoCached(TTRewardVideoAd ttRewardVideoAd)回调后调用广告展示并判断isReady状态。
方法名 | 说明 |
void setRewardAdInteractionListener(RewardAdInteractionListener listener) | 设置激励事件监听 |
void showRewardVideoAd(Activity activity) | 展示激励广告 |
Map<String, Object> getMediaExtraInfo() | 返回广告额外信息 |
void showRewardVideoAd(Activity activity, TTAdConstant.RitScenes ritScenes, String scenes) | 展示广告,ritScenes, scenes参数不生效 |
MediationRewardManager getMediationManager() | 获取聚合广告信息 |
long getExpirationTimestamp() | 过期时间戳(聚合场景不支持) |
int getRewardVideoAdType() | 广告真实类型(聚合场景不支持) |
void setShowDownLoadBar(boolean showDownLoadBar) | 聚合场景不支持 |
int getInteractionType() | 广告交互类型(聚合场景不支持) |
void setDownloadListener(TTAppDownloadListener listener) | 注册广告的下载回调(聚合场景不支持) |
void setRewardPlayAgainInteractionListener(RewardAdInteractionListener listener) | 再看一个功能(7200及以上废弃) |
void setRewardPlayAgainController(RewardAdPlayAgainController listener) | 再看一个功能控制器(7200及以上废弃) |
方法名 | 说明 |
void onAdShow() | 广告展示 |
void onAdVideoBarClick() | 广告的下载bar点击回调 |
void onAdClose() | 广告关闭的回调 |
void onVideoComplete() | 视频播放完毕的回调 |
void onVideoError() | 视频播放失败的回调 |
void onRewardArrived(boolean isRewardValid, int rewardType, Bundle extraInfo) | 激励视频播放完毕,验证是否有效发放奖励的回调 |
注意事项:
AdSlot.Builder().setMediationAdSlot(new MediationAdSlot.Builder().setBidNotify(true)后可触发receiveBidResult,开发者可在该方法中获取竞价结果、价格等信息。方法名 | 说明 |
boolean isReady() | 当前广告是否可以展示 |
MediationAdEcpmInfo getShowEcpm() | 获取展示广告的详细信息 |
List <MediationAdLoadInfo> getAdLoadInfo() | load回调后获取广告加载信息 |
void destroy() | 广告销毁 |
方法名 | 返回值 | 说明 |
getCustomData() | Map<String, String> | 自定义参数集合,一般用于透传额外业务字段(如服务端回调、自定义统计等) |
getSdkName() | String | 实际投放所用广告 SDK 名称,如穿山甲、GDT 等,用于识别当前流量来自哪个广告源 |
getCustomSdkName() | String | 自定义的 ADN 名称(如在聚合侧自定义的别名),用于区分同一厂商下的不同接入或做自定义标记 |
getSlotId() | String | 实际展示广告使用的代码位 ID,一般对应各 ADN 后台的广告位标识 |
getLevelTag() | String | 多阶底价标签/阶梯价标签,用于标记当前展示走的是哪一档价格策略 |
getEcpm() | String | 当前展示广告的 eCPM(单位通常为分),仅支持 show 后通过获取,可用于收入与比价分析 |
getReqBiddingType() | int | 请求的竞价类型(如普通、Bidding),具体枚举需结合文档查看 |
getErrorMsg() | String | 如本次加载/竞价存在错误,这里返回对应的错误信息或原因描述 |
getRequestId() | String | 当前广告请求的唯一标识 ID,便于日志排查与联调定位问题 |
getRitType() | String | 广告位类型(如开屏、激励视频、插屏、信息流等)的标识,用于区分不同广告形态 |
getSegmentId() | String | 流量分组 ID,用于区分不同实验组、用户分群或分流策略,详细使用请参考>>> |
getChannel() | String | 流量分组渠道信息(如应用分发渠道、推广渠道等),便于按渠道维度统计与分析,详细使用请参考>>> |
getSubChannel() | String | 流量分组子渠道信息,相比 channel 更细粒度的分渠道标识,详细使用请参考>>> |
getAbTestId() | String | AB 实验 ID,用于标记当前请求命中了哪个 AB 实验方案 |
getScenarioId() | String | 场景 ID,用于标记该广告所在的业务场景(如某个页面或功能位) |
getSubRitType() | String | 子广告位类型/更细颗粒的广告形态标识,用于在同一大类广告内做进一步区分 |
功能1:穿山甲激励广告增加「在广告中显示奖励内容」功能,根据开发者配置的奖励物品和数量,在激励视频广告播放过程中提示用户完成激励任务后将获取的奖励收益,以激发用户兴趣、观看更久更完整的视频广告,提升整体的CTR和收入。
功能2:若开发者使用的是Gromore的服务端奖励验证回调,请求广告时传入的奖励名称和数量会拼接在开发者在平台配置的奖励URL,开发者可根据回传的参数判断是否下发奖励
对比项 | 客户端奖励名称/数量设置 | 服务端奖励验证配置 |
配置位置 | 客户端代码(请求激励广告时设置 | 穿山甲平台广告位开启“服务端激励回调”并配置 URL 和密钥 |
作用对象 | 穿山甲用户界面展示(如挽留弹窗、奖励提示),激发用户兴趣,提高广告完整观看率及收益,受模版限制不是一定会展示 | 服务端奖励发放的合法性校验:当用户观看完激励视频并达到奖励条件时,服务端会将奖励名称和数量通过回调 URL 传递给开发者服务端,开发者服务端返回判断结果后,客户端会通过 |
数据流向 | 客户端→穿山甲 SDK→广告展示页面 | 穿山甲服务端→开发者服务端→客户端回调 |
依赖条件 | 需开启“在广告中显示奖励内容”开关 | 需开启“需要服务器判断”并配置回调接口 |
优先级规则 | 接口传入 > 平台配置 | 服务端返回结果决定最终奖励是否发放 |
若想使用此功能,需在创建激励视频代码位时配置开启“在广告中显示奖励内容”开关。开启后您设置的奖励物品名称、奖励数量会基于模版优选逻辑将有可能在广告播放过程中展示。开发者可以通过以下两种方案配置具体显示的奖励内容。
方案一:在穿山甲平台-代码位创编页面输入奖励名称和数量。
方案二:在请求广告时使用setRewardAmount与setRewardName方法传入奖励名称和数量,详见文档「接口改动」部分。
对比项 | 广告位维度【强烈推荐】 | 代码位维度 |
配置位置 | GroMore 平台的广告位层级(广告位 ID 以 1 开头),需在广告位编辑页面勾选「服务端激励回调」并填入回调 URL | 具体 ADN(如穿山甲)的代码位层级(代码位 ID 以 9 开头),需在对应 ADN 平台的代码位设置中开启「服务端激励回调」并配置 URL,详细配置请移步聚合ADN说明: |
验证逻辑 | GroMore 服务端接收 ADN 的奖励事件后,统一向开发者服务端发起回调,开发者返回验证结果后,GroMore 再将结果透传给客户端(如 | ADN 服务端直接与开发者服务端交互,验证结果由 ADN 客户端回调返回(如穿山甲的 |
回调链路 | 所有 ADN 的奖励验证通过 GroMore 中转,支持多 ADN 统一管理,回调链路涉及多个广告网络,开发者在 GroMore 广告位设置回调后,GroMore 服务端会向开发者服务端发送验证请求 | 各 ADN 独立处理验证流程,不经过 GroMore 中转,直接通过自身服务端向开发者服务端发送验证请求,开发者判断后返回结果,穿山甲客户端再回调给开发者 |
参数传递 | 包含更多扩展参数,如 ecpm、广告位 id、adn 的代码位 id 等 | 包含 sign、user_id、trans_id、reward_amount、reward_name、extra 等基本参数,不包含 ecpm 参数 |
注意事项 | 开启聚合维度服务端验证功能后,不要在第三方 ADN 重复配置这些代码位的服务端验证 | 开启聚合维度服务端验证功能后,不要在第三方 ADN 重复配置这些代码位的服务端验证 |
Online Customer Service24/7 Online Customer Service BotManual customer service, weekdays 10~ 12 o'clock/14~ 19 o'clock