1.在你的ionic项目中使用如下命令添加admob插件:

cordova plugin add cordova-plugin-admobpro

2.添加完成后,在$ionicPlatform.ready的回调中添加如下代码:

if (window.AdMob) {
var adMobId;
if (ionic.Platform.isIOS()) {
adMobId = {
banner: 'your-ios-id',
interstitial: 'your-ios-id'
};
} else if (ionic.Platform.isAndroid()) {
adMobId = {
banner: 'your-android-id',
interstitial: 'your-android-id'
};
} if (adMobId) {
// Banner广告
AdMob.createBanner({
adId: adMobId.banner,
autoShow: true,
bgColor: 'black',
position: AdMob.AD_POSITION.BOTTOM_CENTER,
isTesting: false,
success: function () {
console.log("createBanner success!")
},
error: function (err) {
console.log("createBanner fail!", err)
}
}); //全屏广告预加载
AdMob.prepareInterstitial({
adId: adMobId.interstitial,
autoShow: false
}); }
else {
console.log("AdMob is null");
}
}

在安卓环境下记得添加如下包:

然后你的ionic程序就可以出现广告赚钱啦。

当然,我有在很多时候想调整广告的位置或样式之类的,那么下面我们来看一下广告的各种添加方式:

// 显示广告条,默认在顶端的智能广告条
if(AdMob) AdMob.createBanner( admobid.banner ); // 或者, 在底部显示广告条
if(AdMob) AdMob.createBanner( {
adId:admobid.banner,
position:AdMob.AD_POSITION.BOTTOM_CENTER,
autoShow:true} ); // 或者,已浮动模式,在底部显示方块广告
if(AdMob) AdMob.createBanner( {
adId:admobid.banner,
adSize:'MEDIUM_RECTANGLE',
overlap:true,
position:AdMob.AD_POSITION.BOTTOM_CENTER,
autoShow:true} ); // 或者,在指定的位置,显示指定大小的广告
if(AdMob) AdMob.createBanner( {
adId:admobid.banner,
adSize:'CUSTOM', width:200, height:200,
overlap:true,
position:AdMob.AD_POSITION.POS_XY, x:100, y:200,
autoShow:true} );
// 显示全屏广告,例如,在某个游戏关卡结束的时候
if(AdMob) AdMob.showInterstitial();

具体方法:
AdMob.setOptions(options)
给其他的方法调用设置默认参数,所有的项目都是可选的,如果没有则用默认值。

参数 options:

{
bannerId, //string, 设置广告条的默认广告 ID,例如 'ca-app-pub-xxx/xxx'
interstitialId, //string, 设置全屏广告的默认广告 ID,例如 'ca-app-pub-xxx/xxx'
adSize, string, //设置广告条的大小,默认值:'SMART_BANNER'.
width, //integer, 广告条的宽度, 需要指定 adSize:'CUSTOM'. 默认值: 0
height, //integer, 广告条的高度,需要指定 adSize:'CUSTOM'. 默认值: 0
overlap, //*boolean@, 浮动模式,允许广告条覆盖在Web内容的上面,否则的话会把Webview向上或者向下推,避免遮挡. 默认值:false
position, //integer, 广告条的位置,, 默认值:TOP_CENTER (上面居中).
x, //integer, x坐标. 当 overlap:true 和 position:AdMob.AD_POSITION.POS_XY 的时候有效. 默认值: 0
y, //integer, y坐标. 当 overlap:true 和 position:AdMob.AD_POSITION.POS_XY 的时候有效. 默认值: 0
isTesting, //boolean, 用于测试,当设置为 true 的时候,可以接收测试广告,发布的时候,请务必设置为 false,否则不计算收益。
autoShow, //boolean, 当广告准备就绪时自动显示,否则需要调用 showBanner 或者 showInterstitial
orientationRenew, //boolean, 在屏幕方向发生变化时,强制销毁和重新创建广告条,一般情况不用设置。
adExtras, //json object, 为广告显示设置额外的色彩风格.
}

其中:

adSize的值可能为:

'SMART_BANNER', // 推荐,自动适应屏幕大小和高度
'BANNER', 
'MEDIUM_RECTANGLE', 
'FULL_BANNER', 
'LEADERBOARD', 
'SKYSCRAPER', 
'CUSTOM', // 用于自定义大小,需要指定参数 'width' 和 'height'

position的值可能为:

AdMob.AD_POSITION.NO_CHANGE = 0,

AdMob.AD_POSITION.TOP_LEFT = 1,

AdMob.AD_POSITION.TOP_CENTER = 2,

AdMob.AD_POSITION.TOP_RIGHT = 3,

AdMob.AD_POSITION.LEFT = 4,

AdMob.AD_POSITION.CENTER = 5,

AdMob.AD_POSITION.RIGHT = 6,

AdMob.AD_POSITION.BOTTOM_LEFT = 7,

AdMob.AD_POSITION.BOTTOM_CENTER = 8,

AdMob.AD_POSITION.BOTTOM_RIGHT = 9,

AdMob.AD_POSITION.POS_XY = 10, // 用于指定位置 X 和 Y, 参见 'x' and 'y'

AdMob.createBanner(adId/options, success, fail)

创建广告条. 这个方法可以传入广告的ID字符串,也可以传入Json对象以包含更多的选项。

参数:

{
adId, //string, 广告条的 ID.
options, //json object, 可以附带参数选项.
success, //function, 成功之后的回调函数,可以为 null 或者 缺失.
fail, //function, 失败之后的回调函数,可以为 null 或者 缺失.
}

AdMob.showBanner(position)

用途: 在指定的位置显示广告条. 也可以用来移动广告条,而无需销毁和重新创建广告条。

参数:
position, integer, 参见 AdMob.setOptions()

AdMob.showBannerAtXY(x, y)
用途: 在制定的坐标位置 (x,y) 显示广告条.

参数:
x, integer, 像素. 从屏幕左边计算的偏移量.
y, integer, 像素. 从屏幕顶端计算的偏移量.

AdMob.hideBanner()
用途: 隐藏广告条。暂时从屏幕上移除,但没有销毁,稍后还可以继续显示.

AdMob.removeBanner()
用途: 销毁广告条,不再显示时调用,例如用户已经付费,去掉广告。
AdMob.prepareInterstitial(adId/options, success, fail)
用途: 准备全屏广告资源,用于后续显示。
友情提示: 通常全屏广告需要较多的图片资源比广告条稍多,因此流量也会稍多一点,通常需要一点点时间来准备,这样用户无需等待,体验会更好。

AdMob.showInterstitial()
用途: 当全屏广告准备就绪时,显示给用户看。

AdMob.isInterstitialReady(callback)
用途: 检查全屏广告资源是否已经准备就绪。通常无需调用,最佳方式是响应相关的事件。

原文链接:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/ionic-admob/

ionic添加admob广告教程的更多相关文章

  1. cocos creator使用anysdk接入admob广告教程

    http://lolling787.lofter.com/post/1f5b6553_12925042 cocos creator使用anysdk接入admob广告

  2. Unity3D添加Admob广告

    重要提示:             貌似play2014年8月之后不会再支持admob的SDK方式的广告了.github上已经有了 Unity AdMob (Google Play Services) ...

  3. Unity3d 游戏中集成Firebase 统计和Admob广告最新中文教程

    之前写过俩相关的教程,最近发现插件官方更新了不少内容,所以也更新一篇Firebase Admob Unity3d插件的教程,希望能帮到大家. Firebase Admob Unity3d插件是一个Un ...

  4. 开始Admob广告盈利模式详细教程

    例子工程源码下载地址:     下载源代码               当然,我也参考了一些网上的资料,主要有: AdMob:在android应用中嵌入广告的方案        如何在Android ...

  5. 【Unity与Android】02-在Unity导出的Android工程中接入Google Admob广告

    我在上一篇文章 [Unity与Android]01-Unity与Android交互通信的简易实现) 中介绍了Unity与Android通讯的基本方法. 这一篇开始进入应用阶段,这次要介绍的是如何在An ...

  6. Android Google AdMob 广告接入示例

    Android Google AdMob 广告接入示例 [TOC] 首先请大家放心,虽然 Google搜索等服务被qiang了,但是 广告服务国内还是可以用的,真是普天同庆啊~~~噗! 其实这篇文章也 ...

  7. 为免费app嵌入Admob广告

    为免费app嵌入Admob广告,进而获得广告收入. 1.http://www.admob.com/注册一个帐号, 添加Add Mobile Site/app,输入相关信息后,提交完成, 下载Andro ...

  8. Unity3d开发集成Google Admob广告增加收入

    在Unity游戏中植入广告是Unity 游戏产品增加收入的一种重要方式,常用的广告有谷歌Admob,百度ssp,腾讯广点通,unity公司的unityads等等,而使用的最多的应该属于谷歌Admob, ...

  9. [视频]K8飞刀 WordPress XSS添加管理员 & GetShell 教程

    [视频]K8飞刀 WordPress  XSS添加管理员 & GetShell 教程 https://pan.baidu.com/s/1hq4LsmK

随机推荐

  1. Windows下python的配置

    Windows下python的配置 希望这是最后一次写关于python的配置博客了,已经被python的安装烦的不行了.一开始我希望安装python.手动配置pip并使用pip安装numpy,然而发现 ...

  2. 轻量级应用开发之(03)UIVIew

    本文是我在学习OC中的一些经验总结,在学习中总结了常用的Mac技巧,欢迎群友对本文提出意见,如有问题请联系我. 一 九宫格-购物车 通过文件加载数据: NSString * file = [[NSBu ...

  3. Hibernate之一对多(多对一)

    一.双向关联级联保存客户订单 1.搭建环境,项目结构如下 2.代码及配置如下(数据库里订单表不能用order,因为order是数据库关键字)(客户外键cid和订单表外键cid要在配置中写一致) pac ...

  4. 一排cell就第一个cell要点两次才响应,其他的cell都点一下就响应

    一开始还以为是控件的问题,后来查了下百度,没办法谷歌不能用,结果有人说方法写错了 -(void)tableView:(UITableView *)tableView didSelectRowAtInd ...

  5. memcache 缓存的批量删除方案(转)

    memcache 默认只支持使用delete(key)和 flush_all,这两种方法都太极端了,不能满足用户的特定需求,如:批量删除‘aaaaaaaa_’开头的所有缓存,这个时候该怎么办? 1 g ...

  6. nginx 服务器重启命令,关闭 (转)

    nginx -s reload  :修改配置后重新加载生效nginx -s reopen  :重新打开日志文件nginx -t -c /path/to/nginx.conf 测试nginx配置文件是否 ...

  7. [Socket网络编程]一个封锁操作被对 WSACancelBlockingCall 的调用中断。

    原文地址:http://www.cnblogs.com/xiwang/archive/2012/10/25/2740114.html记录在此,方便查阅. C#中在使用UDPClient循环监听端口,在 ...

  8. 标准库errno.h 查看错误代码编号,errno:4 与error:2

    log 里报错,errno:4   与errno:2 查了一下 errno.h   --------下文来自百度百科 errno 编辑 errno 是记录系统的最后一次错误代码.代码是一个int型的值 ...

  9. Linux如何删除以分号开头的文件

    发现在创建文件时,有的时候会不小心创建以分号开头的文件. 如何删除呢? 执行  rm \;   即可删除 把以;号开头的文件名转义后再删除 创建文件:vi  index.php 或者vim  inde ...

  10. iOS多线程GCD(转)

    转自:http://www.cnblogs.com/pure/archive/2013/03/31/2977420.html Grand Central Dispatch (GCD)是Apple开发的 ...