灰鲸SDK


插屏广告

<h1>插屏广告<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/Android/%E5%B9%BF%E5%91%8A%E7%B1%BB%E5%9E%8B/%E6%8F%92%E5%B1%8F%E5%B9%BF%E5%91%8A/#%E6%8F%92%E5%B1%8F%E5%B9%BF%E5%91%8A">​</a></h1> <p>&gt; <strong>注意:</strong> 如果聚合集成了腾讯广告,则触发展示插屏广告的Activity需要配置:</p> <pre><code>android:configChanges=&amp;quot;keyboard|keyboardHidden|orientation|screenSize&amp;quot;</code></pre> <h2>1. 主要API<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/Android/%E5%B9%BF%E5%91%8A%E7%B1%BB%E5%9E%8B/%E6%8F%92%E5%B1%8F%E5%B9%BF%E5%91%8A/#_1-%E4%B8%BB%E8%A6%81api">​</a></h2> <h3>1.1 HJAdsSdkInterstitial<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/Android/%E5%B9%BF%E5%91%8A%E7%B1%BB%E5%9E%8B/%E6%8F%92%E5%B1%8F%E5%B9%BF%E5%91%8A/#_1-1-wminterstitialad">​</a></h3> <ul> <li>com.hzhj.openads.HJAdsSdkInterstitial</li> </ul> <table> <thead> <tr> <th>方法名</th> <th>方法介绍</th> </tr> </thead> <tbody> <tr> <td>HJAdsSdkInterstitial(Activity activity, HJInterstitialAdRequest request, HJOnAdsSdkInterstitialListener listener)</td> <td>构造方法。参数说明:activity(展示广告的 activity)、request(广告请求对象)。 listener(回调监听)</td> </tr> <tr> <td>loadAd()</td> <td>拉取广告。</td> </tr> <tr> <td>isReady()</td> <td>广告是否准备好,未准备好广告将无法展示。</td> </tr> <tr> <td>show( HashMap&lt;String, String&gt; options)</td> <td>展示广告。参数说明:options(广告展示时的扩展参数,可选)。</td> </tr> <tr> <td>destroy()</td> <td>销毁广告。</td> </tr> </tbody> </table> <h3>1.2 HJInterstitialAdRequest<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/Android/%E5%B9%BF%E5%91%8A%E7%B1%BB%E5%9E%8B/%E6%8F%92%E5%B1%8F%E5%B9%BF%E5%91%8A/#_1-2-wminterstitialadrequest">​</a></h3> <ul> <li>com.hzhj.openads.req.HJInterstitialAdRequest</li> </ul> <table> <thead> <tr> <th>方法名</th> <th>方法介绍</th> </tr> </thead> <tbody> <tr> <td>HJInterstitialAdRequest(String placementId, String userId, Map&lt;String, Object&gt; options)</td> <td>构造方法。参数说明:placementId(广告位Id)、userId(用户Id可选)、options(扩展参数,可传任意)。</td> </tr> </tbody> </table> <h3>1.3 HJOnAdsSdkInterstitialListener<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/Android/%E5%B9%BF%E5%91%8A%E7%B1%BB%E5%9E%8B/%E6%8F%92%E5%B1%8F%E5%B9%BF%E5%91%8A/#_1-3-wminterstitialadlistener">​</a></h3> <ul> <li>com.hzhj.openads.listener.HJOnAdsSdkInterstitialListener</li> </ul> <table> <thead> <tr> <th>方法名</th> <th>方法介绍</th> </tr> </thead> <tbody> <tr> <td>onInterstitialAdLoadSuccess(String placementId)</td> <td>广告成功加载。参数说明:placementId(广告位Id)。</td> </tr> <tr> <td>onInterstitialAdLoadError(HJAdError error, String placementId)</td> <td>广告加载失败。参数说明:error(报错信息,具体可看其内部code和message)、placementId(报错的广告位Id)。</td> </tr> <tr> <td>onInterstitialAdPlayStart()</td> <td>广告成功展示,媒体可在此记录曝光。参数说明:adInfo(广告信息,具体可看其内部成员变量)。</td> </tr> <tr> <td>onInterstitialAdPlayError(HJAdError error, String placementId)</td> <td>广告播放出错。参数说明:error(报错信息,具体可看其内部code和message)、placementId(报错的广告位Id)。</td> </tr> <tr> <td>onInterstitialAdPlayEnd()</td> <td>广告播放结束。</td> </tr> <tr> <td>onInterstitialAdClicked()</td> <td>广告被点击。</td> </tr> <tr> <td>onInterstitialAdClosed()</td> <td>广告关闭。</td> </tr> </tbody> </table> <h2>2. 接入代码示例<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/Android/%E5%B9%BF%E5%91%8A%E7%B1%BB%E5%9E%8B/%E6%8F%92%E5%B1%8F%E5%B9%BF%E5%91%8A/#_2-%E6%8E%A5%E5%85%A5%E4%BB%A3%E7%A0%81%E7%A4%BA%E4%BE%8B">​</a></h2> <h3>2.1 设置监听回调<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/Android/%E5%B9%BF%E5%91%8A%E7%B1%BB%E5%9E%8B/%E6%8F%92%E5%B1%8F%E5%B9%BF%E5%91%8A/#_2-1-%E8%AE%BE%E7%BD%AE%E7%9B%91%E5%90%AC%E5%9B%9E%E8%B0%83">​</a></h3> <p>java</p> <pre><code>private HJAdsSdkInterstitial interstitialAd; /** * PLACEMENT_ID 必填 * USER_ID 可选 * OPTIONS 自定义参数 可选 */ HJInterstitialAdRequest request = new HJInterstitialAdRequest(PLACEMENT_ID, USER_ID, OPTIONS); HJOnAdsSdkInterstitialListener listener = new HJOnAdsSdkInterstitialListener() { @Override public void onInterstitialAdLoadSuccess(String placementId) { } @Override public void onInterstitialAdPlayStart() { } @Override public void onInterstitialAdPlayEnd() { } @Override public void onInterstitialAdClicked() { } @Override public void onInterstitialAdClosed() { } /** * 加载广告错误回调 * HJAdError 插屏错误内容 * placementId 广告位 */ @Override public void onInterstitialAdLoadError(final HJAdError error, final String placementId) { } /** * 播放错误回调 * HJAdError 插屏错误内容 * placementId 广告位 */ @Override public void onInterstitialAdPlayError(final HJAdError error, final String placementId) { } } interstitialAd = new HJAdsSdkInterstitial(this, request, listener);</code></pre> <h3>2.2 插屏广告加载<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/Android/%E5%B9%BF%E5%91%8A%E7%B1%BB%E5%9E%8B/%E6%8F%92%E5%B1%8F%E5%B9%BF%E5%91%8A/#_2-2-%E6%8F%92%E5%B1%8F%E5%B9%BF%E5%91%8A%E5%8A%A0%E8%BD%BD">​</a></h3> <p>java</p> <pre><code>/** *同一个interstitialAd不建议在广告playing中重复load *同一个interstitialAd在onInterstitialAdClosed中可以load下一次广告 */ if (interstitialAd != null) { interstitialAd.loadAd(); }</code></pre> <h3>2.3 插屏广告播放<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/Android/%E5%B9%BF%E5%91%8A%E7%B1%BB%E5%9E%8B/%E6%8F%92%E5%B1%8F%E5%B9%BF%E5%91%8A/#_2-3-%E6%8F%92%E5%B1%8F%E5%B9%BF%E5%91%8A%E6%92%AD%E6%94%BE">​</a></h3> <p>java</p> <pre><code>/** * 收到onInterstitialAdLoadSuccess回调代表广告已ready * option 自定义参数(可选) */ if (interstitialAd != null &amp;amp;&amp;amp; interstitialAd.isReady()) { //广告播放 HashMap option = new HashMap(); option.put(&amp;quot;key1&amp;quot;, &amp;quot;567&amp;quot;); option.put(&amp;quot;key2&amp;quot;, &amp;quot;转盘抽奖&amp;quot;); interstitialAd.show(this, option); }</code></pre> <h3>2.4 插屏广告预加载注意事项<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/Android/%E5%B9%BF%E5%91%8A%E7%B1%BB%E5%9E%8B/%E6%8F%92%E5%B1%8F%E5%B9%BF%E5%91%8A/#_2-4-%E6%8F%92%E5%B1%8F%E5%B9%BF%E5%91%8A%E9%A2%84%E5%8A%A0%E8%BD%BD%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9">​</a></h3> <ul> <li> <p>需要在平台开启预加载功能。</p> </li> <li> <p>开启预加载功能后,sdk内部会在广告播放中再次去请求广告,成功后会再次回调onInterstitialAdLoadSuccess。(<strong>相当于load一次广告会有两次onInterstitialAdLoadSuccess</strong>)</p> </li> <li> <p>开启预加载功能后,要注意全局使用同一个HJAdsSdkInterstitial对象。(<strong>new注意判null</strong>)</p> </li> <li>广告播放时可先判断isReady(),如果ready直接播放,否则可再次调用loadAd()。</li> </ul> <p>java</p> <pre><code>private HJAdsSdkInterstitial mInterstitialAd;;//全局对象 /** * 加载广告 */ private void loadAd() { if (mInterstitialAd == null) { mInterstitialAd = new HJAdsSdkInterstitial(this, new HJInterstitialAdRequest(placementId, userID, options), new HJOnAdsSdkInterstitialListener() { @Override public void onInterstitialAdLoadSuccess(String placementId) { } @Override public void onInterstitialAdPlayStart() { } @Override public void onInterstitialAdPlayEnd() { } @Override public void onInterstitialAdClicked() { } @Override public void onInterstitialAdClosed() { } /** * 加载广告错误回调 * HJAdError 插屏错误内容 * placementId 广告位 */ @Override public void onInterstitialAdLoadError(final HJAdError error, final String placementId) { } /** * 播放错误回调 * HJAdError 插屏错误内容 * placementId 广告位 */ @Override public void onInterstitialAdPlayError(final HJAdError error, final String placementId) { } }); } mInterstitialAd.loadAd(); }</code></pre>

页面列表

ITEM_HTML