文档管理中心
|

广告服务

全网最通俗易懂的「插屏广告」接入方法

什么是插屏广告?


插屏广告是一种在应用开启、暂停或退出时以全屏的形式弹出的广告形式。当应用展示插屏广告时,用户既可以选择点击该广告,进而访问其目标网站,也可以将其关闭,并返回应用。


插屏广告的优势

插屏广告展现尺寸更大,视觉效果更好;与Banner广告相比,插屏广告更容易集中用户的目光,点击率、转化率更高;相较信息流广告,与应用契合度较弱,但关注度和曝光效果更突出。


插屏广告在应用暂停、跳转、退出的情况下展示,展示时机巧妙避开用户对应用的正常体验的影响。如果能为用户精准推荐感兴趣的广告,且广告与应用协调搭配好,则插屏广告能达到最理想的效果。


华为广告服务能够帮助开发者接入包括插屏广告在内的6种广告位。接下来的文章会详细讲解插屏广告的开发步骤。示例代码已在相关社区进行开源,欢迎开发者关注、下载并提供宝贵意见:


Github官方地址:https://github.com/hms-core/hms-ads-demo-java


Gitee官方地址:https://gitee.com/hms-core/hms-ads-demo-java


前提条件

HUAWEI Ads SDK依赖HMS Core(APK)4.0.0.300及以上版本。如果设备上未安装HMS Core(APK)4.0.0.300及以上版本,则无法使用HUAWEI Ads SDK的相关接口。


在开发应用前需要在华为开发者联盟网站上注册成为开发者并完成实名认证,具体方法可参见帐号注册认证


参见创建项目和在项目中添加应用完成应用的创建。


开发前准备

广告服务的集成需如下4个关键步骤,可以参考华为开发者联盟文档


1. 导入HUAWEI Ads SDK


2. 配置网络权限


3. 配置混淆脚本


4. 初始化SDK


开发关键步骤

1.1 创建插屏广告对象。

创建InterstitialAd对象,并通过InterstitialAd类的setAdId()方法设置测试广告位ID。


private InterstitialAd interstitialAd; 
 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_interstitial); 
 
    interstitialAd = new InterstitialAd(this); 
    // "testb4znbuh3n2"为测试专用的广告位ID,App正式发布时需要改为正式的广告位ID 
    interstitialAd.setAdId("testb4znbuh3n2");  
    loadInterstitialAd(); 
}

1.2 获取广告。

调用InterstitialAd对象的 loadAd() 方法来获取广告。


private void loadInterstitialAd() { 
    ... 
    // 获取插屏广告 
    AdParam adParam = new AdParam.Builder().build(); 
    interstitialAd.loadAd(adParam); 
    ... 
}

1.3 展示广告。

调用InterstitialAd的show(Activity activity)方法来显示广告,在此之前需要调用isLoaded()方法来确认广告已经加载完成。


private void showInterstitialAd() { 
    // 显示广告 
    if (interstitialAd != null && interstitialAd.isLoaded()) { 
        interstitialAd.show(this); 
    } else { 
        Toast.makeText(this, "Ad did not load", Toast.LENGTH_SHORT).show(); 
    } 
}

1.4 监听广告事件。

调用InterstitialAd类的setAdListener方法可以为InterstitialAd对象添加广告事件监听器AdListener,并通过实现AdListener类中的方法来监听广告事件。了解详细方法,请参见API文档中的AdListener类。


... 
interstitialAd.setAdListener(adListener); 
... 
private AdListener adListener = new AdListener() { 
    @Override 
    public void onAdLoaded() { 
        // 广告获取成功时调用 
        ... 
        showInterstitialAd(); 
    } 
    @Override 
    public void onAdFailed(int errorCode) { 
        // 广告获取失败时调用 
        ... 
    } 
    @Override 
    public void onAdClosed() { 
        // 广告关闭时调用 
        ... 
    } 
    @Override 
    public void onAdClicked() { 
       // 广告点击时调用 
        ... 
    } 
    @Override 
    public void onAdLeave() { 
        //广告离开时调用 
        ... 
    } 
    @Override 
    public void onAdOpened() { 
        // 广告打开时调用 
        ... 
    } 
    @Override 
    public void onAdImpression() { 
        // 广告曝光时调用 
        ... 
    } 
};

更多应用内广告形式操作指南:

1、应用内添加Banner广告位

2、应用内添加激励广告

3、应用内添加原生广告

4、应用内添加开屏广告

5、应用内添加插屏广告

6、应用内添加贴片广告


>>访问华为广告服务官网,了解更多相关内容


>>获取华为广告服务开发指导文档


>>访问华为开发者联盟官网,了解更多相关内容


>>获取开发指导文档


>>华为移动服务开源仓库地址:GitHubGitee


点赞
1
收藏
4
回复
1
分享
举报
浏览1530 编辑于2021-05-07 08:07未知归属地
全部评论
最多点赞
最新发布
最早发布
写回答
新增插入模板功能
一键使用模板,快速填写内容,轻松发帖~
知道了
  • 为了保障您的信息安全,请勿上传您的敏感个人信息(如您的密码等信息)和您的敏感资产信息(如关键源代码、签名私钥、调试安装包、业务日志等信息),且您需自行承担由此产生的信息泄露等安全风险。
  • 如您发布的内容为转载内容,请注明内容来源。

我要发帖子

了解社区公约,与您携手共创和谐专业的开发者社区。