Начало работы

В этом руководстве рассказывается, как создать новый проект для iOS, подключить Google Mobile Ads SDK и отправить первый запрос на получение баннера.

Требования

  • Доступ к аккаунту DoubleClick For Publishers (DFP) в статусе издателя.
  • Среда разработки Xcode 5.1 или более поздней версии.
  • Платформа развертывания Deployment target 6.0 или более поздней версии.
  • Recommended: Install CocoaPods to simplify dependency management

Скачать пример баннера для DFP

Создание нового проекта

На этом этапе нужно будет создать новый проект в Xcode. Запустите Xcode.

Создайте новый проект Xcode

Откройте File > New > Project (Файл > Создать > Проект). Выберите Single View Application (Приложение с одним представлением) в разделе приложений iOS и нажмите Next (Далее).

Укажите название проекта

Назовите проект DFPBannerExample. Выберите язык Swift или Objective-C. Нажмите Next (Далее).

Выберите папку, в которую будет сохранен проект

Выберите папку, в которую будет сохранен проект, и нажмите Create (Создать).

Скомпонуйте проект и запустите его

Чтобы воспользоваться симулятором, перейдите в раздел Product > Destination (Продукт > Цель) и выберите симулятор iPhone. Затем выберите Product > Run (Продукт > Выполнить), чтобы проверить компоновку и запуск приложения. Вы увидите пустой белый экран. Не беспокойтесь, мы добавим контент позже.

Подключение SDK к проекту Xcode

Добавить Google Mobile Ads SDK в проект Xcode можно двумя способами.

Внедрение с помощью CocoaPods

Создайте файл Podfile

В том же каталоге, где находится файл DFPBannerExample.xcodeproj, создайте файл с названием Podfile и следующим содержанием:

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

platform :ios, '7.0'

target 'DFPBannerExample' do
  pod 'Google-Mobile-Ads-SDK', '~> 7.8'
end

Выполните команду pod install

Выполните команду pod install из терминала, указав каталог, где находится файл Podfile. После завершения установки закройте DFPBannerExample.xcodeproj и откройте DFPBannerExample.xcworkspace.

В файлах проекта должен быть проект Pods с каталогом Pods/Google-Mobile-Ads-SDK.

Перекомпонуйте проект

Перекомпонуйте проект и запустите его. Вы снова увидите белый экран, но теперь в приложении будет реализован Google Mobile Ads SDK. Переходите к созданию первого запроса баннера.

Внедрение скачанного SDK вручную

Если у вас ещё нет Google Mobile Ads SDK, скачайте его и распакуйте архив.

Добавьте файл framework

Правой кнопкой мыши нажмите на проект DFPBannerExample и выберите Add Files To "DFPBannerExample" (Добавить файлы в DFPBannerExample).

Добавьте GoogleMobileAds.framework.

Перекомпонуйте проект

Перекомпонуйте проект и запустите его. Вы снова увидите белый экран, но теперь в консоли Xcode будет доступен журнал, из которого можно узнать, какой версией Google Mobile Ads SDK вы пользуетесь.

Первый запрос баннера

Теперь, когда проект поддерживает SDK, в него остается только добавить баннеры.

Объект DFPBannerView можно создать в из файла .storyboard или непосредственно в коде. Поскольку макеты обычно определяются в файле .storyboard, мы рассмотрим именно этот вариант.

Добавление объекта DFPBannerView с помощью файла .storyboard

Откройте файл Main.storyboard. В Библиотеке объектов в правом нижнем углу найдите UIView и перетащите элемент UIView в контроллер представления. Затем в разделе Identity inspector (Проверка идентификации) в правом верхнем углу назначьте представлению пользовательский класс DFPBannerView.

Добавление ограничений для DFPBannerView

Рассмотрим добавление ограничений для класса DFPBannerView. Допустим, нам нужно, чтобы баннер размером 320 x 50 размещался по центру нижней части экрана.

Убедитесь, что выбрано нужное представление, и нажмите на значок маркера в нижней части экрана. Добавьте ограничение Spacing to nearest neighbor (Расстояние до ближайшего элемента) для нижней части баннера и задайте значение 0. При этом баннер будет фиксироваться в нижней части экрана.

Также проверьте ограничения по ширине и высоте, задав соответственно значения 320 и 50.

Теперь нажмите на значок выравнивания слева от значка маркера и укажите для параметра Horizontal Center in Container (Положение в контейнере горизонтально по центру) значение 0.

После внесения изменений вы можете просмотреть, где будет располагаться представление. Нажмите на значок Resolve Auto Layout Issues (Устранение неполадок с автоматическим шаблоном) справа от маркера и выберите Update frames (Обновить фреймы).

Теперь баннер будет расположен правильно.

Добавление ссылки на DFPBannerView в код

Чтобы объявления загружались, в код необходимо добавить ссылку на DFPBannerView. Выберите View > Assistant Editor > Show Assistant Editor (Представление > Помощник > Открыть помощник). Убедитесь, что файл ViewController.h доступен. Затем, удерживая клавишу CTRL, нажмите на DFPBannerView и перетащите курсор к ViewController.h. В случае с проектом Swift выполните те же действия, но добавьте ссылку на DFPBannerView в файл ViewController.swift.

Xcode создаст свойство и установит связь с ним. Назовите его bannerView и выберите Connect (Подключить).

Objective-C

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

@import GoogleMobileAds;

@interface ViewController : UIViewController

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

@end

Swift

ViewController.swift
import UIKit
import GoogleMobileAds

class ViewController: UIViewController {

  @IBOutlet weak var bannerView: DFPBannerView!

} 

Чтобы устранить ошибку компиляции, добавьте @import GoogleMobileAds в файл ViewController.h или import GoogleMobileAds – в файл ViewController.swift. Тогда компилятор будет воспринимать DFPBannerView как действительный класс.

Загрузка объявления в DFPBannerView

Наконец, добавьте код в ViewController.m или ViewController.swift, чтобы обеспечить загрузку объявления в представление с баннером.

Objective-C

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

  NSLog(@"Google Mobile Ads SDK version: %@", [DFPRequest sdkVersion]);
  self.bannerView.adUnitID = @"/6499/example/banner";
  self.bannerView.rootViewController = self;
  [self.bannerView loadRequest:[DFPRequest request]];
}

Swift

ViewController.swift
override func viewDidLoad() {
  super.viewDidLoad()

  print("Google Mobile Ads SDK version: \(DFPRequest.sdkVersion())")
  bannerView.adUnitID = "/6499/example/banner"
  bannerView.rootViewController = self
  bannerView.loadRequest(DFPRequest())
}

Внесите следующие изменения:

  1. В методе viewDidLoad укажите идентификатор рекламного блока для баннера. В итоге вам нужно будет передать собственную кампанию в интерфейс DFP, настроить на нее таргетинг рекламного блока и использовать идентификатор этого рекламного блока в приложении. Сейчас же вы можете воспользоваться тестовым идентификатором рекламного блока, представленным выше.

  2. В качестве контроллера корневого представления укажите контроллер, содержащий DFPBannerView. Тогда при клике по объявлению будет показываться оверлей.

  3. Вызовите loadRequest: для DFPBannerView с помощью объекта DFPRequest.

Запуск приложения

Скомпонуйте и запустите приложение. На этот раз вы увидите тестовый баннер в нижней части экрана.

Поздравляем, вы отправили первый запрос объявления!

Просмотрите готовый пример на GitHub

Objective-C

Swift

Пример полной реализации баннера доступен на GitHub:

Objective-C Swift

Дальнейшие действия

Подробнее о полноэкранных межстраничных объявлениях читайте в руководстве по работе с ними.

Подробнее о настройке баннеров читайте в следующих руководствах:

Часто задаваемые вопросы

Я использую CocoaPods. Как обновить SDK?
В терминале выполните команду pod update в каталоге, где расположен файл Podfile.
Как получить идентификатор рекламного блока DFP?
Используйте следующий формат идентификатора рекламного блока DFP: /networkCode/adUnitName. Чтобы создать идентификатор, войдите в свой аккаунт DFP. На вкладке Инвентарь выберите рекламный блок и нажмите Создать теги. Вы также можете найти код сети для своего аккаунта на вкладке Администрирование в разделе Настройки размещения.
Я получаю сообщение об ошибке "Invalid unknown request error: Cannot determine request type. Is your ad unit id correct?" ("Недействительный неизвестный запрос: не удается определить тип запроса. Проверьте идентификатор рекламного блока").
Проверьте, правильно ли вы указали идентификатор рекламного блока. Он должен иметь следующий формат: /<network_code>/<ad_unit_path>.

Оставить отзыв о...

Текущей странице
SDK for DFP Users on iOS
Нужна помощь? Обратитесь в службу поддержки.