moduleQubian

概述

moduleQubian 模块概述

moduleQubian 聚合了众多知名广告联盟,模块囊括了开屏、插屏、激励视频等广告样式; Android 广告模块最低支持到 5.0 版本, 若版本过低, 可能会导致部分功能无法使用; 商务或技术支持微信号(手机号):13588806479

使用此模块之前建议先配置 config.xml 文件,配置完毕,需通过云端编译生效,配置方法如下:

  • 名称:QuBianConfig
  • 参数:appId
  • 配置示例:
<feature name="QuBianConfig">
    <param name="appId" value="平台上申请的id"/>
</feature>
  • 字段描述:

    appId:平台上申请的id(联系商务或技术支持微信号提供)

模块接口

开屏广告

通过调用 qb_splash({params},callback(ret)) 加载开屏广告

params

codeId:

  • 类型:字符串
  • 描述:平台上申请的广告位id

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    id: "uuid",       //字符串;广告订单号uuid
    tag: 1,        //数字类型;-1:请求失败||0:广告被关闭||1:请求成功并展现||2:广告被点击
    msg: "请求成功" 
}

示例代码

    //开屏
    function qb_splash(){
        var modulequbian = api.require('moduleQubian');
        var param = {codeId:"平台上申请的id"};
        modulequbian.qb_splash(param, function(ret){
            var id = ret.id;
            var tag = ret.tag;
            var msg = ret.msg;
            if(-1 == tag){
                //请求错误
                api.toast({msg:msg});
                //请求失败后,需要删除布局上的填充view
                qb_removeViewById(id);
            }else if(0 == tag){
                 //关闭
                //请求成功后被关闭,也需要删除布局上的填充view
                qb_removeViewById(id);
            }else if(1 == tag){
                //请求成功并展现
            }else if(2 == tag){
                //点击
            }
        });
    }

插屏广告

通过调用 qb_interaction({params},callback(ret)) 加载插屏广告;

params

codeId:

  • 类型:字符串
  • 描述:平台上申请的广告位id

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    id: "uuid",       //字符串;广告订单号uuid
    tag: 1,        //数字类型;-1:请求失败||0:广告被关闭||1:请求成功并展现||2:广告被点击
    msg: "请求成功" 
}

示例代码

    //插屏
    function qb_interaction(){
        var modulequbian = api.require('moduleQubian');
        var param = {codeId:"平台上申请的id"};
        modulequbian.qb_interaction(param, function(ret){
            var tag = ret.tag;
            var msg = ret.msg;
            if(-1 == tag){
                //请求错误
                api.toast({msg:msg});
            }else if(0 == tag){
                 //关闭
            }else if(1 == tag){
                //请求成功并展现
            }else if(2 == tag){
                //点击
            }
        });
    }

激励视频广告

通过调用 qb_rewardvideo_playNow({params},callback(ret)) 加载激励视频广告

params

codeId:

  • 类型:字符串
  • 描述:平台上申请的广告位id

userId:

  • 类型:字符串
  • 描述:app用户id或者android设备唯一标识(必填)

callExtraData:

  • 类型:字符串
  • 描述:服务器回调额外信息(可不填)

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    tag: 1,        //数字类型;-1:请求失败||0:广告被关闭||1:请求成功并展现||2:广告被点击||3:奖励达成
    msg: "请求成功" 
}

示例代码

    //激励视频
    function qb_rewardvideo_playNow(){
        var modulequbian = api.require('moduleQubian');
        var param = {codeId:"平台上申请的id", userId:"app用户id或者android设备唯一标识", callExtraData:""};
        modulequbian.qb_rewardvideo_playNow(param, function(ret){
            var tag = ret.tag;
            var msg = ret.msg;
            if(-1 == tag){
                //请求错误
                api.toast({msg:msg});
            }else if(0 == tag){
                 //关闭
            }else if(1 == tag){
                //请求成功并展现
                var orderNo = ret.orderNo;//服务器回调需要使用的相关参数
            }else if(2 == tag){
                //点击
            }else if(3 == tag){
                //激励视频发送奖励(仅激励视频有此回调)
                api.alert({msg:"奖励达成"});
            }
        });
    }

其他方法

删除指定内容或者最近一条内容

通过调用 qb_removeViewById(param) , 移除布局上的广告内容。

释放所有广告资源

通过调用 qb_destroyAll(param) , 释放所有广告资源。

移动广告位置

通过调用 qb_moveViewById(param) , 移动广告位置。

示例代码

    //删除指定内容或者最近一条内容
    function qb_removeViewById(id){
        var modulequbian = api.require('moduleQubian');
        var param = {id:id};
        //id编号,删除指定内容。不传默认删除最近的一条内容
        modulequbian.qb_removeViewById(param);
    }

    //释放所有广告资源
    function qb_destroyAll(){
        var modulequbian = api.require('moduleQubian');
        var param = {};
        modulequbian.qb_destroyAll(param);
    }

    //移动广告位置
    function qb_moveViewById(id){
        var modulequbian = api.require('moduleQubian');
        var param = {id:id, x:100, y:300};//id不能为空,否则无效
        modulequbian.qb_moveViewById(param);
    }

信息流广告

通过调用 qb_native({params},callback(ret)) 加载信息流广告

示例代码


    //信息流
    function qb_native(){
        var modulequbian = api.require('moduleQubian');
        var param = {codeId:"平台上申请的id", fixed:true, x:0, y:0, w:0, h:0};
        //fixed:(布尔值,可选项)模块是否不随所属 window 或 frame 滚动;默认值:true(不随之滚动)
        //w:原生view的宽度(单位:dp),默认450(dp)
        //h:原生view的高度(单位:dp)
        //x:原生view距离屏幕左边的距离(单位:dp)
        //y:原生view距离屏幕顶端的距离(单位:dp)
        modulequbian.qb_native(param, function(ret){
            var id = ret.id;
            var tag = ret.tag;
            var msg = ret.msg;
            if(-1 == tag){
                //请求错误
                api.toast({msg:msg});
                qb_removeViewById(id);//删除布局view
            }else if(0 == tag){
                //被关闭
                qb_removeViewById(id);//删除布局view
                qb_destroyAll();//释放资源
            }else if(1 == tag){
                //请求成功并展现
            }else if(2 == tag){
                //被点击
            }
        });
    }