接入安卓SDK的游戏及应用的android客户端开发者。
使用此文档内接口,需要先接入安卓BaseSDK。
1 接入安卓SDK后,需要配置Applovin SDK需要的依赖库。
将以下代码添加到您app的build.gradle中:
implementation 'com.wpmid.midbase:MIDADSAppLovin:1.0.18.3
2 添加广告依赖库仓库地址 到项目build.gradle中
allprojects {repositories {maven {name "ironsource repo"url 'https://android-sdk.is.com/'}maven {name "Tapjoy's maven repo"url "https://sdk.tapjoy.com/"}maven {name 'mintegral ads'url "https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea"}maven {name 'bytedance ads'url 'https://artifact.bytedance.com/repository/pangle'}}}
此接口需要在SDK 初始化以后调用。
设置视频激励回调,在回调内处理视频播放结果
/*** 视频激励回调*/MIDBaseSDK.getInstance(this).setMIDAdsApplovinListener(mMIDAdsApplovinListener);
接收到的数据为激励视频 播放结果。
| 接口 | 接口说明 |
|---|---|
| onLoadAdError | 视频加载错误 |
| onLoadAdComplete | 视频加载完成,可以播放 |
| onAdShowStart | 视频开始播放 |
| onAdClicked | 用户点击了广告上的下载链接 |
| onAdClose | 激励视频视频关闭 |
| onAdDisplayFailed | 视频播放错误 |
| onRewardVerify | 激励视频发放奖励,奖励信息运营配置到广告后台 |
/*** 视频回调*/private final MIDAdsApplovinListener mMIDAdsApplovinListener = new MIDAdsApplovinListener() {/*** 加载错误** @param code applovin 返回的错误码* @param message applovin 返回的错误信息*/@Overridepublic void onLoadAdError(String adUnitId,int code, String message) {Toast.makeText(MIDBase_Demo_MainActivity.mMainActivity, "视频加载错误code:" + code + " " + message, Toast.LENGTH_LONG);}/*** 加载完成** @param adUnitId 广告位ID*/@Overridepublic void onLoadAdComplete(String adUnitId) {Toast.makeText(MIDBase_Demo_MainActivity.mMainActivity, "视频加载完成", Toast.LENGTH_LONG);}/*** 视频广告开始展示回调** @param adUnitId 广告位ID*/@Overridepublic void onAdShowStart(String adUnitId) {Toast.makeText(MIDBase_Demo_MainActivity.mMainActivity, "视频开始播放", Toast.LENGTH_LONG);}/*** 广告被点击回调** @param adUnitId 广告位ID*/@Overridepublic void onAdClicked(String adUnitId) {Toast.makeText(MIDBase_Demo_MainActivity.mMainActivity, "点击了广告上的下载", Toast.LENGTH_LONG);}/*** 视频广告关闭回调,* 关闭视频回到游戏的时候触发** @param adUnitId 广告位ID*/@Overridepublic void onAdClose(String adUnitId) {Toast.makeText(MIDBase_Demo_MainActivity.mMainActivity, "视频关闭", Toast.LENGTH_LONG);}/*** 视频广告播放错误回调** @param message applovin 返回的错误信息*/@Overridepublic void onAdDisplayFailed(String adUnitId,String message) {Toast.makeText(MIDBase_Demo_MainActivity.mMainActivity, "视频错误", Toast.LENGTH_LONG);}/*** 视频播放奖励验证回调** @param adUnitId 广告位ID* @param rewardAmount 奖励数量 媒体平台创建代码位时配置的数值* @param rewardName 奖励名称 ,媒体平台创建代码位时配置的名称*/@Overridepublic void onRewardVerify(String adUnitId, int rewardAmount, String rewardName) {Toast.makeText(MIDBase_Demo_MainActivity.mMainActivity, "奖励发放: 数量:"+ rewardAmount + " 名字:" + rewardName, Toast.LENGTH_LONG);}};
缓存激励视频,研发可以先缓存一份广告,用于加速视频播放。
如果游戏需要提前缓存广告,可以在登录后缓存一份,然后每次展示完广告后再次加载下一个。
建议在:onLoadAdError 加载错误时重试。 onAdClose 在广告关闭以后重新加载下一个。
/*** 视频激励广告 加载** @param adid applovin平台创建的代码位ID*/public void MIDLoadRewardedAd(final String adid);
/*** 视频激励广告 加载** @param adid applovin平台创建的代码位ID*/MIDBaseSDK.getInstance(this).MIDLoadRewardedAd("applovin平台创建的代码位ID");
使用此方式播放,需要先加载完成广告
传入事件名,播放位置信息。研发自定义,
比如 升级,购买道具,复活等等。
/*** 播放视频激励广告** @param placement 事件名,播放位置信息。研发自定义*/public void MIDShowRewardedAd(final String placement);
/*** 播放视频激励广告** @param placement 事件名*/MIDBaseSDK.getInstance(this).MIDShowRewardedAd("testPlaceMent");
调用此接口后视频先加载,加载完成以后自动播放。
传入事件名,播放位置信息。研发自定义,
比如 升级,购买道具,复活等等。
如果游戏需要提前缓存广告,可以在登录后缓存一份,然后每次展示完广告后再次加载下一个。
建议在:onLoadAdError 加载错误时重试。 onAdClose 在广告关闭以后重新加载下一个。
/*** 视频激励广告 加载并播放** @param adid applovin平台创建的代码位ID* @param placement 事件名,播放位置信息。研发自定义*/public void MIDLoadShowRewardedAd(final String adid, final String placement);
/*** 视频激励广告 加载并播放** @param adid applovin平台创建的代码位ID* @param placement 事件名,播放位置信息。研发自定义*/MIDBaseSDK.getInstance(this).MIDLoadShowRewardedAd("86022121da4307ed", "testPlaceMent");
此接口需要在SDK 初始化以后调用。
设置插页广告回调,在回调内处理视频播放结果,
插页广告和激励视频区别是没有发奖逻辑,没有发奖回调。广告播放结束用户点关闭后,只有关闭回调。
SDK3.0.8版本 开始支持此功能
/*** 插页视频回调*/MIDBaseSDK.getInstance(this).setMIDAdsApplovinCoreListener(mMIDAdsApplovinCoreListener);
接收到的数据为广告 播放结果。
| 接口 | 接口说明 |
|---|---|
| onLoadAdError | 视频加载错误 |
| onLoadAdComplete | 视频加载完成,可以播放 |
| onAdShowStart | 视频开始播放 |
| onAdClicked | 用户点击了广告上的下载链接 |
| onAdClose | 视频关闭 |
| onAdDisplayFailed | 视频播放错误 |
/*** 视频回调*/private final MIDAdsApplovinCoreListener mMIDAdsApplovinListener = new MIDAdsApplovinCoreListener() {/*** 加载错误** @param code applovin 返回的错误码* @param message applovin 返回的错误信息*/@Overridepublic void onLoadAdError(String adUnitId,int code, String message) {Toast.makeText(MIDBase_Demo_MainActivity.mMainActivity, "视频加载错误code:" + code + " " + message, Toast.LENGTH_LONG);}/*** 加载完成** @param adUnitId 广告位ID*/@Overridepublic void onLoadAdComplete(String adUnitId) {Toast.makeText(MIDBase_Demo_MainActivity.mMainActivity, "视频加载完成", Toast.LENGTH_LONG);}/*** 视频广告开始展示回调** @param adUnitId 广告位ID*/@Overridepublic void onAdShowStart(String adUnitId) {Toast.makeText(MIDBase_Demo_MainActivity.mMainActivity, "视频开始播放", Toast.LENGTH_LONG);}/*** 广告被点击回调** @param adUnitId 广告位ID*/@Overridepublic void onAdClicked(String adUnitId) {Toast.makeText(MIDBase_Demo_MainActivity.mMainActivity, "点击了广告上的下载", Toast.LENGTH_LONG);}/*** 视频广告关闭回调,* 关闭视频回到游戏的时候触发** @param adUnitId 广告位ID*/@Overridepublic void onAdClose(String adUnitId) {Toast.makeText(MIDBase_Demo_MainActivity.mMainActivity, "视频关闭", Toast.LENGTH_LONG);}/*** 视频广告播放错误回调** @param message applovin 返回的错误信息*/@Overridepublic void onAdDisplayFailed(String adUnitId,String message) {Toast.makeText(MIDBase_Demo_MainActivity.mMainActivity, "视频错误", Toast.LENGTH_LONG);}};
缓存插页广告,研发可以先缓存一份广告,用于加速视频播放。
如果游戏需要提前缓存广告,可以在登录后缓存一份,然后每次展示完广告后再次加载下一个。
建议在:onLoadAdError 加载错误时重试。 onAdClose 在广告关闭以后重新加载下一个。
/*** 插页广告 加载** @param adid applovin平台创建的代码位ID*/public void MIDLoadInterstitialAd(final String adid);
/*** 插页广告 加载** @param adid applovin平台创建的代码位ID*/MIDBaseSDK.getInstance(this).MIDLoadInterstitialAd("applovin平台创建的代码位ID");
使用此方式播放,需要先加载完成广告
传入事件名,播放位置信息。研发自定义,
比如 升级,购买道具,复活等等。
/*** 播放插页广告** @param placement 事件名,播放位置信息。研发自定义*/public void MIDShowInterstitialAd(final String placement);
/*** 播放插页广告** @param placement 事件名*/MIDBaseSDK.getInstance(this).MIDShowInterstitialAd("testPlaceMent");
调用此接口后视频先加载,加载完成以后自动播放。
传入事件名,播放位置信息。研发自定义,
比如 升级,购买道具,复活等等。
如果游戏需要提前缓存广告,可以在登录后缓存一份,然后每次展示完广告后再次加载下一个。
建议在:onLoadAdError 加载错误时重试。 onAdClose 在广告关闭以后重新加载下一个。
/*** 插页广告 加载并播放** @param adid applovin平台创建的代码位ID* @param placement 事件名,播放位置信息。研发自定义*/public void MIDLoadShowInterstitialAd(final String adid, final String placement);
/*** 插页广告 加载并播放** @param adid applovin平台创建的代码位ID* @param placement 事件名,播放位置信息。研发自定义*/MIDBaseSDK.getInstance(this).MIDLoadShowInterstitialAd("applovin平台创建的代码位ID", "testPlaceMent");
此接口需要在SDK 初始化以后调用。
横幅广告就是一个常驻的广告条幅, 广告展示完成以后会自动刷新。
SDK3.0.8版本 开始支持此功能
/*** 插页视频回调*/MIDBaseSDK.getInstance(this).setMIDAdsApplovinBannerListener(mMIDAdsApplovinBannerListener);
接收到的数据为横幅视频 播放结果。
| 接口 | 接口说明 |
|---|---|
| onLoadAdError | 视频加载错误 |
| onLoadAdComplete | 视频加载完成,可以播放 |
| onAdShowStart | 视频开始播放 |
| onAdClicked | 用户点击了广告上的下载链接 |
| onAdClose | 视频关闭 |
| onAdDisplayFailed | 视频播放错误 |
| onAdExpanded | 看applovin文档是横幅展开,实际测试没有被触发过 |
| onAdCollapsed | 看applovin文档是横幅折叠,实际测试没有被触发过 |
/*** 视频回调*/private final MIDAdsApplovinBannerListener mMIDAdsApplovinBannerListener = new MIDAdsApplovinBannerListener() {@Overridepublic void onAdExpanded(String adUnitId) {Log.i(MIDBase_Demo_MainActivity.LOGTAG, " 横幅 onAdExpanded 展开");}@Overridepublic void onAdCollapsed(String adUnitId) {Log.i(MIDBase_Demo_MainActivity.LOGTAG, " 横幅 onAdCollapsed 折叠");}@Overridepublic void onLoadAdError(String adUnitId, int code, String message) {Log.i(MIDBase_Demo_MainActivity.LOGTAG, " 横幅 onLoadAdError code:" + code + " message:" + message);Toast.makeText(MIDBase_Demo_Ads.this, "横幅视频加载错误code:" + code + " " + message, Toast.LENGTH_LONG).show();}@Overridepublic void onLoadAdComplete(String adUnitId) {Log.i(MIDBase_Demo_MainActivity.LOGTAG, " 横幅 onLoadAdComplete adUnitId:" + adUnitId);Toast.makeText(MIDBase_Demo_Ads.this, "横幅视频加载完成", Toast.LENGTH_LONG).show();}@Overridepublic void onAdShowStart(String adUnitId) {Log.i(MIDBase_Demo_MainActivity.LOGTAG, " 横幅 onAdShowStart adUnitId:" + adUnitId);Toast.makeText(MIDBase_Demo_Ads.this, "横幅视频开始播放", Toast.LENGTH_LONG).show();}@Overridepublic void onAdClicked(String adUnitId) {Log.i(MIDBase_Demo_MainActivity.LOGTAG, " 横幅 onAdClicked adUnitId:" + adUnitId);Toast.makeText(MIDBase_Demo_Ads.this, "横幅点击了广告上的下载", Toast.LENGTH_LONG).show();}@Overridepublic void onAdClose(String adUnitId) {Log.i(MIDBase_Demo_MainActivity.LOGTAG, " 横幅 onAdClose adUnitId:" + adUnitId);Toast.makeText(MIDBase_Demo_Ads.this, "横幅视频关闭", Toast.LENGTH_LONG).show();}@Overridepublic void onAdDisplayFailed(String adUnitId, String message) {Log.i(MIDBase_Demo_MainActivity.LOGTAG, " 横幅 onAdDisplayFailed message:" + message);Toast.makeText(MIDBase_Demo_Ads.this, "横幅视频错误", Toast.LENGTH_LONG).show();}};
展示横幅广告,展示的时候可以设置在顶部展示,还是底部展示。
支持设置背景色,建议配置为透明色,这样广告未覆盖区域可以展示游戏背景。
横幅广告展示后 默认会自动加载更新广告,不会一直展示同一个广告。自动展示策略由applovin自动控制。
/*** 横幅广告加载展示** @param adid 广告位ID* @param gravity 展示位置 Gravity.BOTTOM(底部), Gravity.TOP(顶部)* @param BackgroundColor 背景颜色 Color.TRANSPARENT(透明色)*/public void MIDShowBannerAd(final String adid, final int gravity, final int BackgroundColor)
/*** 横幅广告加载展示** @param adid 广告位ID* @param gravity 展示位置 Gravity.BOTTOM(底部), Gravity.TOP(顶部)* @param BackgroundColor 背景颜色 Color.TRANSPARENT(透明色)*/MIDBaseSDK.getInstance(this).MIDShowBannerAd("applovin平台创建的代码位ID", Gravity.BOTTOM, Color.TRANSPARENT);
展示横幅广告,展示的时候可以设置在顶部展示,还是底部展示。
支持设置背景色,建议配置为透明色,这样广告未覆盖区域可以展示游戏背景。
支持设置间距, 可以单独设置距离上下左右间距, 如果设置为底部时 可以设置距离底部间距,如果设置为顶部时设置距离顶部间距。
横幅广告展示后 默认会自动加载更新广告,不会一直展示同一个广告。自动展示策略由applovin自动控制。
/*** 横幅广告加载展示** @param adid 广告位ID* @param gravity 展示位置 Gravity.BOTTOM* @param BackgroundColor 背景颜色 Color.BLACK* @param marginTop 距离顶部边距* @param marginBottom 距离底部边距* @param marginLeft 距离左边边距* @param marginRight 距离右边边距*/public void MIDShowBannerAd(String adid, int gravity, int BackgroundColor,int marginTop, int marginBottom, int marginLeft, int marginRight);
/*** 横幅广告加载展示** @param adid 广告位ID* @param gravity 展示位置 Gravity.BOTTOM* @param BackgroundColor 背景颜色 Color.BLACK* @param marginTop 距离顶部边距* @param marginBottom 距离底部边距* @param marginLeft 距离左边边距* @param marginRight 距离右边边距*/// 设置距离左右30dp 底部10dpint marginLeft = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 30, this.getResources().getDisplayMetrics());int marginRight = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 30, this.getResources().getDisplayMetrics());int marginBottom = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 10, this.getResources().getDisplayMetrics());MIDBaseSDK.getInstance(this).MIDShowBannerAd("applovin平台创建的代码位ID", Gravity.BOTTOM, Color.TRANSPARENT,0, marginBottom, marginLeft, marginRight);
关闭横幅广告。
/*** 关闭横幅广告*/public void MIDBannerClose() ;
/***关闭横幅广告*/MIDBaseSDK.getInstance(this).MIDBannerClose();
