开屏广告
<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/%E5%BC%80%E5%B1%8F%E5%B9%BF%E5%91%8A/#%E5%BC%80%E5%B1%8F%E5%B9%BF%E5%91%8A"></a></h1>
<h3>1.1 HJAdsSdkSplash<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/%E5%BC%80%E5%B1%8F%E5%B9%BF%E5%91%8A/#_1-1-wmsplashad"></a></h3>
<ul>
<li>com.hzhj.openads.HJAdsSdkSplash</li>
</ul>
<table>
<thead>
<tr>
<th>方法名</th>
<th>方法介绍</th>
</tr>
</thead>
<tbody>
<tr>
<td>HJAdsSdkSplash(Activity activity, HJSplashAdRequest adRequest, HJOnAdsSdkSplashListener adListener)</td>
<td>构造方法,广告相关状态会通过 adListener 通知开发者。参数说明:activity(展示广告的 activity)、adRequest(广告请求对象)、adListener(广告状态监听器)。</td>
</tr>
<tr>
<td>loadAndShow(ViewGroup adContainer)</td>
<td>请求并立即展示广告。参数说明:adContainer(展示广告的容器)。</td>
</tr>
<tr>
<td>loadAdOnly()</td>
<td>拉取广告,配合showAd使用,实现和loadAdAndShow相同的功能。</td>
</tr>
<tr>
<td>isReady()</td>
<td>广告是否准备好,未准备好广告将无法展示。</td>
</tr>
<tr>
<td>showAd(ViewGroup adContainer)</td>
<td>展示广告,配合loadAdOnly使用,实现和loadAdAndShow相同的功能。</td>
</tr>
<tr>
<td>destroy()</td>
<td>当广告关闭不再使用时,必须调用此方法释放资源</td>
</tr>
</tbody>
</table>
<h3>1.2 HJSplashAdRequest<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/%E5%BC%80%E5%B1%8F%E5%B9%BF%E5%91%8A/#_1-2-wmsplashadrequest"></a></h3>
<ul>
<li>com.hzhj.openads.req.HJSplashAdRequest</li>
</ul>
<table>
<thead>
<tr>
<th>方法名</th>
<th>方法介绍</th>
</tr>
</thead>
<tbody>
<tr>
<td>HJSplashAdRequest(String placementId, String userId, Map<String, Object> options)</td>
<td>构造方法。参数说明:placementId(广告位Id)、userId(用户Id可选)、options(扩展参数,可传任意)。</td>
</tr>
<tr>
<td>setAppTitle(String appTitle)</td>
<td>设置应用开屏LOGO标题,广告将半屏Window展示。</td>
</tr>
<tr>
<td>setAppDesc(String appDesc)</td>
<td>设置应用开屏LOGO描,广告半屏Window展示。</td>
</tr>
<tr>
<td>setDisableAutoHideAd(boolean disableAutoHideAd)</td>
<td>广告结束,广告内容是否自动隐藏。 若开屏和应用共用Activity,建议false。若开屏是单独Activity ,建议true。</td>
</tr>
</tbody>
</table>
<h3>1.3 HJOnAdsSdkSplashListener<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/%E5%BC%80%E5%B1%8F%E5%B9%BF%E5%91%8A/#_1-3-splashadlistener"></a></h3>
<ul>
<li>com.hzhj.openads.listener.HJOnAdsSdkSplashListener</li>
</ul>
<table>
<thead>
<tr>
<th>方法名</th>
<th>方法介绍</th>
</tr>
</thead>
<tbody>
<tr>
<td>onSplashAdSuccessLoad(String placementId)</td>
<td>开屏广告成功加载。参数说明:placementId(报错的广告位Id)。</td>
</tr>
<tr>
<td>onSplashAdFailToLoad(HJAdError error, String placementId)</td>
<td>SD开屏广告加载失败。参数说明:error(报错信息,具体可看其内部code和message)、placementId(报错的广告位Id)。</td>
</tr>
<tr>
<td>onSplashAdSuccessPresent()</td>
<td>开屏广告成功展示,媒体可在此记录曝光。</td>
</tr>
<tr>
<td>onSplashAdClicked()</td>
<td>开屏广告被点击。</td>
</tr>
<tr>
<td>onSplashClosed()</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/%E5%BC%80%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>
<p>java</p>
<pre><code>HJOnAdsSdkSplashListener splashAdListener = new HJOnAdsSdkSplashListener() {
@Override
public void onSplashAdSuccessPresent() {// 开屏广告成功展示
}
/**
* 开屏广告成功加载
* 如果不是LoadAndShow模式,则需要调用showAd()方法展示广告
* adContainer 开屏内容展示容器,若传null,则默认进行全屏展示
*/
@Override
public void onSplashAdSuccessLoad(String placementId) {
}
/**
* 开屏广告展示失败
* HJAdError 开屏广告错误内容
* placementId 广告位
* 广告失败直接进入主页面
*/
@Override
public void onSplashAdFailToLoad(HJAdError error, String placementId) {
jumpMainActivity();
}
@Override
public void onSplashAdClicked() {
}
@Override
public void onSplashClosed() {// 开屏广告关闭
//需要判断是否能进入主页面
jumpWhenCanClick();
}
};</code></pre>
<h4>2.1.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/%E5%BC%80%E5%B1%8F%E5%B9%BF%E5%91%8A/#_2-1-2-%E5%BC%80%E5%B1%8F%E5%B9%BF%E5%91%8A%E7%82%B9%E5%87%BB%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9"></a></h4>
<p>java</p>
<pre><code>/**
* 设置一个变量来控制当前开屏页面是否可以跳转,当开屏广告为普链类广告时,点击会打开一个广告落地页,此时开发者还不能打开自己的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;
}</code></pre>
<h4>2.1.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/%E5%BC%80%E5%B1%8F%E5%B9%BF%E5%91%8A/#_2-1-3-%E5%BC%80%E5%B1%8F%E5%8A%A0%E8%BD%BD%E5%B1%95%E7%A4%BA"></a></h4>
<p>> 此方式自适应广告展示大小,自带LOGO样式展示APP信息,无需开发者处理底部LOGO内容</p>
<p>java</p>
<pre><code>/**
* PLACEMENT_ID 必填
* USER_ID 可选
* OPTIONS 自定义参数
*/
HJSplashAdRequest adRequest = new HJSplashAdRequest(PLACEMENT_ID, USER_ID, OPTIONS);
/**
* 广告结束,广告内容是否自动隐藏.默认是false
* 若开屏和应用共用Activity,建议false。
* 若开屏是单独Activity ,建议true。
*/
adRequest.setDisableAutoHideAd(true);
/**
* 设置开屏应用LOGO区域(可选)
* 设置此项开屏会默认使用Window渲染
*/
adRequest.setAppTitle(appTitle);
//设置开屏应用LOGO描述(可选)
adRequest.setAppDesc(appDesc);
HJAdsSdkSplash adSdkSplash = new HJAdsSdkSplash(activity, adRequest, splashAdListener);
/**
* 建议默认实时加载并展示广告
*/
private boolean isLoadAndShow = true;
/**
* adContainer 开屏内容展示容器,若传null,则默认进行全屏展示
*/
if (isLoadAndShow) {
adSdkSplash.loadAndShow(adContainer);//adSdkSplash.showAd();
} else {
adSdkSplash.loadAdOnly();//需要在onSplashAdSuccessLoad回调里调用adSdkSplash.showAd();
}</code></pre>