adsDomob
来自于:多盟广告 立即使用
presentFlexibleBanner presentBanner initInterstitial presentInterstitial presentSplash initDBox presentDBoxEntry sendDBoxEntryImpression sendDBoxEntryClick
概述
多盟(简称DOMOB),中国第一智能手机广告DSP+移动广告网络,本模块封装了多盟多个 SDK 产品,只需简单调用几个接口即可实现对广告平台的集成。目前包括:横幅(Banner)、插屏(Interstitial)、开屏(Splash)展示型广告,以及多宝屋(DBox)综合型广告等。
开发者需要注意在多盟后台为自己的 App 申请独立的 Publisher ID 和 Placement ID参见基本概念。另外,发布 App 的时候也请参见AppStore审核注意事项”。
注意:本模块暂时仅支持iOS平台
presentFlexibleBanner
展示自适应横幅广告(banner)
presentFlexibleBanner({params}, callback(ret, err))
params
publisherId:
- 类型:字符串
- 描述:应用 ID(详见基本概念常量),不能为空,且必须为在多盟广告平台后台中申请的正确应用 ID
placementId:
- 类型:字符串
- 描述:广告位 ID(详见基本概念常量),不能为空,且必须为您在多盟广告平台后台申请的对应横幅广告位 ID
x:
- 类型:浮点数
- 描述:横幅广告显示位置的 X 坐标
y:
- 类型:浮点数
- 描述:横幅广告显示位置的 Y 坐标
callback(ret, err)
ret:
- 类型:JSON 对象
内部字段:
{
type:0 // banner 广告 详见[广告类型](!Constant)常量)
status:-1~3 // banner 广告状态码 详见[广告请求状态码](!Constant)常量)
}
err:
- 类型:JSON 对象
内部字段:
{
code: 0, //错误码
msg: '' //错误描述
}
示例代码
var adsDomob = api.require('adsDomob');
adsDomob.presentBanner({
publiserId: '56OJyM1ouMGoULfJaL',
placementId: '16TLwebvAchkANUH_krQ7vOz',
x: '0',
y: '20'
}, function(ret, err) {
if (ret.type == 0) {
switch (ret.status) {
case -1:
api.alert({ msg: 'Banner 广告加载失败:' + err });
break;
case 0:
api.alert({ msg: 'Banner 广告加载完成' });
break;
case 1:
api.alert({ msg: 'Banner 广告准备展现' });
break;
case 2:
api.alert({ msg: 'Banner 广告被关闭' });
break;
case 3:
api.alert({ msg: 'Banner 广告被切到后台' });
break;
}
}
});
补充说明
此接口向广告平台请求自适应横幅(banner)广告并自动显示
可用性
iOS系统
可提供的1.0.0及更高版本
presentBanner
展示横幅广告(banner)
presentBanner({params}, callback(ret, err))
params
publisherId:
- 类型:字符串
- 描述:应用 ID(详见基本概念常量),不能为空,且必须为在多盟广告平台后台中申请的正确应用 ID
placementId:
- 类型:字符串
- 描述:广告位 ID(详见基本概念常量),不能为空,且必须为您在多盟广告平台后台申请的对应横幅广告位 ID
x:
- 类型:浮点数
- 描述:横幅广告显示位置的 X 坐标
y:
- 类型:浮点数
- 描述:横幅广告显示位置的 Y 坐标
x:
- 类型:浮点数
- 描述:横幅广告显示位置的 X 坐标
width:
- 类型:浮点数
- 描述:横幅广告的宽度
height:
- 类型:浮点数
- 描述:横幅广告的高度
autorefresh:
- 类型:整数,0 (false) 或者 1(true)
- 描述:是否自动刷新广告
目前我们所支持的横幅广告尺寸包括
Size | Recommended |
---|---|
320x50 | iPhone/iPod Touch |
300x250 | iPhone/iPod Touch |
488x80 | iPad |
728x90 | iPad |
600x500 | iPad |
Flexible | All iOS Devices |
**我们强烈建议您使用Flexible Banner**
,它可以适应各种类型的设备,以及进行横竖屏的自适应(Flexible Banner的高度在iPhone/iPod Touch上为50
,在iPad上为90
,宽度自适应)。
callback(ret, err)
ret:
- 类型:JSON 对象
内部字段:
{
type:0 // banner 广告 详见[广告类型](!Constant)常量)
status:-1~3 // banner 广告状态码 详见[广告请求状态码](!Constant)常量)
}
err:
- 类型:JSON 对象
内部字段:
{
code:0 //错误码
msg:'' //错误描述
}
示例代码
var adsDomob = api.require('adsDomob');
adsDomob.presentBanner({
publiserId: '56OJyM1ouMGoULfJaL',
placementId: '16TLwebvAchkANUH_krQ7vOz',
x: '0',
y: '20',
width: '375',
height: '325',
autorefresh: '1'
}, function(ret, err) {
if (ret.type == 0) {
switch (ret.status) {
case -1:
api.alert({ msg: 'Banner 广告加载失败:' + err });
break;
case 0:
api.alert({ msg: 'Banner 广告加载完成' });
break;
case 1:
api.alert({ msg: 'Banner 广告准备展现' });
break;
case 2:
api.alert({ msg: 'Banner 广告被关闭' });
break;
case 3:
api.alert({ msg: 'Banner 广告被切到后台' });
break;
}
}
});
补充说明
此接口向广告平台请求横幅(banner)广告并自动显示
可用性
iOS系统
可提供的1.0.0及更高版本
initInterstitial
初始化插屏广告(interstitial)
presentBanner({params}, callback(ret, err))
params
publisherId:
- 类型:字符串
- 描述:应用 ID(详见基本概念常量),不能为空,且必须为在多盟广告平台后台中申请的正确应用 ID
placementId:
- 类型:字符串
- 描述:广告位 ID(详见基本概念常量),不能为空,且必须为您在多盟广告平台后台申请的对应插屏广告位 ID
callback(ret, err)
ret:
- 类型:JSON 对象
内部字段:
{
type:1 // interstitial 广告 详见[广告类型](!Constant)常量)
status:-1~3 // interstitial 广告状态码 详见[广告请求状态码](!Constant)常量)
}
err:
- 类型:JSON 对象
内部字段:
{
code:0 //错误码
msg:'' //错误描述
}
示例代码
var adsDomob = api.require('adsDomob');
adsDomob.initInterstitial({
publiserId: '56OJyM1ouMGoULfJaL',
placementId: '16TLwebvAchkAY6iOWkE6kpk'
}, function(ret, err) {
if (ret.type == 1) {
switch (ret.status) {
case -1:
api.alert({ msg: '插屏广告加载失败:' + err });
break;
case 0:
api.alert({ msg: '插屏广告加载完成' });
break;
case 1:
api.alert({ msg: '插屏广告准备展现' });
break;
case 2:
api.alert({ msg: '插屏广告被关闭' });
break;
case 3:
api.alert({ msg: '插屏广告被切到后台' });
break;
}
}
});
补充说明
此接口初始化插屏环境
可用性
iOS系统
可提供的1.0.0及更高版本
presentInterstitial
展示插屏广告(banner)
presentInterstitial({params}, callback(ret, err))
params
无
callback(ret, err)
ret:
- 类型:JSON 对象
内部字段:
{
type:1 // interstitial 广告 详见[广告类型](!Constant)常量)
status:-1~3 // interstitial 广告状态码 详见[广告请求状态码](!Constant)常量)
}
err:
- 类型:JSON 对象
内部字段:
{
code:0 //错误码
msg:'' //错误描述
}
示例代码
var adsDomob = api.require('adsDomob');
adsDomob.presentInterstitial({}, function(ret, err) {
if (ret.type == 1) {
switch (ret.status) {
case -1:
api.alert({ msg: '插屏广告加载失败:' + err });
break;
case 0:
api.alert({ msg: '插屏广告加载完成' });
break;
case 1:
api.alert({ msg: '插屏广告准备展现' });
break;
case 2:
api.alert({ msg: '插屏广告被关闭' });
break;
case 3:
api.alert({ msg: '插屏广告被切到后台' });
break;
}
}
});
补充说明
此接口展示插屏(interstitial)广告
可用性
iOS系统
可提供的1.0.0及更高版本
presentSplash
展示开屏广告(splash)
presentSplash({params}, callback(ret, err))
params
publisherId:
- 类型:字符串
- 描述:应用 ID(详见基本概念常量),不能为空,且必须为在多盟广告平台后台中申请的正确应用 ID
placementId:
- 类型:字符串
- 描述:广告位 ID(详见基本概念常量),不能为空,且必须为您在多盟广告平台后台申请的对应开屏广告位 ID
splashBackgroundImageUrl:
- 类型:字符串
- 描述:当开屏广告是半屏时,最好有一个背景图,会比较美观。如果不指定,那么非广告区域将是透明的。这个参数指定一张可下载的 PNG/JPEG 图片。这张图片的规格是,
- iPhone4 1x: 320 x 480
- iPhone4s 2x: 640 x 960
- iPhone5/5s 2x: 640 x 1136
- iPhone6 2x: 750 x 1334
- iPhone6plus 3x: 1242 x 2208
callback(ret, err)
ret:
- 类型:JSON 对象
内部字段:
{
type:2 // splash 广告 详见[广告类型](!Constant)常量)
status:-1~3 // splash 广告状态码 详见[广告请求状态码](!Constant)常量)
}
err:
- 类型:JSON 对象
内部字段:
{
code:0 //错误码
msg:'' //错误描述
}
示例代码
var adsDomob = api.require('adsDomob');
adsDomob.presentSplash({
publiserId: '56OJyM1ouMGoULfJaL',
placementId: '16TLwebvAchkAY6iOVhpfHPs',
splashImageUrl: 'http://static.hothdwallpaper.net/51aac68f51f8599006.jpg'
}, function(ret, err) {
if (ret.type == 2) {
switch (ret.status) {
case -1:
api.alert({ msg: '开屏广告加载失败:' + err });
break;
case 0:
api.alert({ msg: '开屏广告加载完成' });
break;
case 1:
api.alert({ msg: '开屏广告准备展现' });
break;
case 2:
api.alert({ msg: '开屏广告被关闭' });
break;
case 3:
api.alert({ msg: '开屏广告被切到后台' });
break;
}
}
});
补充说明
此接口向广告平台请求开屏(splash)广告并缓存,并在下一次调用的时候显示开屏广告;另外,此次展示完毕后,会准备好下一条广告
可用性
iOS系统
可提供的1.0.0及更高版本
initDBox
初始化多宝屋广告环境
initDBox({params}, callback(ret, err))
params
publisherId:
- 类型:字符串
- 描述:应用 ID(详见基本概念常量),不能为空,且必须为在多盟广告平台后台中申请的正确应用 ID
placementId:
- 类型:字符串
- 描述:广告位 ID(详见基本概念常量),不能为空,且必须为您在多盟广告平台后台申请的对应多宝屋广告位 ID
callback(ret, err)
ret:
- 类型:JSON 对象
内部字段:
{
type:3 // 多宝屋(dbox)广告
status:-1~3 // 多宝屋(dbox)广告状态码 详见[广告请求状态码](!Constant)常量)
}
err:
- 类型:JSON 对象
内部字段:
{
code:0 //错误码
msg:'' //错误描述
}
示例代码
var adsDomob = api.require('adsDomob');
adsDomob.initDBox({
publiserId: '56OJw+rouN8xdhPaW9',
placementId: '16TLuFnvAp2p4NU06al1hNgi'
}, function(ret, err) {
if (ret.type == 3) {
switch (ret.status) {
case -1:
api.alert({ msg: '多宝屋广告加载失败:' + err });
break;
case 0:
api.alert({ msg: '多宝屋广告加载完成' });
break;
case 1:
api.alert({ msg: '多宝屋广告准备展现' });
break;
case 2:
api.alert({ msg: '多宝屋广告被关闭' });
break;
case 3:
api.alert({ msg: '多宝屋广告被切到后台' });
break;
}
}
});
补充说明
此接口初始化多宝屋广告环境
可用性
iOS系统
可提供的1.0.0及更高版本
presentDBoxEntry
展示多宝屋(dbox)广告入口
presentDBoxEntry({params}, callback(ret, err))
params
publisherId:
- 类型:字符串
- 描述:应用 ID(详见基本概念常量),不能为空,且必须为在多盟广告平台后台中申请的正确应用 ID
placementId:
- 类型:字符串
- 描述:广告位 ID(详见基本概念常量),不能为空,且必须为您在多盟广告平台后台申请的对应的多宝屋广告位 ID
callback(ret, err)
ret:
- 类型:JSON 对象
内部字段:
{
type:3 // 多宝屋(dbox)广告
status:-1~3 // 多宝屋(dbox)广告状态码 详见[广告请求状态码](!Constant)常量)
}
err:
- 类型:JSON 对象
内部字段:
{
code:0 //错误码
msg:'' //错误描述
}
示例代码
var adsDomob = api.require('adsDomob');
adsDomob.presentDBoxEntry({
publiserId: '56OJw+rouN8xdhPaW9',
placementId: '16TLuFnvAp2p4NU06al1hNgi'
}, function(ret, err) {
if (ret.type == 3) {
switch (ret.status) {
case -1:
api.alert({ msg: '多宝屋广告加载失败:' + err });
break;
case 0:
api.alert({ msg: '多宝屋广告加载完成' });
break;
case 1:
api.alert({ msg: '多宝屋广告准备展现' });
break;
case 2:
api.alert({ msg: '多宝屋广告被关闭' });
break;
case 3:
api.alert({ msg: '多宝屋广告被切到后台' });
break;
}
}
});
补充说明
此接口向广告平台请求多宝屋(dbox)广告并自动显示多宝屋入口
可用性
iOS系统
可提供的1.0.0及更高版本
sendDBoxEntryImpression
发送多宝屋入口展现报告
sendDBoxEntryImpression({params}, callback(ret, err))
params
无
callback(ret, err)
ret:
- 类型:JSON 对象
内部字段:
{
无
}
err:
- 类型:JSON 对象
内部字段:
{
无
}
示例代码
var domob = api.require('adsDomob');
domob.sendDBoxEntryImpression(function(ret, err) {
});
补充说明
此接口发送多宝屋入口展现报告。详见多宝屋广告注意事项。
可用性
iOS系统
可提供的1.0.0及更高版本
sendDBoxEntryClick
发送多宝屋入口点击报告
sendDBoxEntryClick({params}, callback(ret, err))
params
无
callback(ret, err)
ret:
- 类型:JSON 对象
内部字段:
{
无
}
err:
- 类型:JSON 对象
内部字段:
{
无
}
示例代码
var adsDomob = api.require('adsDomob');
adsDomob.sendDBoxEntryClick(function(ret, err) {
});
补充说明
此接口发送多宝屋入口点击报告。详见多宝屋广告注意事项。
可用性
iOS系统
可提供的1.0.0及更高版本
基本概念 OS 支持 广告类型 广告请求状态码 多宝屋广告注意事项 AppStore 审核注意事项
基本概念
- PID:应用 ID,也叫 Publisher ID。您的 App 在多盟广告平台中的唯一标识。
- PPID:广告位 ID,也叫 Placement ID。媒体在多盟广告平台中为某类广告申请的广告位标识。
OS 支持
iOS 5.0 及以上
广告类型
类型 | 编号 | 说明 | |
---|---|---|---|
bannder | 0 | 横幅广告 | |
intersititial | 1 | 插屏广告 | |
splash | 2 | 开屏广告 | |
dbox | 3 | 多宝屋广告 |
广告请求状态码
为了让开发者更细粒度地控制广告请求流程,我们会将广告请求的重要阶段用状态码的形式回调给调用者。具体的状态码信息描述如下,
1 横幅(banner)广告状态码
状态码 | 状态 | 说明 | |
---|---|---|---|
-1 | failed | 横幅广告加载失败 | |
0 | loaded | 横幅广告加载成功 | |
1 | will present | 点击的广告即将展现 | |
2 | dismissed | 弹出的广告被关闭 | |
3 | enter background | 弹出的广告被切换到后台 |
2 插屏(interstitial)广告状态码
状态码 | 状态 | 说明 | |
---|---|---|---|
-1 | failed | 插屏广告加载失败 | |
0 | loaded | 插屏广告加载成功 | |
1 | will present | 插屏广告即将展现 | |
2 | dismissed | 插屏广告被关闭 | |
3 | enter background | 插屏广告被切换到后台 |
3 开屏(splash)广告状态码
状态码 | 状态 | 说明 | |
---|---|---|---|
-1 | failed | 开屏广告加载失败 | |
0 | loaded | 开屏广告加载成功 | |
1 | will present | 开屏广告即将展现 | |
2 | dismissed | 开屏广告被关闭 |
4 多宝屋(dbox)广告状态码
状态码 | 状态 | 说明 | |
---|---|---|---|
-1 | failed | 多宝屋加载失败 | |
0 | loaded | 多宝屋加载成功 | |
1 | presented | 多宝屋界面已展现 | |
2 | dismissed | 多宝屋被关闭 | |
3 | enter background | 多宝屋被切换到后台 |
多宝屋广告注意事项
为了更好、更准确的帮助提升广告投放的准确率,请开发者协助我们发送2个相关的报告。具体如下, 1.发送入口展现报告:就是在您嵌入多宝屋的界面出现时发送此报告,表示入口已经展现出来。如,
在“我的12306”界面出现时发送入口展现报告。 2.发送入口点击报告:就是在用户点击你为多宝屋设定的某个按钮或者表格中的某一行时,发送此报告,表示多宝屋入口被点击。 如上图,在用户点击“旅行休闲”时发送入口点击报告。 #AppStore 审核注意事项
1 由于 iOS 广告平台获取了 IDFA,那么在提交 App Store 审核时,请按照下面的截图选择 IDFA 相关的选项。此处以多宝屋为例来说明,当然也可以通过打开横幅(banner)广告来说明获取 IDFA 的目的。
选择一
在业务管理后台打开横幅广告,并在应用中展示
选择二
在业务管理后台打开多宝屋广告,并在应用中展示
- 在审核界面的“备注”中,务必用英文或者中英文,详细说明找到横幅广告或者多宝屋 banner 广告的步骤。