admob

来自于:开发者立即使用

论坛示例

为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码供您参考。

admob横幅广告接入流程

开发者在使用AdMob模块时,需要开发者自行到AdMob申请相应的广告单元id。

申请步骤

1、访问AdMob地址:https://apps.admob.com

2、选择您的google账户,具体如下图: 描述

3、填写adsenser信息,具体如下图: 描述

4、填写adwords信息,具体如下图: 描述

5、查看admob计划政策并开始使用admob,具体如下图: 描述

6、选择获利按钮,填写应用信息,具体如下图: 描述

7、选选择广告格式为横幅广告,会生成以下信息,如图: 描述

8、获取广告单元id,调用接口就可以在app中展示横幅广告了:

9、常见错误码。

错误码 错误描述
0 Something happened internally; for instance, the Activity may have been destroyed mid-refresh.
1 The ad request is invalid.
2 The ad request was unsuccessful due to network connectivity.
3 The ad request is successful, but no ad was returned due to lack of ad inventory.

概述

admob模块,实现了iOS和安卓平台集成admob横幅广告,插页广告模块。

模块使用攻略

1、config.xml配置信息如下:

<meta-data name="com.google.android.gms.ads.APPLICATION_ID" value="ca-app-pub-3940256099942544~3347511713"/>
<feature name="admob">
<param name="APP_ID" value="ca-app-pub-3940256099942544~3347511713"/>
</feature>

2、Info.plist配置信息如下,放在res目录下:(iOS必须配置,否则打开App会闪退)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>GADApplicationIdentifier</key>
    <string>ca-app-pub-3940256099942544~3347511713</string>
</dict>
</plist>

固件要求

Android:4.0.3及以上 iOS:8.0及以上

第三方公共文件

Android:

appcompat-v7-26.0.0.aar

play-services-ads-17.2.1.aar

play-services-ads-base-17.2.1.aar

play-services-ads-identifier-16.0.0.aar

play-services-ads-lite-17.2.1.aar

play-services-basement-16.2.0.aar

play-services-gass-17.2.1.aar

play-services-measurement-base-16.5.0.aar

play-services-measurement-sdk-api-16.5.0.aar

模块接口

startBanner

开启横幅广告

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

params

rect:

  • 类型:JSON 对象
  • 默认值:见内部字段
  • 描述:(可选项)浏览器窗口的位置和大小,设置margin后,在不同手机上面会保持与父页面的各方向边距一致,而中间区域会自动扩充。建议使用margin布局,可以完美适配带smartBar的手机。
  • 内部字段:
{
    x:0,             //左上角x坐标,默认0
    y:0,             //左上角y坐标,默认0
    w:320,           //宽度,默认'auto',页面从x位置开始自动充满父页面宽度
    h:480            //高度,默认'auto',页面从y位置开始自动充满父页面高度

    marginLeft:0,    //相对父页面左外边距的距离,默认0
    marginTop:0,    //相对父页面上外边距的距离,默认0
    marginBottom:0,    //相对父页面下外边距的距离,默认0
    marginRight:0    //相对父页面右外边距的距离,默认0
}

fixedOn:

  • 类型:字符串
  • 描述:(可选项)模块所属 Frame 的名字,若不传则模块归属于当前 Window

fixed:

  • 类型:布尔
  • 描述:((可选项)模块是否随所属 Window 或 Frame 滚动
  • 默认值:true(不随之滚动)

adUnitID:

  • 类型:字符串类型
  • 描述:(必填项)横幅广告单元id。

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,  //布尔型;true||false
    evenType : 'Loaded'//加载完成:Loaded
                //打开:Opened
                //关闭:Closed
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    code: "",
    msg: ""
}

示例代码

var demo = api.require('admob');
demo.startBanner({
    rect:{
       x : 0,
       y : 300,
       w : api.winWidth,
       h : 50
    },
    adUnitID : 'ca-app-pub-9666494030184950/5729726426',
    fixedOn : api.frameName,
     fixed : true
},
function(ret, err) {});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

hideBanner

隐藏横幅广告

hideBanner(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,  //布尔型;true||false
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    code: "",
    msg: ""
}

示例代码

var demo = api.require('admob');
demo.hideBanner(function(ret, err) {});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

showBanner

显示横幅广告

showBanner(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,  //布尔型;true||false
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    code: "",
    msg: ""
}

示例代码

var demo = api.require('admob');
demo.showBanner(function(ret, err) {});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

closeBanner

关闭横幅广告

closeBanner(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,  //布尔型;true||false
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    code: "",
    msg: ""
}

示例代码

var demo = api.require('admob');
demo.closeBanner(function(ret, err) {});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

initInterstitial

初始化插页广告

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

params

adUnitID:

  • 类型:字符串类型
  • 描述:(必填项)插页广告单元id。

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,  //布尔型;true||false
    evenType : 'Loaded'//加载完成:Loaded
                //打开:Opened
                //关闭:Closed
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    code: "",
    msg: ""
}

示例代码

var demo = api.require('admob');
demo.initInterstitial({
    adUnitID : 'ca-app-pub-9666494030184950/3598688422'
},
function(ret, err) {});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

startInterstitial

显示插页广告

startInterstitial(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,  //布尔型;true||false
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    code: "",
    msg: ""
}

示例代码

var demo = api.require('admob');
demo.startInterstitial(function(ret, err) {});

可用性

iOS、Android系统

可提供的1.0.0及更高版本