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. Mybatis的ResultMap的使用

    本篇文章通过一个实际工作中遇到的例子开始吧: 工程使用Spring+Mybatis+Mysql开发.具体的业务逻辑很重,对象之间一层一层的嵌套.和数据库表对应的是大量的model类,而和前端交互的是V ...

  2. sql注入实例分析

    什么是SQL注入攻击?引用百度百科的解释: sql注入_百度百科: 所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.具 ...

  3. insert 多个values

    INSERT INTO `user_mail_attach` VALUES(, , , , , ), (, , , , , ); 这种比写多条insert语句效率高

  4. Practical Machine Learning For The Uninitiated

    Practical Machine Learning For The Uninitiated Last fall when I took on ShippingEasy's machine learn ...

  5. CSS3 动画animation

    关键帧 什么是关键帧.一如上面对Flash原理的描述一样,我们知道动画其实由许多静态画面组成,第一个这样的静态画面可以表述为一帧.其中关键帧是在动画过程中体现了物理明显变化的那些帧. 比如之前的例子中 ...

  6. Visual Studio IIS Express 不支持.json后缀的mime类型

    vs默认web调试工具中并不支持.json后缀的mime类型. 如何解决,两个方案: 局部单应用:web.config: <system.webServer> .... <stati ...

  7. pthread clean up

    https://www.ibm.com/developerworks/cn/linux/thread/posix_threadapi/part4/ http://www.cnblogs.com/xfi ...

  8. IIS负载均衡-Application Request Route详解第四篇:使用ARR实现三层部署架构(转载)

    IIS负载均衡-Application Request Route详解第四篇:使用ARR实现三层部署架构 系列文章链接: IIS负载均衡-Application Request Route详解第一篇: ...

  9. Windows 下安装项目管理工具 Redmine 1.1.2

    1.InstantRails-2.0-win 下载地址  https://rubyforge.org/frs/?group_id=904 2.redmine1.1.2 下载地址  http://www ...

  10. java.net.SocketException:Software caused connection abort: recv failed 异常分析 +socket客户端&服务端代码

    java.net.SocketException:Software caused connection abort: recv failed 异常分析 分类: 很多的技术 2012-01-04 12: ...