Для работы с мобильной рекламой существует сервис Google AdMob, с ним мы и будем работать. Для этого переходим по ссылке https://apps.admob.com и входим в свой аккаунт Google.
Действия в аккаунте Google AdMob.
Регистрация приложения.
Первым делом нужно зарегистрировать ваше приложение в аккаунте. Для этого жмем на стрелочку возле раздела «приложения» и нажимаем кнопку «добавить приложение»:

В появившемся окне выбираем платформу «iOS» и ставим галочку на варианте «да, приложение опубликовано…» и жмем продолжить. Разумеется, приложение должно быть опубликовано в AppStore:

На следующем шаге нужно вставить ссылку на ваше приложение в AppStore и нажать «найти». После этого приложение должно появиться в списке ниже. Когда приложение появилось, нужно нажать на «добавить приложение».

Далее проверяем данные и завершаем добавление.
После того как приложение добавлено, оно будет отправлено на проверку. Проверка может занять несколько дней. У меня одобрение пришло на следующий день. Так что следите за почтой.
Регистрация баннера.
Теперь нужно создать баннер. Для этого переходим в добавленное приложение, выбираем подраздел «рекламные блоки» и нажимаем кнопку «добавить рекламный блок».

Далее выбираем тип баннера. В нашем случае это баннер.

Вводим название для баннера и нажимаем «создание рекламного блока»,

после чего баннер появится в списке баннеров.
Действия в xCode.
Чтобы реклама отображалась, ваше приложение уже должно быть одобрено Google.
Установка Google SKD
Чтобы установить SDK используем Swift Package Manager. Для этого в xcode переходим в File -> Add Package Dependencies и вставляем ссылку на репозиторий гитхаба:
https://github.com/googleads/swift-package-manager-google-mobile-ads.git
После чего подгружается информация о установщике:

Установка Google Mobile Ads SDK
Нажимаем «Add Package» и устанавливаем пакет в проект. После установки и индексирования файлов переходим к настройке проекта дальше.
Редактирование info.plist
В info.plist добавляем следующее:
Ключ GADApplicationIdentifier со строковым значением идентификатора приложения в гугле. Чтобы его узнать, нужно перейти в настройки приложения и скопировать «Идентификатор приложения».
<key>GADApplicationIdentifier</key>
<string>ca-app-pub-3940256099942544~1458002511</string>
ca-app-pub-3940256099942544~1458002511 – это тестовый идентификатор от гугла. При загрузке приложения нужно подставить свой.
Обратите внимание: в тестировании нужно использовать строго тестовый ключ, или от гугла или тестовый ваш собственный. Если вы будете тестировать рекламу со своим продовским ключом, ваш рекламный аккаунт забанят. Ваш продовский ключ должен показывать рекламу только в проде.
Ключ SKAdNetworkItems со значениями SKAdNetworkIdentifier для Google.
<key>SKAdNetworkItems</key>
<array>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>cstr6suwn9.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>4fzdc2evr5.skadnetwork</string>
</dict>
...
</array>
Это список рекламных сетей которые будут показывать рекламу. Нужно использовать весь список, и он обновляется. Так что периодически нужно копировать этот список из официальной документации гугла.
В итоге код, который нужно добавить в info.plist выглядит так:
<key>GADApplicationIdentifier</key>
<string>ca-app-pub-3940256099942544~1458002511</string>
<key>SKAdNetworkItems</key>
<array>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>cstr6suwn9.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>4fzdc2evr5.skadnetwork</string>
</dict>
...
</array>
Подробнее: https://developers.google.com/admob/ios/quick-start?hl=ru
Редактирование AppDelegate
В AppDelegate в функцию application добавить строчку:
MobileAds.shared.start(completionHandler: nil)
import UIKit
import GoogleMobileAds
@main
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
MobileAds.shared.start(completionHandler: nil)
return true
}
...
}
Работа с баннером
Далее нужно добавить сам баннер удобным для вас способом. Я делал это через storyboard. Для этого добавляем обычный UIView, и меняем его класс на GADBannerView. Привязываем констрейнтом в нужное место и делаем аутлет для баннера. Далее во viewDIdLoad нужно добавить инфу о баннере, а именно идентификатор баннера, и вызвать загрузку баннера. В итоге должно получиться следующее:
import UIKit
import GoogleMobileAds
class MainViewController: UIViewController {
@IBOutlet weak var bannerView: GADBannerView!
override func viewDidLoad() {
super.viewDidLoad()
bannerView.adUnitID = "your-banner-id-here"
bannerView.rootViewController = self
bannerView.load(Request())
}
...
}
На этом работа с xCode закончена, и если все ок то баннер должен отображаться. Для управления баннером, отложенной загрузки и т.д. используйте протокол GADBannerViewDelegate. Подробнее: https://developers.google.com/admob/ios/banner?hl=ru
Подтверждаем приложение через сайт
После того как ваше приложение одобрено гуглом, нужно разместить текстовый файл в корне сайта, который указан как официальный сайт вашего приложения. Для этого переходим во вкладку «приложения», выбираем вкладку «app-ads.txt», и жмем кнопку «как настроить файл app-ads.txt». Оттуда копируем код в текстовый файл и размещаем его в корне сайта.

После подтверждения сайта и если все настроено верно, в приложении должна отобразиться реклама.
Комментарии 0
Нет комментариев