mogoAds

来自于:开发者

概述

封装了芒果移动推广优化平台的SDK,本模块只需简单调用几个接口即可实现对广告平台的集成。

暂仅支持 Android 平台

initBanner

首次初始化横幅广告并显示

init({params}, callback(ret, err))

params

appId:

  • 类型:str
  • 描述:APP的芒果ID,在芒果平台上申请

position:

  • 类型:str
  • 描述:横幅广告出现的位置
  • 默认值:center_bottom
  • 取值范围:
    • left_top (左上)
    • center_top (中上
    • right_top (右上)
    • left_bottom (左下)
    • center_bottom (中下)
    • right_bottom (右下)
    • left_middle (左中)
    • center_middle (正中)
    • right_middle (右中)

adsize:

  • 类型:int
  • 描述:请求广告尺寸大小
  • 默认值:3
  • 取值范围:
    • 0 (320x50)
    • 1 (468x60)
    • 2 (728x90)
    • 3 (自适应屏幕)

isOtherSizes:

  • 类型:bool
  • 描述:(可选项)是否请求其他尺寸的广告,如果该平台无设置的广告尺寸或当前屏幕无法展示该尺寸大小的广告,该参数为true时 将请求其他尺寸广告,为false时则认为该广告请求失败
  • 默认值:true

isShowDialog:

  • 类型:bool
  • 描述:(可选项)是否显示下载确认窗口,对于芒果广告和一些原生聚合平台直接下载类广告默认直接下载,设置为true则开启下载提示
  • 默认值:false

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:                //操作成功状态值                int  1 - 成功     0 - 失败
}

err:

  • 类型:JSON 对象
  • 内部字段:
    {
      status:                //错误编码                        int
      msg:                //返回操作信息/错误信息            string
    }
    

示例代码

var mogoAds = api.require('mogoAds');
mogoAds.initBanner({
    mogoId: "XXXXXXXXXX",
    position: "center_bottom",
    adsize: 3
}, function(ret, err) {
    //成功返回
    if (ret.status == 1) {
        //
    } else {
        //输出错误信息
        api.alert({
            msg: err.msg
        });
    }
});

补充说明

需要在芒果平台配置好应用所使用的广告平台,且在相应广告平台审核通过才会获取到横幅广告数据,否则横幅广告为空

可用性

Android系统

可提供的1.0.0及更高版本

showBanner

显示横幅广告

showBanner(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:                //操作成功状态值                int  1 - 成功     0 - 失败
}

err:

  • 类型:JSON 对象
  • 内部字段:
    {
      status:                //错误编码                        int
      msg:                //返回操作信息/错误信息         string
    }
    

示例代码

var mogoAds = api.require('mogoAds');
mogoAds.initBanner({
    mogoId: "XXXXXXXXXX",
    position: "center_bottom",
    adsize: 3
}, function(ret, err) {
    if (ret.status == 1) {
        Adsmogo.showBanner(function(ret, err) {
                if (ret.status == 1) {
                    //显示成功
                } else {
                    //输出错误信息
                    api.alert({
                        msg: err.msg
                    });
                })
        }
    } else {
        //输出错误信息
        api.alert({
            msg: err.msg
        });
    }
});

补充说明

在横幅广告初始化之后使用,否则会报错"未初始化Banner"

可用性

Android系统

可提供的1.0.0及更高版本

hiddenBanner

隐藏横幅广告

hiddenBanner(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:                //操作成功状态值                int  1 - 成功     0 - 失败
}

err:

  • 类型:JSON 对象
  • 内部字段:
    {
      status:                //错误编码                        int
      msg:                //返回操作信息/错误信息           string
    }
    

    示例代码

var mogoAds = api.require('mogoAds');
mogoAds.hiddenBanner(function(ret, err) {
    if (ret.status == 1) {
        //隐藏成功
    } else {
        //输出错误信息
        api.alert({
            msg: err.msg
        });
    }
})

补充说明

在横幅广告初始化之后使用,否则会报错"未初始化Banner"

可用性

Android系统

可提供的1.0.0及更高版本

setBannerListener

添加横幅广告监听器

setBannerListener(callBack(ret))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    name:                //广告监听接口                string
    value:              //返回操作信息               string
}
name value 描述
onRequestAd adName 当每次去请求单一平台的广告时被调用(adName为当前请求广告的平台名称)
onReceiveAd adName 当成功接收广告时被调用(adName为当前获取到的广告的平台名称)
onFailedReceiveAd 当接收广告失败时被调用
onClickAd adName 当mogo记录点击时调用(Mogo服务根据此回调记录点击数,此点击是过滤后的点击,一条广告一次展示只能对应一次点击,adName为当前广告平台名称)
onRealClickAd 当用户点击广告时调用(真实点击,Mogo不会根据此回调记录点击数,此点击是无过滤的点击
onCloseAd 当用户点击关闭按钮时被调用
onCloseMogoDialog 当用户关闭dialog时被调用(只适用于芒果自己的广告)

示例代码

var mogoAds = api.require('mogoAds');
mogoAds.setBannerListener(function(ret) {
    alert(JSON.stringify(ret));
})

补充说明

每一次触发监听器都会执行回调中的函数

可用性

Android系统

可提供的1.0.0及更高版本

initInterstitial

初始化插屏广告

initInterstitial({params}, callback(ret, err))

params

appId:

  • 类型:str
  • 描述:APP的芒果ID,在芒果平台上申请

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:                //操作成功状态值                int  1 - 成功     0 - 失败
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    status:                //错误编码                        int
    msg:                //返回操作信息/错误信息            string
}

示例代码

var mogoAds = api.require('mogoAds');
mogoAds.initInterstitial({
    mogoId: "XXXXXXXXXX"
}, function(ret, err) {
    if (ret.status == 1) {
        //初始化成功
    } else {
        //输出错误信息
        api.alert({
            msg: err.msg
        });
    }
});

可用性

Android系统

可提供的1.0.0及更高版本

showInterstitial

显示插屏广告

showInterstitial({params}, callBack(ret, err))

params

isWait:

  • 类型:bool
  • 描述:(可选项)是否等待全插屏广告的展示,当应用需要展示插屏广告,SDK会竭尽全力展示出广告,当然由于网络等问题不能立即展示广告的,可以通过该参数来控制SDK在获得到广告后再立即展示广告,当然,可以在等待期间可以调用cancelWaitShow()取消此次广告的展示
  • 默认值:true

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:                //操作成功状态值                int 1 - 成功     0 - 失败
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    status:                //错误编码                        int
    msg:                //返回操作信息/错误信息         string
}

示例代码

var mogoAds = api.require('mogoAds');
mogoAds.initInterstitial({
    mogoId: "XXXXXXXXXX"
}, function(ret, err) {
    if (ret.status == 1) {
        Adsmogo.showInterstitial({
                isWait: true
            },
            function(ret, err) {
                if (ret.status == 1) {
                    //显示插屏广告成功
                } else {
                    //输出错误信息
                    api.alert({
                        msg: err.msg
                    });
                }
            });
    } else {
        //输出错误信息
        api.alert({
            msg: err.msg
        });
    }
});

可用性

Android系统

可提供的1.0.0及更高版本

cancelWaitShow

取消等待中的插屏广告显示

cancelWaitShow(callBack(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:                //操作成功状态值                int 1 - 成功     0 - 失败
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    status:                //错误编码                        int
    msg:                //返回操作信息/错误信息            string
}

示例代码

var mogoAds = api.require('mogoAds');
mogoAds.cancelWaitShow(function(ret, err) {
    if (ret.status == 1) {
        //取消成功
    } else {
        //输出错误信息
        api.alert({
            msg: err.msg
        });
    }
});

可用性

Android系统

可提供的1.0.0及更高版本

setInterstitialListener

添加插屏广告监听器

setInterstitialListener(callBack(ret))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    name:                //广告监听接口                string
    value:              //返回操作信息               string
}
name value 描述
onInitFinish 插屏初始化完成后被调用
onShowInterstitialScreen adName 插屏广告显示在屏幕成功调用(adName为当前广告平台名称)
onInterstitialClickAd adName 当用户点击广告时调用(真实点击,Mogo不会根据此回调记录点击数,此点击是无过滤的点击,adName为当前广告平台名称)
onInterstitialRealClickAd adName 当mogo记录点击时调用(Mogo服务根据此回调记录点击数,此点击是过滤后的点击,一条广告一次展示只能对应一次点击,adName为当前广告平台名称)
onInterstitialCloseAd isAutomaticClosing 当全插屏关闭的时候被调用,isAutomaticClosing标示广告是自动关闭还是用户手动关闭(只限芒果广告和自动优化,SDK平台无关闭回调的会在广告展示成功的同时调用次回调)
onInterstitialClickCloseButton 该回调在用户点击关闭按钮时调用(只限芒果广告和自动优化)
onInterstitialStaleDated adName 当前预加载的广告已经缓存过期时调用(adName为当前广告平台名称)

示例代码

var mogoAds = api.require('mogoAds');
mogoAds.setInterstitialListener(function(ret) {
    alert(JSON.stringify(ret));
})

补充说明

每一次触发监听器都会执行回调中的函数

可用性

Android系统

可提供的1.0.0及更高版本

setLog

芒果SDK默认不显示日志,如果想要显示日志,需调用该函数

setLog({params}, callBack(ret, err))

params

debug:

  • 类型:bool
  • 描述:是否显示日志
  • 默认值:false

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:                //操作成功状态值            int  1 - 成功     0 - 失败
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    status:                //错误编码                    int
    msg:                //返回操作信息/错误信息        string
}

示例代码

var mogoAds = api.require('mogoAds');
mogoAds.setLog({
    debug: true
}, function(ret, err) {
    if (ret.status == 1) {
        //设置成功
    } else {
        //输出错误信息
        api.alert({
            msg: err.msg
        });
    }
});

可用性

Android系统

可提供的1.0.0及更高版本

补充说明

本模块封装的芒果移动广告SDK版本为1.6.5