Skip to content

开屏广告

1.1 ApexAdxSplash

  • com.apex.adx.ApexAdxSplash
方法名方法介绍
ApexAdxSplash(Activity activity, ApexAdxSplashRequest adRequest, ApexAdxSplashListener adListener)构造方法,广告相关状态会通过 adListener 通知开发者。参数说明:activity(展示广告的 activity)、adRequest(广告请求对象)、adListener(广告状态监听器)。
loadAndShow(ViewGroup adContainer)请求并立即展示广告。参数说明:adContainer(展示广告的容器)。
loadAdOnly()拉取广告,配合showAd使用,实现和loadAdAndShow相同的功能。
isReady()广告是否准备好,未准备好广告将无法展示。
showAd(ViewGroup adContainer)展示广告,配合loadAdOnly使用,实现和loadAdAndShow相同的功能。
destroy()当广告关闭不再使用时,必须调用此方法释放资源

1.2 ApexAdxSplashRequest

  • com.apex.adx.req.ApexAdxSplashRequest
方法名方法介绍
ApexAdxSplashRequest(String pid, String userId, Map<String, Object> options)构造方法。参数说明:pid(广告位Id)、userId(用户Id可选)、options(扩展参数,可传任意)。
setAppTitle(String appTitle)设置应用开屏LOGO标题,广告将半屏Window展示。
setAppDesc(String appDesc)设置应用开屏LOGO描,广告半屏Window展示。
setDisableAutoHideAd(boolean disableAutoHideAd)广告结束,广告内容是否自动隐藏。 若开屏和应用共用Activity,建议false。若开屏是单独Activity ,建议true。

1.3 ApexAdxSplashListener

  • com.apex.adx.listener.ApexAdxSplashListener
方法名方法介绍
onSplashAdSuccessLoad(String pid)开屏广告成功加载。参数说明:pid(广告位Id)。
onSplashAdSuccessPresent()开屏广告成功展示,媒体可在此记录曝光。
onSplashAdFailToLoad(ApexAdxError error, String pid)开屏广告曝光失败。参数说明:error(报错信息,具体可看其内部code和msg)、pid(报错的广告位Id)。
onSplashAdClicked()开屏广告被点击。
onSplashClosed()开屏广告关闭。

2. 接入代码示例

2.1 设置监听回调

java
ApexAdxSplashListener splashAdListener = new ApexAdxSplashListener() {
    @Override
    public void onSplashAdSuccessPresent() {// 开屏广告成功展示

    }

    /**
     *  开屏广告成功加载
     *  如果不是LoadAndShow模式,则需要调用showAd()方法展示广告
     *  adContainer 开屏内容展示容器,若传null,则默认进行全屏展示
     */
    @Override
    public void onSplashAdSuccessLoad(String pid) {

    }

    /**
     * 开屏广告展示失败
     * ApexAdxError 开屏广告错误内容
     * pid 广告位
     * 广告失败直接进入主页面
     */
    @Override
    public void onSplashAdFailToLoad(ApexAdxError error, String pid) {
        jumpMainActivity();
    }

    @Override
    public void onSplashAdClicked() {

    }

    @Override
    public void onSplashClosed() {// 开屏广告关闭
        //需要判断是否能进入主页面
        jumpWhenCanClick();
    }
};

2.1.1 开屏广告点击注意事项

java
/**
 * 设置一个变量来控制当前开屏页面是否可以跳转,当开屏广告为普链类广告时,点击会打开一个广告落地页,此时开发者还不能打开自己的App主页。
 * 当从广告落地页返回以后,才可以跳转到开发者自己的App主页;当开屏广告是App类广告时只会下载App。
 */
public boolean canJumpImmediately = false;

private void jumpWhenCanClick() {
    if (canJumpImmediately) {
        jumpMainActivity();
    } else {
        canJumpImmediately = true;
    }
}

/**
 * 不可点击的开屏,使用该jump方法,而不是用jumpWhenCanClick
 */
private void jumpMainActivity() {
    Intent intent = new Intent(this, MainActivity.class);
    this.startActivity(intent);
    this.finish();
}

@Override
protected void onPause() {
    canJumpImmediately = false;
}

@Override
protected void onResume() {
    if (canJumpImmediately) {
        jumpWhenCanClick();
    }
    canJumpImmediately = true;
}

2.2 开屏加载展示

此方式自适应广告展示大小,自带LOGO样式展示APP信息,无需开发者处理底部LOGO内容

java
/**
 * PID 必填
 * USER_ID 可选
 * OPTIONS 自定义参数
 */
ApexAdxSplashRequest adRequest = new ApexAdxSplashRequest(PID, null, null);
ApexAdxSplash adSdkSplash = new ApexAdxSplash(activity, adRequest, splashAdListener);
// 加载并显示
adSdkSplash.loadAndShow(adContainer);

ApexAdx SDK Documentation