Admob - Google广告接入
现在免费小游戏及应用的主要收入渠道就是通过接入广告。而Google的Admob适用于全球范围内的广告接入,文档方面及后台管理也是较为完善,接入还是比较便捷的。
不过Google目前还在墙外,虽然接入后广告不需要vpn就可以显示访问,但是官网设置及文档还是需要梯子的。
1、在admob网站注册帐号等。 https://apps.admob.com/
2、在登录后点击 通过新的应用获利 按钮即可创建新的平台广告位。
3、添加完对应广告位后即可在 管理您的应用 按钮中找到添加的项目, 点击后可以查看应用广告具体的信息。
申请后可以得到一个 adUnitID,这在后面代码中需要用到。即下图的广告单元ID。

官方文档:https://developers.google.com/admob/android/existing-app
项目环境配置:
1、Android Jdk必须升级到1.7.0以上,Android sdk要升级到Android5.0以上。
2、从SDK Manager中下载安装Google Play services并且在我们应用项目添加引用。
3、AndroidManifest.xml文件中添加清单如下,
<!-- Include required permissions for Google Mobile Ads to run-->
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <!--This meta-data tag is required to use Google Play Services.-->
<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" /> <!--Include the AdActivity configChanges and theme. -->
<activity android:name="com.google.android.gms.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
android:theme="@android:style/Theme.Translucent" />
实现代码官网上都有: https://developers.google.com/admob/android/interstitial
这里不在重复说明,说一个注意事项:测试手机需要装有Google Play 商店,否则会提示 Google Play services is missing,并且应用直接崩溃。
补充: 后来发现接入了Google 排行榜后,没有装Google Play商店也可以正常运行显示了。
官方文档: https://developers.google.com/mobile-ads-sdk/docs/admob/ios/quick-start?hl=zh-cn
实现步骤及代码同样都在官网上,这里只讲下如果不是直接在游戏的 UIViewController中调用广告显示的情况处理。
此时显示需要如下:
if ([self.interstitial isReady]) {
CCLOG("ready");
UIApplication* clientApp = [UIApplication sharedApplication];
UIWindow* topWindow = [clientApp keyWindow];
if (!topWindow)
{
topWindow = [[clientApp windows] objectAtIndex:];
}
[[topWindow rootViewController] presentViewController:self animated:NO completion:nil];
[self.interstitial presentFromRootViewController:self];
}
else{
CCLOG("not ready");
}
同时关闭广告如下处理:
- (void)interstitialDidDismissScreen:(GADInterstitial *)interstitial {
[self dismissViewControllerAnimated:NO completion:nil];
self.interstitial = [self createAndLoadInterstitial];
}
其他碰到的几个问题:
1、找不到添加的SDK库导致编译不过。
解决:官网下载的SDK包必须在Mac上进行解压。 不然Framework内的引用会不见。
2、[self.interstitial isReady] 返回值一直是false, interstitialDidReceiveAd等回调也收不到消息。
解决: 在info.plist一定要添加以下项.
<key>UIBackgroundModes</key>
<array>
<string>remote-notification</string>
</array>
3、显示的广告一直是 you're displaying an interstitial test ad from admob.
解决: 将测试 的 testDevices项内容注释。
Admob - Google广告接入的更多相关文章
- Android Google AdMob 广告接入示例
Android Google AdMob 广告接入示例 [TOC] 首先请大家放心,虽然 Google搜索等服务被qiang了,但是 广告服务国内还是可以用的,真是普天同庆啊~~~噗! 其实这篇文章也 ...
- Google Admob移动广告快速集成步骤
Google Admob移动广告快速集成步骤 第一步:引入依赖包 //admob广告 implementation 'com.google.android.gms:play-services-ads: ...
- 谷歌(google)广告尺寸大小列表
在平时做网页模板时,我们需要计算Google AdSense 的尺寸,以确保它能和页面完美的结合,提高AdSense的点击率,进台后看又很麻烦,下面整理了Google 广告的各种尺寸,跟大家分享一下. ...
- android开发步步为营之68:Facebook原生广告接入总结
开发应用的目的是干嘛?一方面当然是提供优质服务给用户,还有一方面最重要的还是须要有盈利.不然谁还有动力花钱花时间去开发app? 我们的应用主攻海外市场,所以主要还是接入国外的广告提供商.本文就今天刚完 ...
- google广告尺寸
谷歌AdMob广告支持三种tablet-only旗帜大小除了320×50显示在手机: 大小(WxH) 描述 可用性 AdSize常数 320×50 标准的旗帜 手机和平板电脑 横幅 300 x250 ...
- Google广告屏蔽插件adBlock
今天在博客园写博客的时候发现莫名其妙的在右侧被植入了广告,询问了管理员得知存在以下几种可能: 1.电信网络供应商劫持网页,植入广告 2.ADSafe(是一款去除广告的软件,效果很不错) 但经过最终排除 ...
- Google广告批量投放脚本
该脚本文件是一个转化文件,将编辑的Google投广告模板转化成Google批量投放广告的脚本文件,实现批量投放广告,节省投广时间.PS:要与相应的模板结合使用,投广告模板在本人博客的文件中,可以下载. ...
- 【Unity与Android】02-在Unity导出的Android工程中接入Google Admob广告
我在上一篇文章 [Unity与Android]01-Unity与Android交互通信的简易实现) 中介绍了Unity与Android通讯的基本方法. 这一篇开始进入应用阶段,这次要介绍的是如何在An ...
- Unity3d开发集成Google Admob广告增加收入
在Unity游戏中植入广告是Unity 游戏产品增加收入的一种重要方式,常用的广告有谷歌Admob,百度ssp,腾讯广点通,unity公司的unityads等等,而使用的最多的应该属于谷歌Admob, ...
随机推荐
- 201521123091 《Java程序设计》第14周学习总结
Java 第十四周总结 第十四周的作业. 目录 1.本章学习总结 2.Java Q&A 3.码云上代码提交记录及PTA实验总结 4.课后阅读 1.本章学习总结 以你喜欢的方式(思维导图或其他) ...
- 201521123059 《Java程序设计》第七周学习总结
1. 本周学习总结 以你喜欢的方式(思维导图或其他)归纳总结集合相关内容. 参考资料: XMind 2. 书面作业 Q1: ArrayList代码分析 1.1 解释ArrayList的contains ...
- 201521123087 《Java程序设计》第6周学习总结
1. 本周学习总结 2. 书面作业 clone方法1.1 Object对象中的clone方法是被protected修饰,在自定义的类中覆盖clone方法时需要注意什么? ...
- [转载]请教各位高手光盘版或者U盘版的BT保存配置的问题
这样安装的bt4默认是不能保存配置的,每次你更改了设置,下次重启又没有了.在网上下载一个叫做"saveFile.rar"的压缩包,大小40K左右,这个是bt4能够保存配置关键,当然 ...
- 201521123063 《Java程序设计》 第9周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 本次PTA作业题集异常 常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前 ...
- 201521123044 《Java程序设计》第13周学习总结
1. 本章学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 书面作业 1.网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.ed ...
- foreach_and_函数
foreach(对集合每个元素的引用 in 集合){}例: int[] a = new int[5]{1,2,3,4,5,}; foreach(int b in a) { //b就是a中的每个元素 } ...
- 多线程面试题系列(3):原子操作 Interlocked系列函数
上一篇中讲到一个多线程报数功能.为了描述方便和代码简洁起见,我们可以只输出最后的报数结果来观察程序是否运行出错.这也非常类似于统计一个网站每天有多少用户登录,每个用户登录用一个线程模拟,线程运行时会将 ...
- Mysql的基本命令图
如果看不清的,右键图片在新标签页打开! 这是经过我的整理出来的!如果有重要的再补充把-..
- [5] 微信公众号开发 - 微信支付功能开发(网页JSAPI调用)
1.微信支付的流程 如下三张手机截图,我们在微信网页端看到的支付,表面上看到的是 "点击支付按钮 - 弹出支付框 - 支付成功后出现提示页面",实际上的核心处理过程是: 点击支付按 ...