# 3.激励视频

本 SDK 为接入方提供激励视频广告,该广告的效果为观看完毕视频广告,发放奖励给用户。使用场景包括但不限于:

  1. 游戏等应用内观看视频广告获得游戏内金币等
  2. 积分类应用接入

# (1) 调用方法

调用如下:

/**
* 加载并显示激励视频广告
*
* @param activity 调用此接口的Activity
* @param positionId 广告位ID
* @param listener 监听回调
*/
Ads.loadRewardVideoAd(final Activity activity, String positionId, RewardVideoListener listener);
1
2
3
4
5
6
7
8

# (2) 回调方法

public interface RewardVideoListener {
    /**
     * 广告显示
     */
    void onAdShow();

    /**
     * 广告被点击
     */
    void onAdBarClick();

    /**
     * 广告关闭
     * id 展示广告时生成的独立ID
     */
    void onAdClose(String id);

    /**
     * 广告播放完毕
     */
    void onVideoComplete();

    /**
     * 广告播放失败
     */
    void onVideoError(String msg, int code);


    /**
     * 广告被跳过
     */
    void onSkippedVideo();

    /**
     * 广告加载失败
     *
     * @param msg  错误消息
     * @param code 错误代码
     */
    void onLoadError(String msg, int code);

    /**
     * 广告加载成功
     */
    void onLoadSuccess();

    /**
     * 广告已缓存
     */
    void onVideoCached();

    /**
     * 下发奖励 SDK 2.1版新增方法,此方法表示此次观看为有效观看(可以对用户下发奖励了)
     * id 展示广告时生成的独立ID
     */
    void onReward(String id);

}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58

# (3) 预加载

如果您需要使用预加载,则调用预加载方法加载广告

 /**
 * 预加载激励视频
 *
 * @param context    上下文
 * @param positionId 广告位ID
 * @param listener   监听回调
 * @return 激励视频对象(调用show显示广告)
 */
FNPreRewardAd preRewardAd = Ads.preloadRewardVideoAd(context, positionId, listener);
//加载广告
preRewardAd.load();
// 广告加载成功后在合适的位置调用显示广告(确认广告加载成功再调用)
preRewardAd.show(activity);
1
2
3
4
5
6
7
8
9
10
11
12
13

# (4) 服务器校验

如果您需要使用服务器校验,请先使用服务器校验专用SDK

  • 请根据自身需求在下发奖励(onReward)或者关闭广告(onAdClose)时校验,建议在用户关闭时校验

  • 使用服务器校验需向商务提供服务器IP(服务器校验接口有白名单机制,非白名单内IP无法校验)

@Override
public void onReward(String id) {
//TODO 请求服务器,服务器调用校验接口校验确认是否下发奖励
}

@Override
public void onAdClose(String id){
//TODO 请求服务器,服务器调用校验接口校验确认是否下发奖励
}
1
2
3
4
5
6
7
8
9

校验接口:

请求方式 请求URL 参数 示例
GET https://valid.funengad.com/valid/{id} id https://valid.funengad.com/valid/423ab5d3b71710b4e76854b8c4bde46a_211324_1616908103430

返回参数示例:

{
  "code": 0,    //为零表示请求成功,不为零表示请求失败
  "msg": null,  //code不为零时显示错误信息
  "data": true  //显示校验结果,true:校验成功,false:校验失败
}
1
2
3
4
5