入门指南

AdMob 使用 Google Mobile Ads SDK。Google Mobile Ads SDK 帮助应用开发者获取自己用户的数据分析,推动更多的应用内购买并使广告收入最大化。为实现此目的,默认集成的 Mobile Ads SDK 会自动收集信息,如设备信息、发布商提供的位置信息,以及一般的应用内购买信息(如商品购买价格和货币)。

注:Mobile Ads SDK 不收集支付卡信息。

本指南向您介绍如何创建新的 iOS 项目、添加 Firebase 和 Google Mobile Ads SDK,以及发送您的第一个横幅广告请求。

我们提供的广告单元和示例将返回测试广告。即使您的帐户暂停或停用,测试广告也始终可用。如需了解详细信息,请查看 AdMob 政策 并深入了解无效 Activity。

点击自己的实时广告违反 AdMob 政策。在开发和测试期间,请使用测试广告。如果您确实需要在发布前呈现直播广告,请避免点击它们。如果您点击直播广告,您的 AdMob 帐户可能被暂停。

先决条件

  • Xcode 7.0 或更高版本
  • 部署目标为 iOS 7.0 或更高版本
  • 有效的 Firebase 项目
  • 建议:安装 CocoaPods 以简化依赖项管理 注:如果您需要 AdMob 以支持 iOS 6,您可以改用 Google Mobile Ads SDK(不含 Firebase)。

下载 BANNEREXAMPLE

创建新项目

在这一步中,我们将在 Xcode 中创建一个全新的项目。如果您尚未运行 Xcode,现在请将其打开。

创建新的 Xcode 项目

导航到 File > New > Project。选择 iOS 应用下的 Single View Application 并点击 Next。

为项目命名

将您的项目命名为"BannerExample"。针对语言选择"Swift"或"Objective-C"。然后点击 Next。

选择项目位置

为您的项目选择一个位置,并点击 Create 以完成新项目的创建。

构建并运行您的新项目

要使用模拟器,请导航到 Product > Destination,并选择一个 iPhone 模拟器。然后选择 Product > Run 以验证您的应用构建情况和运行情况。该应用当前只显示空的白屏。但不用担心,我们将在后续步骤中添加更多内容。

添加 Firebase 和 Mobile Ads SDK

有关如何结合使用 Firebase 与 AdMob 以及这对现有 AdMob 发布商的影响的更多详细信息,请参阅 AdMob 与 Firebase 指南。

使用 CocoaPods(精简方式)

GoogleService-Info.plist

AdMob 是 Firebase 移动服务平台的一部分,其使用一个名为 GoogleService-Info.plist的文件存储您的应用的相关配置信息。您需要此文件来完成这个练习。

重要说明:GoogleService-Info.plist 文件不存储广告单元 ID。您应通过一些其他方式存储和检索广告单元 ID,如在常量或自定义属性列表中。

获取此文件的最佳方式是登录 Firebase 控制台并注册一个应用。注册免费并且只需几分钟的时间。在系统要求输入捆绑包 ID 时,使用上面的"为项目命名"步骤中提供的 ID。

如果您还不想注册 Firebase,您也可以下载我们的示例 GoogleService-Info.plist 文件。只要您已按如上所示为您的应用命名,该文件便可用于此示例,但不应在此示例之外使用,且绝不能在一个真实的应用中使用!

不管怎样,在获得一个 GoogleService-Info.plist 文件后,将它保存到其余项目源所在的同一个目录中。

创建 Podfile

在 BannerExample.xcodeproj 文件所在的同一目录中,创建一个名为 Podfile 的文件,其包含以下内容:

source 'https://github.com/CocoaPods/Specs.git'

platform :ios, '7.0'
pod 'Firebase/Core'
pod 'Firebase/AdMob'

运行 pod install

在 Podfile 所在的同一个目录中,从终端运行 pod install。安装完毕后,关闭 BannerExample.xcodeproj 并打开 BannerExample.xcworkspace。您的项目文件应包含一个 Pods 项目(含适用于 Firebase 和 AdMob 的新依赖项)。

使用 SDK 下载(手动方式)

如果您还没有 Google Mobile Ads SDK,请从下载页面下载并解压缩。

添加框架

右键点击"BannerExample"项目,然后选择 Add Files To "BannerExample"。

点击 Options 按钮并选中 Copy destinations if needed 复选框。

添加 GoogleMobileAds.framework。

重新构建您的项目

重新构建并运行您的项目。虽然应用仍显示白屏,但目前您的应用正在引用 Google Mobile Ads SDK。现在您可以开始发送第一个横幅广告请求。

您的第一个横幅广告请求

现在您的项目已引用 SDK,接下来我们将横幅广告放入该项目中。

您可以通过故事板或代码创建 GADBannerView。由于布局通常是在故事板中定义的,因此本指南将介绍 storyboard 方法。

在故事板中添加 GADBannerView

打开 Main.storyboard。在右下角的 Object library 中,搜索 UIView 并将 UIView 元素拖放到视图控制器中。然后在右上角的 Identity inspector 中,为此视图指定自定义类 GADBannerView

在 GADBannerView 上添加限制

我们将在 GADBannerView 上设置限制,以使其位于屏幕底部的中央,且尺寸为 320x50。

确保选中该视图,然后点击屏幕底部的 Pin 图标。 在横幅广告底部添加 Spacing to nearest neighbor 限制并将值设置为 0。 这将会将该视图固定到屏幕底部。

另请查看对宽度和高度的限制并将相应值分别设置为 320 和 50,以设置视图的尺寸。

接下来,点击 Pin 图标左侧的 Align 图标,并添加 Horizontal Center in Container 限制,将值指定为 0

对限制做出更改后,您可以通过选择 Pin 图标右侧的 Resolve Auto Layout Issues,然后选择 Update frames 查看将放置视图的位置。

横幅广告现在将位于正确的位置上。

在代码中添加对 GADBannerView 的引用

需要在代码中引用 GADBannerView 以便向其中加载广告。通过导航至 View > Assistant Editor > Show Assistant Editor 打开助理编辑器。 确保在助理编辑器中显示的是 ViewController.h 文件。 接下来,按住 Ctrl 键,点击 GADBannerView 并将光标拖到 ViewController.h 上。 对于 Swift 项目,请按照上面的步骤操作,但需要在 ViewController.swift 文件中添加一个对 GADBannerView 的引用。

Xcode 将为您生成一个属性并进行连接。请将其命名为"bannerView",然后选择 Connect。

OBJECTIVE-C

SWIFT

ViewController.h#import <UIKit/UIKit.h>

@import GoogleMobileAds;

@interface ViewController : UIViewController

@property (weak, nonatomic) IBOutlet GADBannerView  *bannerView;

@end

要解决编译错误,您还需要在 ViewController.swift 中的 ViewController.h 或 import GoogleMobileAds 中加入@import GoogleMobileAds,以便编译器知道 GADBannerView 是一个有效的类。

将广告加载到 GADBannerView 中

最后,将代码添加到 ViewController.m 或 ViewController.swift,以便将广告加载到横幅广告视图中。

OBJECTIVE-C

SWIFT

ViewController.m- (void)viewDidLoad {
  [super viewDidLoad];

NSLog(@"Google Mobile Ads SDK version: %@", [GADRequest sdkVersion]);
  self.bannerView.adUnitID = @"ca-app-pub-3940256099942544/2934735716";
  self.bannerView.rootViewController = self;
  [self.bannerView loadRequest:[GADRequest request]];
}

请执行以下三项更改:

  1. 在 viewDidLoad 方法中,在横幅广告上设置一个广告单元 ID。您最终需要通过 AdMob 界面创建一个广告单元 ID 以在应用中使用。不过为方便起见,您可以使用上文中提供的测试广告单元 ID。

    在首次将应用与 AdMob 集成时,请务必使用提供的测试广告单元 ID 或 指定一个测试设备。 点击自己的实时广告违反 AdMob 政策。在开发和测试期间,请使用测试广告。如果您确实需要在发布前呈现直播广告,请避免点击它们。如果您点击直播广告,您的 AdMob 帐户可能被暂停。

  2. 将包含 GADBannerView 的视图控制器设置为根视图控制器。 此视图控制器用于在用户点击广告后呈现叠加层。

  3. 使用一个 GADRequest 对象在 GADBannerView 上调用 loadRequest:

构建并运行应用

构建并运行应用。这次,您将在屏幕底部看到一个测试横幅广告。

恭喜您!您已成功发送第一个广告请求。

在 GitHub 上查看完成的示例

OBJECTIVE-C

SWIFT

#import "ViewController.h"

@implementation ViewController

- (void)viewDidLoad {  [super viewDidLoad];

  // Replace this ad unit ID with your own ad unit ID.  self.bannerView.adUnitID = @"ca-app-pub-3940256099942544/2934735716";  self.bannerView.rootViewController = self;

  GADRequest *request = [GADRequest request];  // Requests test ads on devices you specify. Your test device ID is printed to the console when  // an ad request is made. GADBannerView automatically returns test ads when running on a  // simulator.  request.testDevices = @[    @"2077ef9a63d2b398840261c8221a0c9a"  // Eric's iPod Touch  ];  [self.bannerView loadRequest:request];}

- (void)didReceiveMemoryWarning {  [super didReceiveMemoryWarning];  // Dispose of any resources that can be recreated.}

@end

在 GitHub 上查看完整的横幅广告示例的实现:

OBJECTIVE-C SWIFT

后续操作

如需使用 AdMob 进行更多操作,请 注册 AdMob 帐户。

如需了解有关全屏插页式广告的详细信息,请查看插页式广告指南。

若要调整您的横幅广告实现,请查看下列指南:

  • 横幅广告自定义
  • 广告事件

常见问题解答

我正在使用 CocoaPods。我该如何更新 SDK? :在终端中 Podfile 所在的目录中运行 pod update

我是否需要使用测试广告?
是的。 点击自己的实时广告违反 AdMob 政策。在开发和测试期间,请使用测试广告。如果您确实需要在发布前呈现直播广告,请避免点击它们。如果您点击直播广告,您的 AdMob 帐户可能被暂停。 如需了解详细信息,请查看 AdMob 政策 并深入了解无效活动。
我如何在物理设备上获得测试广告?
请参阅目标指南,以了解获取测试设备 ID 的相关说明。
我如何获得 AdMob 广告单元 ID?
有关如何创建 AdMob 广告单元 ID 的指示,请访问 此处。AdMob 广告单元 ID 采用以下格式:ca-app-pub-XXXXXXXXXXXXXXXX/NNNNNNNNNN
我不断收到错误消息"Invalid unknown request error:Cannot determine request type.Is your ad unit id correct?"
请确保您的广告单元 ID 正确无误。此广告单元 ID 的格式为 ca-app-pub-XXXXXXXXXXXXXXXX/NNNNNNNNNN。 如果您使用格式 pub-XXXXXXXXXXXXXXXX,就会收到此错误。

AdMob(app内嵌广告)使用入门相关推荐

  1. AdMob(app内嵌广告)原生广告

    原生广告 原生格式是一种基于组件的广告格式,可让发布商自由地自定义在应用中如何呈现广告资源,如标题及对操作的调用.通过选择适合自己的字体.颜色和其他详细信息,发布商能够制作出自然而然.毫不唐突的广告演 ...

  2. AdMob(app内嵌广告)横幅广告

    Demo in GitHub:点击打开链接 横幅广告 在使用入门指南中,您已了解如何部署 SDK 和显示测试横幅广告. 本指南将介绍如何进一步自定义横幅广告. 要查看这些横幅广告自定义化的实现,请下载 ...

  3. 使用Chrome开发者工具调试Android端内网页(微信,QQ,UC,App内嵌页等)

    使用Chrome开发者工具调试Android端内网页(微信,QQ,UC,App内嵌页等) 传送门 转载于:https://www.cnblogs.com/momozjm/p/9389912.html

  4. app内嵌h5页面在ios手机端滑动卡顿的解决方法

    app内嵌h5页面在ios手机端滑动卡顿的解决方法 参考文章: (1)app内嵌h5页面在ios手机端滑动卡顿的解决方法 (2)https://www.cnblogs.com/1rookie/p/11 ...

  5. android 如何保存网页图片格式,求助,如何在安卓app内嵌的H5页面里长按保存图片?...

    最近要做个在H5页面里长按保存图片的功能,已经找了个第三方插件html2canvas解决了在浏览器和在ios app的长按保存,但是这个插件在android app里失效了,所以得单独处理androi ...

  6. 关于app内嵌h5页面调用百度地图定位问题,为什么定位不准呢?

    关于app内嵌h5页面调用百度地图定位问题,为什么定位不准呢?以下为代码. 百度地图:里面有3种定位方式(a:浏览器定位,b:IP定位,c:定位SDK辅助定位),我选择第3种,是需要app那块添加些什 ...

  7. 记录:app内嵌H5页面分享到微信后,在安卓手机打开白屏,苹果手机正常渲染的问题始末

    **背景:**app内嵌的一个个人名片页面需要分享到微信,测试环境下,分享到微信后,安卓和苹果手机都能正常渲染,生产环境苹果手机没问题,安卓手机打开分享的链接,页面一直空白. **原因分析:**单独加 ...

  8. 云闪付APP内嵌H5监听左上角X关闭事件

    最近在做云闪付蓝牙对接,遇到的一个问题. 需求 用户进入云闪付APP内嵌 H5页面调用接口连上蓝牙后,可能不想支付使用,或其他原因,随手关闭左上角X关闭浏览器,这时需要监听这个动作,断开蓝牙连接,不然 ...

  9. 移动端app内嵌网页开发框架

    框架技术栈 之前开发过一个项目,app内嵌网页应用使用Antd mobile + React + mobx + webpack的技术栈来开发.记录一下对于移动端开发中特殊的一些点: 自适应布局 我们在 ...

  10. 如何去除软件内嵌广告_iphone如何一键去除app内置小广告?

    大家都知道,手机app会经常的偷掉用户的流量,这不用的时候还好,一用自己手机流量就该要遭殃了,很多网友会选择让他这样,不用理睬,但是日积月累流量费就要花很多了,其实我们可以不用越狱就可以一键去除app ...

最新文章

  1. android studio gradle版本太低问题解决方案
  2. 电商扣减库存_以电商为例 | B端产品经理,怎么做好库存系统设计
  3. 结构体指针struct stu *p;和结构体变量struct stu p;结构体为什么要用指针引用而不用变量引用
  4. bit、byte、位、字节、汉字、字符之间的区别
  5. 通过DOS命令nslookup查域名DNS服务器
  6. idea安装Translation翻译插件
  7. 免费人脸识别工具可以跟踪社交媒体网站上的人
  8. jquery 利用CSS 控制打印样式
  9. DateTimeFormat注解
  10. 数据库课程设计——学生选课管理系统
  11. OpenGL超级宝典(第7版)之第九章片段处理与帧缓冲
  12. 小米手机 Toast显示带应用名称问题解决方法
  13. 蓝桥杯:国二选手经验贴 附蓝桥杯历年真题
  14. linux在双系统中消失了,win和linux双系统下,重装win系统导致linux系统消失的解决办法...
  15. 谷俊丽分享之基于深度学习的大数据挖掘
  16. 天数怎么换算成月_excel表中,怎么把日期数转换成月份数呢?
  17. 区块链技术在网络安全上的应用
  18. oracle语句中dual什么意思,oracle中dual详解
  19. 前端必会三种CSS布局
  20. 0001-环保局垃圾分类绿色低碳通用PPT模板免费下载

热门文章

  1. springboot-单文件多文件下载Zip
  2. 406个银英稀有精英名称
  3. 学校设备保修维修工单小程序开发制作
  4. C# 测试网络速度例子
  5. vm怎么上传镜像文件到服务器,vmware怎么添加iso镜像文件-vmware添加iso镜像文件的方法 - 河东软件园...
  6. 【毕业设计】基于人脸登录的大学生快递系统
  7. A Game of Thrones(58)
  8. EMS、CEM、OEM、ODM、IDH、IDM介绍
  9. apple tv 开发_如何将蓝牙耳机连接到Apple TV
  10. 街头篮球服务器未响应,我的生涯我做主 《街头篮球》生涯联赛FAQ