TogetherAd
TogetherAd 封装了多种广告的 SDK,可以自行控制请求各种广告次数的比例
文章最后又项目源代码链接
目前支持的广告
百度Mob、腾讯GDT、科大讯飞
功能介绍
多种平台随机展示
因为各个平台分发广告的量实际上有可能不够用,所以多种广告根据一定比例随机展示会使收益最大化
控制个平台广告的展示比例
因为各个平台分发广告的量是不一样的,比如广点通分配1000次,百度只有100次,那么展示广点通和百度广告的次数必然是10:1才能使收益最大化
广告失败切换
如果某个平台的广告请求失败或没有量,会自动在其他广告中随机出一种再次请求,这样可以尽可能多的展示广告,使收益最大化
集成方法
第一种: Gradle 集成
项目根目录下 build.gradle 中
allprojects {
repositories {
...
maven { url "https://jitpack.io" }
}
}
Module 目录下 build.gradle 中
dependencies {
implementation 'com.github.ifmvo:TogetherAd:lastest_version'
}
第二种: 本地导入 aar 集成
点击下载 TogetherAd-1.1.4.aar 文件后,放入 Module 目录下的 libs 文件夹中
Module 目录下 build.gradle 中
dependencies {
implementation(name: 'TogetherAd-1.1.4', ext: 'aar')
}
使用方法
Java 调用姿势
- 自定义广告位
新建一个名字叫做 TogetherAdConst 的类,这个类用来定义所有广告的位置,例:开屏广告、列表信息流 … 等等
public class TogetherAdConst {
//开屏
public static final String AD_SPLASH = "ad_splash";
//插屏
public static final String AD_TIEPIAN_LIVE = "ad_flow_tiepian_live";
//首页信息流
public static final String AD_FLOW_INDEX = "ad_flow_index";
//直播播放器前贴
public static final String AD_INTER = "ad_inter";
......
}
自定义的广告位用于初始化广告位ID,也被当做请求广告时的参数
- 初始化
//初始化百度Mob广告
Map<String, String> baiduIdMap = new HashMap<>();
baiduIdMap.put(TogetherAdConst.AD_SPLASH, "相应的广告位ID");
baiduIdMap.put(TogetherAdConst.AD_INTER, "xxxxxx");
baiduIdMap.put(TogetherAdConst.AD_FLOW_INDEX, "xxxxxx");
baiduIdMap.put(TogetherAdConst.AD_VIDEO_PRE, "xxxxxx");
TogetherAd.INSTANCE.initBaiduAd(getApplicationContext(), "你的Baidu_MobAds的APPID", baiduIdMap);
//初始化腾讯广点通广告
Map<String, String> gdtIdMap = new HashMap<>();
gdtIdMap.put(TogetherAdConst.AD_SPLASH, "相应的广告位ID");
gdtIdMap.put(TogetherAdConst.AD_INTER, "xxxxxxxxxxxx");
gdtIdMap.put(TogetherAdConst.AD_FLOW_INDEX, "xxxxxxxxxxxx");
gdtIdMap.put(TogetherAdConst.A