# 2.开屏广告

SDK 为接入方提供了开屏广告,开屏广告建议为用户在进入 App 时展示的全屏广告。开屏广告为一个 View,宽高默认为 match_parent,注意开屏广告的height>=75%屏幕高,否则会影响计费。 开屏广告可支持的尺寸:图片尺寸传入与展示区域大小保持一致,避免素材变形.

# (1) 调用方法

SDK版本在3.3(包括3.3)之后开屏Activity已经适配 android.app.Activity

开屏广告的Activity必须FragmentActivity,否则广告将无法展示

SDK版本3.3(包括3.3)之后 FNSplashAd.destroy() 已废弃,开屏广告现在无需销毁

使用完毕后,请“务必”调用FNSplashAd.destroy()方法销毁广告,以免造成 内存泄漏

调用方法如下:

/**
 * 加载并显示开屏广告
 *
 * @param activity   调用此接口的Activity
 * @param container  开屏广告容器
 * @param positionId 广告位ID
 * @param listener   监听回调
 * @return 开屏广告对象
 */
FNSplashAd splashAd=Ads.loadSplashAd(Activity activity,ViewGroup container,String positionId,SplashListener listener);
1
2
3
4
5
6
7
8
9
10

# (2) 回调方法

public interface SplashListener {
    /**
     * 广告加载成功
     */
    void onLoadSuccess();

    /**
     * 广告加载失败
     */
    void onLoadError(String msg, int code);

    /**
     * 广告加载超时
     */
    void onLoadTimeout();

    /**
     * 广告显示
     */
    void onAdShow();

    /**
     * 点击广告
     */
    void onAdClicked();

    /**
     * 广告消除
     *
     * @param splashEyeAd 点睛广告才会有值(不明白可忽略)
     */
    void onAdDismiss(SplashEyeAd splashEyeAd);
}
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

# (3) 预加载

如果您需要预加载,则可以创建预加载对象来实现

//创建预加载对象
/**
 * context 上下文
 * splashId 开屏广告位ID
 * listener SplashListener 开屏监听回调
 */
FNPreSplashAd preSplashAd = Ads.preloadSplashAd(context,splashId,listener);
//加载广告
preSplashAd.load();
...
//加载成功后在合适的位置调用显示开屏广告
/**
 * activity 开屏广告的Activity
 * container 开屏广告放置容器
 */
preSplashAd.show(activity,container);

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17