EasyAds-Android

Introduction: 🔥持续更新🔥EasyAds,全球热门的开源聚合 SDK 广告软件。帮助 App 开发者便捷接入国内多家主流广告 SDK 包括:字节穿山甲、腾讯优量汇、百度百青藤、快手联盟。几行代码就可以快速实现开屏、Banner 横幅、插屏、激励视频、原生信息流、全屏等广告形式。
More: Author   ReportBugs   
Tags:

levelup

了解更多请点击: EasyAds Pro 主页,开启您的安全、高效、全面的商业化之路。


❗️❗原 EasyAds 项目将停止维护❗️❗

EasyAds-Android 快速指引

1. 支持的 SDK 平台及广告位

SDK 平台 开屏 激励视频 横幅 插屏(弹窗) 模板信息流 全屏视频 draw 信息流
穿山甲
优量汇
百青藤
快手

2. 快速接入

下面介绍 EasyAds 的快速接入方法,开发中也可以参考Example下的示例工程,快速了解。

2.1 引入 SDK

方式一(推荐): 使用 Gradle 添加依赖,在项目根目录的 build.gradle 文件中添加 JitPack 仓库

allprojects {
    repositories {
        ...
        maven { url 'https://jitpack.io' }
    }
}

在项目 module 目录下的 build.gradle 文件中添加 SDK 内容依赖

    dependencies {
        //EasyAds sdk(必须)
        implementation "com.github.bayescom:EasyAds-Android:1.2.1"

        //穿山甲广告 SDK(建议)
        implementation "com.pangle.cn:mediation-sdk:6.1.2.5"
        //优量汇广告 SDK(建议)
        implementation "com.qq.e.union:union:4.575.1445"
        //百度广告 SDK(可选)
        implementation(name: "Baidu_MobAds_SDK_9352", ext: "aar")
//        //快手广告 SDK(可选)
        implementation(name: "kssdk-ad-3363", ext: "aar")
    }

方式二

EasyAds项目以Library的形式导入 APP 项目工程。

2.2 SDK 分发策略配置

配置 SDK 的分发策略,可方便的实现流量的切分操作,实现多 SDK 的混合执行策略。

在 EasyAds 中,我们通过 JSON 文件的方式配置 SDK 的分发策略,开发者可根据自身流量分发的需求,按照 EasyAds 中提供的 JSON 配置格式及方法设置流量分发策略。

以开屏广告对接穿山甲和优量汇两个 SDK 为例,配置选择 80%流量穿山甲->优量汇的顺序请求,20%流量优量汇->穿山甲的顺序请求,配置如下所示。

其中,suppliers 字段下配置媒体在穿山甲和优量汇平台申请的广告代码位信息,rules 字段下配置流量分发策略及比例;

策略 JSON 的配置说明详细见:SDK 策略配置 JSON 说明

不同广告位的 JSON 策略配置示例见:不同广告位 JSON 配置示例

{
  "rules": [
    {
      "tag": "A",
      "sort": [
        1,
        2
      ],
      "percent": 80
    },
    {
      "tag": "B",
      "sort": [
        2,
        1
      ],
      "percent": 20
    }
  ],
  "suppliers": [
    {
      "tag": "csj",
      "adspotId": "穿山甲广告位 ID",
      "appId": "穿山甲应用 ID",
      "index": 1
    },
    {
      "tag": "ylh",
      "adspotId": "优量汇广告位 ID",
      "appId": "优量汇应用 ID",
      "index": 2
    }
  ]
}

注: 为了方便开发者配置流量分发策略,我们也提供了在线可视化的便捷工具EasyTools,方便生成广告位的策略配置 JSON。

2.3 获取广告

以下步骤,为获取广告的必要步骤,适用于所有广告位。 不同广告位置的不同实现,可参考Example 示例

2.3.1 初始化广告对象

初始化广告对象EasyAdXXX,以开屏为例

EasyAdSplash easySplash = new EasyAdSplash(mActivity, adContainer, listener);

2.3.2 设置执行策略

调用共有方法setData(String strategyJson),给当前位置广告赋予执行策略,即 2.2 步骤中生成的 SDK 分发策略配置。

easySplash.setData(FileUtil.getJson(mActivity, "splash_config.json"));

2.3.3 调用获取广告

方式一:请求并展示广告

easySplash.loadAndShow();

方式二:先发起请求广告:

easySplash.loadOnly();

待广告成功拉取后,开发者可根据业务需求在合适的时机,决定调用展示广告方法。(注意:广告会存在有效期,过久未调用展示,会导致广告失效)

easySplash.show();

2.3.4 各广告位集成实现

3. 进阶设置

3.1 SDK 全局配置

App 多广告位情况下,想要优化 SDK 的广告位配置,可参考SDK 全局配置优化管理你的众多广告位。

3.2 自定义广告 SDK 渠道

想要使用其他的广告 SDK,自定义广告 SDK 渠道可以帮你轻松加入任何广告 SDK。

4. SDK 错误码 & 常见问题

调试遇到问题?欢迎查询 SDK 错误码及常见问题 FAQ,帮助你快速解决对接中遇到的问题。

SDK 错误码

常见问题

技术支持

QQ 群: EasyAds 开源社区群

QQ 群二维码:

image

邮件技术支持:easyads@bayescom.com

Apps
About Me
GitHub: Trinea
Facebook: Dev Tools