admob

来自于:开发者立即使用

startBanner hideBanner showBanner closeBanner initInterstitial startInterstitial

论坛示例

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

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、常见错误码。

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

概述

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

模块使用攻略

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

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

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

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  3. <plist version="1.0">
  4. <dict>
  5. <key>GADApplicationIdentifier</key>
  6. <string>ca-app-pub-3940256099942544~3347511713</string>
  7. </dict>
  8. </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的手机。
  • 内部字段:
  1. {
  2. x:0, //左上角x坐标,默认0
  3. y:0, //左上角y坐标,默认0
  4. w:320, //宽度,默认'auto',页面从x位置开始自动充满父页面宽度
  5. h:480 //高度,默认'auto',页面从y位置开始自动充满父页面高度
  6. marginLeft:0, //相对父页面左外边距的距离,默认0
  7. marginTop:0, //相对父页面上外边距的距离,默认0
  8. marginBottom:0, //相对父页面下外边距的距离,默认0
  9. marginRight:0 //相对父页面右外边距的距离,默认0
  10. }

fixedOn:

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

fixed:

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

adUnitID:

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

callback(ret, err)

ret:

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

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: "",
  3. msg: ""
  4. }

示例代码

  1. var demo = api.require('admob');
  2. demo.startBanner({
  3. rect:{
  4. x : 0,
  5. y : 300,
  6. w : api.winWidth,
  7. h : 50
  8. },
  9. adUnitID : 'ca-app-pub-9666494030184950/5729726426',
  10. fixedOn : api.frameName,
  11. fixed : true
  12. },
  13. function(ret, err) {});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

hideBanner

隐藏横幅广告

hideBanner(callback(ret, err))

callback(ret, err)

ret:

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

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: "",
  3. msg: ""
  4. }

示例代码

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

可用性

iOS、Android系统

可提供的1.0.0及更高版本

showBanner

显示横幅广告

showBanner(callback(ret, err))

callback(ret, err)

ret:

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

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: "",
  3. msg: ""
  4. }

示例代码

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

可用性

iOS、Android系统

可提供的1.0.0及更高版本

closeBanner

关闭横幅广告

closeBanner(callback(ret, err))

callback(ret, err)

ret:

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

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: "",
  3. msg: ""
  4. }

示例代码

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

可用性

iOS、Android系统

可提供的1.0.0及更高版本

initInterstitial

初始化插页广告

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

params

adUnitID:

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

callback(ret, err)

ret:

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

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: "",
  3. msg: ""
  4. }

示例代码

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

可用性

iOS、Android系统

可提供的1.0.0及更高版本

startInterstitial

显示插页广告

startInterstitial(callback(ret, err))

callback(ret, err)

ret:

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

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: "",
  3. msg: ""
  4. }

示例代码

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

可用性

iOS、Android系统

可提供的1.0.0及更高版本