Невозможно добавить нативную рекламу Google в мое приложение iOS swift - PullRequest
0 голосов
/ 25 апреля 2019

У меня есть приложение для iOS на быстром языке.Я включил рекламу Google AdMob в свое приложение.Я внедрил рекламные баннеры и рекламные вставки, но не могу создать идентификатор объявления для нативной рекламы.Я обнаружил нативную рекламу Ad Sense, но не знаю, для каких целей эти объявления используются.Могу ли я использовать нативную рекламу AdSense в своем мобильном приложении.Подскажите пожалуйста что делать и как прогрессировать?

1 Ответ

0 голосов
/ 25 апреля 2019

Ниже приведены шаги, которые я всегда выполняю при добавлении объявлений Google Admob.Обратите внимание, что в приведенном ниже примере Google Admob будет реализован в виде таблицы.

  1. Установите Google Admob Ads через pod pod 'Google-Mobile-Ads-SDK'
  2. In AppDelegate > didFinishLaunchingWithOptions, setup /настроить Google Admob GADMobileAds.configure(withApplicationID: Constant.googleAdmobAppID)

  3. Далее создайте класс для баннера Google Admob.

import Foundation
import GoogleMobileAds

class GoogleAdMobBanner: NSObject, GADBannerViewDelegate {

    unowned var sourceTableViewController: UITableViewController
    var adBannerView: GADBannerView

    init(sourceTableViewController: UITableViewController) {
        self.sourceTableViewController = sourceTableViewController
        adBannerView = GADBannerView(adSize: kGADAdSizeSmartBannerPortrait)

        super.init()

        adBannerView.adUnitID = Constant.googleAdmobBannerID
        adBannerView.delegate = self
        adBannerView.rootViewController = sourceTableViewController
    }

    // MARK:- Google Admob

    func adViewDidReceiveAd(_ bannerView: GADBannerView) {
        print("Banner loaded successfully")

        // Reposition the banner ad to create a slide up effect
        let translateTransform = CGAffineTransform(translationX: 0, y: -bannerView.bounds.size.height)
        bannerView.transform = translateTransform

        UIView.animate(withDuration: 0.5) {
            bannerView.transform = CGAffineTransform.identity
            self.sourceTableViewController.tableView.tableHeaderView = bannerView
        }
    }

    func adView(_ bannerView: GADBannerView, didFailToReceiveAdWithError error: GADRequestError) {
        print("Fail to receive ads")
        print(error)
    }

    func loadAdMob() {
        let request = GADRequest()
        request.testDevices = [kGADSimulatorID]

        adBannerView.load(request)
    }

}
Объявите ленивый загруженный баннер admob в желаемом классе.
class MyController: UITableViewController {

    lazy var googleAdMobBanner: GoogleAdMobBanner = {
        return GoogleAdMobBanner(sourceTableViewController: self)
    }()

}
Наконец, загрузите Google Admob в viewDidLoad
override func viewDidLoad() {
    super.viewDidLoad()

    googleAdMobBanner.loadAdMob()
}
...